-func main() {
- log.Debug("Starting DMaaP Mediator Producer")
- wg := new(sync.WaitGroup)
-
- // add two goroutines to `wg` WaitGroup, one for each running go routine
- wg.Add(2)
-
- log.Debugf("Starting callback server at port %v", configuration.InfoProducerPort)
- go func() {
- http.HandleFunc(server.StatusCallbackPath, server.StatusHandler)
- http.HandleFunc(server.JobsCallbackPath, server.CreateInfoJobHandler)
- log.Warn(http.ListenAndServe(fmt.Sprintf(":%v", configuration.InfoProducerPort), nil))
- wg.Done()
- }()
-
- go func() {
- jobs.RunJobs(fmt.Sprintf("%v:%v", configuration.MRHost, configuration.MRPort))
- wg.Done()
- }()
-
- // wait until WaitGroup is done
- wg.Wait()
- log.Debug("Stopping DMaaP Mediator Producer")