func Setup(c *cli.Context) error { if b, ok := Brokers[c.String("broker")]; ok { broker.DefaultBroker = b(strings.Split(c.String("broker_address"), ",")) } if r, ok := Registries[c.String("registry")]; ok { registry.DefaultRegistry = r(strings.Split(c.String("registry_address"), ",")) } if t, ok := Transports[c.String("transport")]; ok { transport.DefaultTransport = t(strings.Split(c.String("transport_address"), ",")) } metadata := make(map[string]string) for _, d := range c.StringSlice("server_metadata") { var key, val string parts := strings.Split(d, "=") key = parts[0] if len(parts) > 1 { val = strings.Join(parts[1:], "=") } metadata[key] = val } server.DefaultServer = server.NewServer( server.Name(c.String("server_name")), server.Id(c.String("server_id")), server.Address(c.String("server_address")), server.Metadata(metadata), ) client.DefaultClient = client.NewClient() return nil }
func run() { // Initialise Server server.Init( server.Name("go.micro.api"), ) // Init API api := New(Address) api.Init() // Start API if err := api.Start(); err != nil { log.Fatal(err) } // Run server if err := server.Run(); err != nil { log.Fatal(err) } // Stop API if err := api.Stop(); err != nil { log.Fatal(err) } }
func main() { // optionally setup command line usage cmd.Init() host, err := os.Hostname() if err != nil { log.Fatalf("Unable to obtain hostname: %s", err) } // Initialise Server server.Init( server.Name("io.jbrodriguez.mediagui.agent."+host), server.Address("0.0.0.0:0"), ) // Register Handlers server.Handle( server.NewHandler( &Agent{host: host}, ), ) log.Info("Agent started ") // Run server if err := server.Run(); err != nil { log.Info(err) } }
func Setup(c *cli.Context) error { if b, ok := Brokers[c.String("broker")]; ok { broker.DefaultBroker = b(strings.Split(c.String("broker_address"), ",")) } if r, ok := Registries[c.String("registry")]; ok { registry.DefaultRegistry = r(strings.Split(c.String("registry_address"), ",")) } if t, ok := Transports[c.String("transport")]; ok { transport.DefaultTransport = t(strings.Split(c.String("transport_address"), ",")) } metadata := make(map[string]string) for _, d := range c.StringSlice("server_metadata") { var key, val string parts := strings.Split(d, "=") key = parts[0] if len(parts) > 1 { val = strings.Join(parts[1:], "=") } metadata[key] = val } server.DefaultServer = server.NewServer( server.Name(c.String("server_name")), server.Id(c.String("server_id")), server.Address(c.String("server_address")), server.Metadata(metadata), ) client.DefaultClient = client.NewClient() os.Args = os.Args[:1] flag.Set("logtostderr", fmt.Sprintf("%v", c.Bool("logtostderr"))) flag.Set("alsologtostderr", fmt.Sprintf("%v", c.Bool("alsologtostderr"))) flag.Set("stderrthreshold", c.String("stderrthreshold")) flag.Set("log_backtrace_at", c.String("log_backtrace_at")) flag.Set("log_dir", c.String("log_dir")) flag.Set("vmodule", c.String("vmodule")) flag.Set("v", c.String("v")) flag.Parse() return nil }
func main() { // optionally setup command line usage cmd.Init() // Initialise Server server.Init( server.Name("go.micro.api.geo"), ) // Register Handlers server.Handle( server.NewHandler(new(handler.Location)), ) // Run server if err := server.Run(); err != nil { log.Fatal(err) } }
func main() { // optionally setup command line usage cmd.Init() // Initialise Server server.Init( server.Name("go.micro.srv.example"), ) // Register Handlers server.Handle( server.NewHandler( new(handler.Example), ), ) // Register Subscribers server.Subscribe( server.NewSubscriber( "topic.go.micro.srv.example", new(subscriber.Example), ), ) server.Subscribe( server.NewSubscriber( "topic.go.micro.srv.example", subscriber.Handler, ), ) // Run server if err := server.Run(); err != nil { log.Fatal(err) } }