NewRawDataSubTask constructor for RawDataSubTask
(args RawDataSubTaskArgs)
| 65 | |
| 66 | // NewRawDataSubTask constructor for RawDataSubTask |
| 67 | func NewRawDataSubTask(args RawDataSubTaskArgs) (*RawDataSubTask, errors.Error) { |
| 68 | if args.Ctx == nil { |
| 69 | return nil, errors.Default.New("Ctx is required for RawDataSubTask") |
| 70 | } |
| 71 | if args.Table == "" { |
| 72 | return nil, errors.Default.New("Table is required for RawDataSubTask") |
| 73 | } |
| 74 | var params any |
| 75 | if args.Options != nil { |
| 76 | params = args.Options.GetParams() |
| 77 | } else { // fallback to old way |
| 78 | params = args.Params |
| 79 | } |
| 80 | paramsString := "" |
| 81 | if params == nil || reflect.ValueOf(params).IsZero() { |
| 82 | args.Ctx.GetLogger().Warn(nil, fmt.Sprintf("Missing `Params` for raw data subtask %s", args.Ctx.GetName())) |
| 83 | } else { |
| 84 | paramsString = plugin.MarshalScopeParams(params) |
| 85 | } |
| 86 | return &RawDataSubTask{ |
| 87 | args: &args, |
| 88 | table: fmt.Sprintf("_raw_%s", args.Table), |
| 89 | params: paramsString, |
| 90 | }, nil |
| 91 | } |
| 92 | |
| 93 | // GetTable returns the raw table name |
| 94 | func (r *RawDataSubTask) GetTable() string { |
no test coverage detected