@@ -110,88 +110,12 @@ def _on_inbox_packet_received(self, newpacket, info, status, error_message):
110
110
return False
111
111
112
112
def _on_request_service_received (self , newpacket , info ):
113
- from twisted .internet .defer import Deferred
114
- from bitdust .logs import lg
115
- from bitdust .lib import serialization
116
- from bitdust .services import driver
117
113
from bitdust .p2p import p2p_service
118
- from bitdust .transport import packet_out
119
- if len (newpacket .Payload ) > 1024 * 10 :
120
- lg .warn ('too long payload' )
121
- p2p_service .SendFail (newpacket , 'too long payload' )
122
- return True
123
- try :
124
- json_payload = serialization .BytesToDict (newpacket .Payload , keys_to_text = True , values_to_text = True )
125
- json_payload ['name' ]
126
- json_payload ['payload' ]
127
- except :
128
- lg .warn ('json payload invalid' )
129
- p2p_service .SendFail (newpacket , 'json payload invalid' )
130
- return True
131
- service_name = str (json_payload ['name' ])
132
- lg .out (self .debug_level , 'service_p2p_hookups.RequestService {%s} from %s' % (service_name , newpacket .OwnerID ))
133
- if not driver .is_exist (service_name ):
134
- lg .warn ('got wrong payload in %s' % service_name )
135
- p2p_service .SendFail (newpacket , 'service %s not exist' % service_name )
136
- return True
137
- if not driver .is_on (service_name ):
138
- p2p_service .SendFail (newpacket , 'service %s is off' % service_name )
139
- return True
140
- try :
141
- result = driver .request (service_name , json_payload ['payload' ], newpacket , info )
142
- except :
143
- lg .exc ()
144
- p2p_service .SendFail (newpacket , 'request processing failed with exception' )
145
- return True
146
- if not result :
147
- lg .out (self .debug_level , 'service_p2p_hookups._send_request_service SKIP request %s' % service_name )
148
- return False
149
- if isinstance (result , Deferred ):
150
- lg .out (self .debug_level , 'service_p2p_hookups._send_request_service fired delayed execution' )
151
- elif isinstance (result , packet_out .PacketOut ):
152
- lg .out (self .debug_level , 'service_p2p_hookups._send_request_service outbox packet sent' )
153
- return True
114
+ return p2p_service .on_request_service_received (newpacket , info )
154
115
155
116
def _on_cancel_service_received (self , newpacket , info ):
156
- from twisted .internet .defer import Deferred
157
- from bitdust .logs import lg
158
- from bitdust .lib import serialization
159
- from bitdust .services import driver
160
117
from bitdust .p2p import p2p_service
161
- from bitdust .transport import packet_out
162
- if len (newpacket .Payload ) > 1024 * 10 :
163
- p2p_service .SendFail (newpacket , 'too long payload' )
164
- return True
165
- try :
166
- json_payload = serialization .BytesToDict (newpacket .Payload , keys_to_text = True , values_to_text = True )
167
- json_payload ['name' ]
168
- json_payload ['payload' ]
169
- except :
170
- p2p_service .SendFail (newpacket , 'json payload invalid' )
171
- return True
172
- service_name = json_payload ['name' ]
173
- lg .out (self .debug_level , 'service_p2p_hookups.CancelService {%s} from %s' % (service_name , newpacket .OwnerID ))
174
- if not driver .is_exist (service_name ):
175
- lg .warn ('got wrong payload in %s' % newpacket )
176
- p2p_service .SendFail (newpacket , 'service %s not exist' % service_name )
177
- return True
178
- if not driver .is_on (service_name ):
179
- p2p_service .SendFail (newpacket , 'service %s is off' % service_name )
180
- return True
181
- try :
182
- result = driver .cancel (service_name , json_payload ['payload' ], newpacket , info )
183
- except :
184
- lg .exc ()
185
- p2p_service .SendFail (newpacket , 'request processing failed with exception' )
186
- return True
187
- if not result :
188
- lg .out (self .debug_level , 'service_p2p_hookups._send_cancel_service SKIP request %s' % service_name )
189
- return False
190
- if isinstance (result , Deferred ):
191
- lg .out (self .debug_level , 'service_p2p_hookups._send_cancel_service fired delayed execution' )
192
- elif isinstance (result , packet_out .PacketOut ):
193
- lg .out (self .debug_level , 'service_p2p_hookups._send_cancel_service outbox packet sent' )
194
- return True
118
+ return p2p_service .on_cancel_service_received (newpacket , info )
195
119
196
120
def _on_p2p_connector_switched (self , oldstate , newstate , evt , * args , ** kwargs ):
197
121
if newstate == 'INCOMMING?' :
0 commit comments