Explorar el Código

改了几个函数名

tanghai hace 14 años
padre
commit
0fc7433ec0

+ 4 - 0
Src/Egametang/Rpc/RpcCommunicator.cc

@@ -40,6 +40,7 @@ void RpcCommunicator::RecvMessage(RpcMetaPtr meta, StringPtr message,
 	if (err)
 	{
 		LOG(ERROR) << "receive message size failed: " << err.message();
+		Stop();
 		return;
 	}
 	message->resize(meta->size, '\0');
@@ -55,6 +56,7 @@ void RpcCommunicator::RecvDone(RpcMetaPtr meta, StringPtr message,
 	if (err)
 	{
 		LOG(ERROR) << "receive message failed: " << err.message();
+		Stop();
 		return;
 	}
 	OnRecvMessage(meta, message);
@@ -80,6 +82,7 @@ void RpcCommunicator::SendMessage(RpcMetaPtr meta, StringPtr message,
 	if (err)
 	{
 		LOG(ERROR) << "send message size failed: " << err.message();
+		Stop();
 		return;
 	}
 	boost::asio::async_write(socket, boost::asio::buffer(*message),
@@ -93,6 +96,7 @@ void RpcCommunicator::SendDone(RpcMetaPtr meta, StringPtr message,
 	if (err)
 	{
 		LOG(ERROR) << "send message failed: " << err.message();
+		Stop();
 		return;
 	}
 	OnSendMessage(meta, message);

+ 5 - 2
Src/Egametang/Rpc/RpcServer.cc

@@ -87,7 +87,7 @@ void RpcServer::RunService(RpcSessionPtr session, RpcMetaPtr meta,
 					done));
 }
 
-void RpcServer::RegisterService(RpcServicePtr service)
+void RpcServer::Register(RpcServicePtr service)
 {
 	boost::hash<std::string> string_hash;
 	const google::protobuf::ServiceDescriptor* service_descriptor = service->GetDescriptor();
@@ -100,9 +100,12 @@ void RpcServer::RegisterService(RpcServicePtr service)
 		CHECK(methods.find(method_hash) == methods.end());
 		methods[method_hash] = method_info;
 	}
+
+	const google::protobuf::Descriptor* descriptor =
+	    google::protobuf::DescriptorPool::generated_pool()->FindMessageTypeByName();
 }
 
-void RpcServer::RemoveSession(RpcSessionPtr& session)
+void RpcServer::Remove(RpcSessionPtr& session)
 {
 	sessions.erase(session);
 }

+ 2 - 2
Src/Egametang/Rpc/RpcServer.h

@@ -32,8 +32,8 @@ public:
 	virtual boost::asio::io_service& IOService();
 	virtual void RunService(RpcSessionPtr session, RpcMetaPtr meta,
 			StringPtr message, MessageHandler handler);
-	virtual void RegisterService(RpcServicePtr service);
-	virtual void RemoveSession(RpcSessionPtr& session);
+	virtual void Register(RpcServicePtr service);
+	virtual void Remove(RpcSessionPtr& session);
 	virtual void Stop();
 };
 

+ 2 - 3
Src/Egametang/Rpc/RpcServerMock.h

@@ -21,9 +21,8 @@ public:
 
 	MOCK_METHOD0(IOService, boost::asio::io_service&());
 	MOCK_METHOD4(RunService, void(RpcSessionPtr, RpcMetaPtr, StringPtr, MessageHandler));
-	MOCK_METHOD1(RegisterService, void(RpcServicePtr));
-	MOCK_METHOD1(RemoveSession, void(RpcSessionPtr&));
-	MOCK_METHOD0(RemoveSession, void());
+	MOCK_METHOD1(Register, void(RpcServicePtr));
+	MOCK_METHOD1(Remove, void(RpcSessionPtr&));
 };
 
 } // namespace Egametang

+ 1 - 1
Src/Egametang/Rpc/RpcSession.cc

@@ -34,7 +34,7 @@ void RpcSession::Stop()
 {
 	RpcCommunicator::Stop();
 	RpcSessionPtr session = shared_from_this();
-	rpc_server.RemoveSession(session);
+	rpc_server.Remove(session);
 }
 
 } // namespace Egametang