提交 5f7bef70 编写于 作者: J Jason

将模型存储在storm中, 安装:json->storm,导出:storm->json

上级 dc25c278
package model
type _base struct {
Name string `json:"name"`
Description string `json:"description"`
}
type ModelLink struct {
_base
Protocol string `json:"protocol"`
}
type ModelVariable struct {
_base
Link string `json:"link"`
Type string `json:"type"`
Addr string `json:"addr"`
Default string `json:"default"`
Writable bool `json:"writable"` //可写,用于输出(如开关)
//TODO 采样:无、定时、轮询
Cron string `json:"cron"`
Children []ModelVariable `json:"children"`
}
type ModelBatchResult struct {
Offset int `json:"offset"`
Variable string `json:"variable"` //ModelVariable path
}
type ModelBatch struct {
_base
Link string `json:"link"`
Type string `json:"type"`
Addr string `json:"addr"`
Size int `json:"size"`
Cron string `json:"cron"`
Results []ModelBatchResult `json:"results"`
}
type ModelJob struct {
_base
Cron string `json:"cron"`
Script string `json:"script"` //javascript
}
type ModelStrategy struct {
_base
Script string `json:"script"` //javascript
}
type Model struct {
_base
Version string `json:"version"`
H5 string `json:"h5"`
Links []ModelLink `json:"links"`
Variables []ModelVariable `json:"variables"`
Batches []ModelBatch `json:"batches"`
Jobs []ModelJob `json:"jobs"`
Strategies []ModelStrategy `json:"strategies"`
}
func Import(json string) error {
//TODO parser model, import
return nil
}
func Export(id int) string {
//TODO ge
return ""
}
package types
type _base struct {
Id int `json:"id" storm:"id,increment"`
ModelId int `json:"model_id"`
Name string `json:"name"`
Description string `json:"description"`
}
type ModelLink struct {
_base
type ModelTunnel struct {
_base `storm:"inline"`
LinkId int `json:"link_id"`
Protocol string `json:"protocol"`
}
type ModelVariable struct {
_base
Link string `json:"link"`
_base `storm:"inline"`
TunnelId int `json:"tunnel_id"`
Type string `json:"type"`
Addr string `json:"addr"`
Default string `json:"default"`
......@@ -30,36 +33,31 @@ type ModelBatchResult struct {
}
type ModelBatch struct {
_base
Link string `json:"link"`
Type string `json:"type"`
Addr string `json:"addr"`
Size int `json:"size"`
Cron string `json:"cron"`
_base `storm:"inline"`
TunnelId int `json:"tunnel_id"`
Type string `json:"type"`
Addr string `json:"addr"`
Size int `json:"size"`
Cron string `json:"cron"`
Results []ModelBatchResult `json:"results"`
}
type ModelJob struct {
_base
_base `storm:"inline"`
Cron string `json:"cron"`
Script string `json:"script"` //javascript
}
type ModelStrategy struct {
_base
_base `storm:"inline"`
Script string `json:"script"` //javascript
}
type Model struct {
_base
Version string `json:"version"`
H5 string `json:"h5"`
Links []ModelLink `json:"links"`
Variables []ModelVariable `json:"variables"`
Batches []ModelBatch `json:"batches"`
Jobs []ModelJob `json:"jobs"`
Strategies []ModelStrategy `json:"strategies"`
Id int `json:"id" storm:"id,increment"`
Name string `json:"name"`
Description string `json:"description"`
Version string `json:"version"`
H5 string `json:"h5"`
}
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册