Example #1
0
func main() {
	port := flag.Int("port", 9279, "server port")
	flag.Parse()
	arith := new(Arith)
	rpc.Register(arith)

	http.Handle("/_bson_rpc_", &rpcHandler{})
	http.Handle("/shutdown", &shutdownHandler{})
	addr := fmt.Sprintf("localhost:%d", *port)
	var e error
	l, e = net.Listen("tcp", addr)
	if e != nil {
		log.Fatal("listen error:", e)
	}
	log.Printf("arithserver running on %s", addr)
	http.Serve(l, nil)
}
Example #2
0
func Register(name string, rcvr interface{}) {
	if ServiceMap["bsonrpc-vt-"+name] {
		log.Infof("Registering %v for bsonrpc over vt port, disable it with -bsonrpc-vt-%v service_map parameter", name, name)
		rpc.Register(rcvr)
	} else {
		log.Infof("Not registering %v for bsonrpc over vt port, enable it with bsonrpc-vt-%v service_map parameter", name, name)
	}
	if ServiceMap["bsonrpc-auth-vt-"+name] {
		log.Infof("Registering %v for SASL bsonrpc over vt port, disable it with -bsonrpc-auth-vt-%v service_map parameter", name, name)
		rpcwrap.AuthenticatedServer.Register(rcvr)
	} else {
		log.Infof("Not registering %v for SASL bsonrpc over vt port, enable it with bsonrpc-auth-vt-%v service_map parameter", name, name)
	}

	// register the other guys
	socketFileRegister(name, rcvr)
	secureRegister(name, rcvr)
}
Example #3
0
// helper method to register the server (does interface checking)
func RegisterZkReader(zkReader ZkReader) {
	rpc.Register(zkReader)
}
Example #4
0
func init() {
	rpcplus.Register(new(Arith))
}