func Send(request *cocaine.Request, response *cocaine.Response) { defer response.Close() raw := <-request.Read() var task Task err := common.Unpack(raw, &task) if err != nil { response.ErrorMsg(-100, err.Error()) return } task.Config.Host, err = getRazladkiHost() if err != nil { response.ErrorMsg(-100, err.Error()) return } logger.Debugf("Task: %v", task) rCli, err := razladki.NewRazladkiClient(&task.Config, task.Id) if err != nil { logger.Errf("Unexpected error %s", err) response.ErrorMsg(-100, err.Error()) return } err = rCli.Send(task.Data, task.PrevTime) if err != nil { logger.Errf("Sending error %s", err) response.ErrorMsg(-100, err.Error()) return } response.Write("DONE") }
func get(request *cocaine.Request, response *cocaine.Response) { incoming := <-request.Read() var inp struct { Config map[string]interface{} "Config" Task common.FetcherTask "Task" } err := common.Unpack(incoming, &inp) if err != nil { logger.Err(err) response.ErrorMsg(1, fmt.Sprintf("%v", err)) response.Close() return } url := CfgandTaskUrl(inp.Config, &inp.Task) res, err := timetail.Get(url) if err != nil { response.ErrorMsg(1, fmt.Sprintf("%v", err)) response.Close() return } response.Write(res) response.Close() }
func handleTask(request *cocaine.Request, response *cocaine.Response) { defer response.Close() raw := <-request.Read() var task tasks.ParsingTask err := common.Unpack(raw, &task) if err != nil { response.ErrorMsg(-100, err.Error()) return } err = parsing.Parsing(ctxParsing, task) if err != nil { response.ErrorMsg(-100, err.Error()) } else { response.Write("OK") } }
func Send(request *cocaine.Request, response *cocaine.Response) { raw := <-request.Read() var task Task err := common.Unpack(raw, &task) if err != nil { response.ErrorMsg(-100, err.Error()) return } logger.Debugf("%s Task: %v", task.Id, task) task.Config.Id = task.Id task.Config.Hosts, err = getAgaveHosts() if err != nil { response.ErrorMsg(-100, err.Error()) return } if len(task.Config.Fields) == 0 { task.Config.Fields = DEFAULT_FIELDS } if task.Config.Step == 0 { task.Config.Step = DEFAULT_STEP } logger.Debugf("%s Fields: %v Step: %d", task.Id, task.Config.Fields, task.Config.Step) as, err := agave.NewAgaveSender(task.Config) if err != nil { logger.Errf("%s Unexpected error %s", task.Id, err) response.ErrorMsg(-100, err.Error()) response.Close() return } as.Send(task.Data) response.Write("OK") response.Close() }