mirror of
https://github.com/aceld/kis-flow.git
synced 2025-01-22 23:20:24 +08:00
34 lines
1.2 KiB
Go
34 lines
1.2 KiB
Go
package config
|
|
|
|
import "github.com/aceld/kis-flow/common"
|
|
|
|
// KisFlowFunctionParam represents the Id of a Function and carries fixed configuration parameters in a Flow configuration
|
|
type KisFlowFunctionParam struct {
|
|
FuncName string `yaml:"fname"` // Required
|
|
Params FParam `yaml:"params"` // Optional, custom fixed configuration parameters for the Function in the current Flow
|
|
}
|
|
|
|
// KisFlowConfig represents the object that spans the entire stream computing context environment
|
|
type KisFlowConfig struct {
|
|
KisType string `yaml:"kistype"`
|
|
Status int `yaml:"status"`
|
|
FlowName string `yaml:"flow_name"`
|
|
Flows []KisFlowFunctionParam `yaml:"flows"`
|
|
}
|
|
|
|
// NewFlowConfig creates a Flow strategy configuration object, used to describe a KisFlow information
|
|
func NewFlowConfig(flowName string, enable common.KisOnOff) *KisFlowConfig {
|
|
config := new(KisFlowConfig)
|
|
config.FlowName = flowName
|
|
config.Flows = make([]KisFlowFunctionParam, 0)
|
|
|
|
config.Status = int(enable)
|
|
|
|
return config
|
|
}
|
|
|
|
// AppendFunctionConfig adds a Function Config to the current Flow
|
|
func (fConfig *KisFlowConfig) AppendFunctionConfig(params KisFlowFunctionParam) {
|
|
fConfig.Flows = append(fConfig.Flows, params)
|
|
}
|