in datahub/connector.go [620:657]
func marshalCreateEsConnector(ccr *CreateConnectorRequest) ([]byte, error) {
soConf, ok := ccr.Config.(SinkEsConfig)
if !ok {
return nil, NewInvalidParameterErrorWithMessage(fmt.Sprintf("config type error,your input config type is %s,should be SinkEsConfig", reflect.TypeOf(ccr.Config)))
}
// set default value
if soConf.TimestampUnit == "" {
soConf.TimestampUnit = ConnectorMicrosecond
}
// server need ProxyMode be string
type SinkEsConfigHelper struct {
SinkEsConfig
ProxyMode string `json:"ProxyMode"`
}
confHelper := SinkEsConfigHelper{
SinkEsConfig: soConf,
ProxyMode: strconv.FormatBool(soConf.ProxyMode),
}
ct := &struct {
Action string `json:"Action"`
Type ConnectorType `json:"Type"`
SinkStartTime int64 `json:"SinkStartTime"`
ColumnFields []string `json:"ColumnFields"`
ColumnNameMap map[string]string `json:"ColumnNameMap,omitempty"`
Config SinkEsConfigHelper `json:"Config"`
}{
Action: "create",
Type: ccr.Type,
SinkStartTime: ccr.SinkStartTime,
ColumnFields: ccr.ColumnFields,
ColumnNameMap: ccr.ColumnNameMap,
Config: confHelper,
}
return json.Marshal(ct)
}