@@ -127,7 +127,7 @@ func (s GatewayConnectorServer) AddHandler(ctx context.Context, req *pb.AddHandl
127127 return nil , fmt .Errorf ("failed to dial handler: %d: %w" , req .HandlerId , err )
128128 }
129129 client := NewGatewayConnectorHandlerClient (conn )
130- err = s .impl .AddHandler (ctx , req .Methods , client )
130+ err = s .getImpl () .AddHandler (ctx , req .Methods , client )
131131 if err != nil {
132132 return nil , fmt .Errorf ("failed to add handler: %d: %w" , req .HandlerId , err )
133133 }
@@ -140,38 +140,48 @@ func (s GatewayConnectorServer) SendToGateway(ctx context.Context, req *pb.SendM
140140 if err != nil {
141141 return nil , fmt .Errorf ("failed to decode response: %w" , err )
142142 }
143- if err := s .impl .SendToGateway (ctx , req .GatewayId , & resp ); err != nil {
143+ if err := s .getImpl () .SendToGateway (ctx , req .GatewayId , & resp ); err != nil {
144144 return nil , fmt .Errorf ("failed to send message to gateway: %s: %w" , req .GatewayId , err )
145145 }
146146 return & emptypb.Empty {}, nil
147147}
148+
148149func (s GatewayConnectorServer ) SignMessage (ctx context.Context , req * pb.SignMessageRequest ) (* pb.SignMessageReply , error ) {
149- signature , err := s .impl .SignMessage (ctx , req .Message )
150+ signature , err := s .getImpl () .SignMessage (ctx , req .Message )
150151 if err != nil {
151152 return nil , fmt .Errorf ("failed to sign message: %w" , err )
152153 }
153154 return & pb.SignMessageReply {
154155 Signature : signature ,
155156 }, nil
156157}
158+
157159func (s GatewayConnectorServer ) GatewayIDs (ctx context.Context , _ * emptypb.Empty ) (* pb.GatewayIDsReply , error ) {
158- gatewayIDs , err := s .impl .GatewayIDs (ctx )
160+ gatewayIDs , err := s .getImpl () .GatewayIDs (ctx )
159161 if err != nil {
160162 return nil , fmt .Errorf ("failed to get gateway IDs: %w" , err )
161163 }
162164 return & pb.GatewayIDsReply {GatewayIds : gatewayIDs }, nil
163165}
164166
165167func (s GatewayConnectorServer ) DonID (ctx context.Context , _ * emptypb.Empty ) (* pb.DonIDReply , error ) {
166- donID , err := s .impl .DonID (ctx )
168+ donID , err := s .getImpl () .DonID (ctx )
167169 if err != nil {
168170 return nil , fmt .Errorf ("failed to get DON ID: %w" , err )
169171 }
170172 return & pb.DonIDReply {DonId : donID }, nil
171173}
174+
172175func (s GatewayConnectorServer ) AwaitConnection (ctx context.Context , req * pb.GatewayIDRequest ) (* emptypb.Empty , error ) {
173- if err := s .impl .AwaitConnection (ctx , req .GatewayId ); err != nil {
176+ if err := s .getImpl () .AwaitConnection (ctx , req .GatewayId ); err != nil {
174177 return nil , fmt .Errorf ("failed to await connection to gateway: %s: %w" , req .GatewayId , err )
175178 }
176179 return & emptypb.Empty {}, nil
177180}
181+
182+ func (s GatewayConnectorServer ) getImpl () core.GatewayConnector {
183+ if s .impl == nil {
184+ return & core.UnimplementedGatewayConnector {}
185+ }
186+ return s .impl
187+ }
0 commit comments