This is an automated email from the ASF dual-hosted git repository.

huxing pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/dubbo-go.git


The following commit(s) were added to refs/heads/master by this push:
     new ea6c157  Fix: alexstocks/getty issue 18
     new c8554c3  Merge pull request #96 from divebomb/master
ea6c157 is described below

commit ea6c15753d59672a79f5b10988cb007a5c35b83d
Author: AlexStocks <alexsto...@foxmail.com>
AuthorDate: Fri Jun 14 22:20:07 2019 +0800

    Fix: alexstocks/getty issue 18
---
 protocol/dubbo/readwriter.go | 11 +++++------
 protocol/dubbo/server.go     |  8 ++++++--
 2 files changed, 11 insertions(+), 8 deletions(-)

diff --git a/protocol/dubbo/readwriter.go b/protocol/dubbo/readwriter.go
index 6d789ae..529aa75 100644
--- a/protocol/dubbo/readwriter.go
+++ b/protocol/dubbo/readwriter.go
@@ -24,7 +24,7 @@ import (
 
 import (
        "github.com/dubbogo/getty"
-       "github.com/dubbogo/hessian2"
+       hessian "github.com/dubbogo/hessian2"
        perrors "github.com/pkg/errors"
 )
 import (
@@ -89,12 +89,11 @@ func (p *RpcClientPackageHandler) Write(ss getty.Session, 
pkg interface{}) error
 // RpcServerPackageHandler
 ////////////////////////////////////////////
 
-type RpcServerPackageHandler struct {
-}
+var (
+       rpcServerPkgHandler = &RpcServerPackageHandler{}
+)
 
-func NewRpcServerPackageHandler() *RpcServerPackageHandler {
-       return &RpcServerPackageHandler{}
-}
+type RpcServerPackageHandler struct{}
 
 func (p *RpcServerPackageHandler) Read(ss getty.Session, data []byte) 
(interface{}, int, error) {
        pkg := &DubboPackage{
diff --git a/protocol/dubbo/server.go b/protocol/dubbo/server.go
index 80568c6..8bed30f 100644
--- a/protocol/dubbo/server.go
+++ b/protocol/dubbo/server.go
@@ -79,6 +79,8 @@ type Server struct {
        conf      ServerConfig
        tcpServer getty.Server
        exporter  protocol.Exporter
+
+       rpcHandler *RpcServerHandler
 }
 
 func NewServer(exporter protocol.Exporter) *Server {
@@ -88,6 +90,8 @@ func NewServer(exporter protocol.Exporter) *Server {
                conf:     *srvConf,
        }
 
+       s.rpcHandler = NewRpcServerHandler(s.exporter, s.conf.SessionNumber, 
s.conf.sessionTimeout)
+
        return s
 }
 
@@ -116,8 +120,8 @@ func (s *Server) newSession(session getty.Session) error {
 
        session.SetName(conf.GettySessionParam.SessionName)
        session.SetMaxMsgLen(conf.GettySessionParam.MaxMsgLen)
-       session.SetPkgHandler(NewRpcServerPackageHandler())
-       session.SetEventListener(NewRpcServerHandler(s.exporter, 
conf.SessionNumber, conf.sessionTimeout))
+       session.SetPkgHandler(rpcServerPkgHandler)
+       session.SetEventListener(s.rpcHandler)
        session.SetRQLen(conf.GettySessionParam.PkgRQSize)
        session.SetWQLen(conf.GettySessionParam.PkgWQSize)
        session.SetReadTimeout(conf.GettySessionParam.tcpReadTimeout)

Reply via email to