@@ -52,15 +52,13 @@ def __init__(self, node_name, buffer_size=1024, connections=10, tcp_ip=None, tcp
52
52
self .declare_parameter ("ROS_TCP_PORT" , 10000 )
53
53
54
54
if tcp_ip :
55
- self .get_logger (). log ("Using ROS_IP override from constructor: {}" .format (tcp_ip ))
55
+ self .loginfo ("Using ROS_IP override from constructor: {}" .format (tcp_ip ))
56
56
self .tcp_ip = tcp_ip
57
57
else :
58
58
self .tcp_ip = self .get_parameter ("ROS_IP" ).get_parameter_value ().string_value
59
59
60
60
if tcp_port :
61
- self .get_logger ().log (
62
- "Using ROS_TCP_PORT override from constructor: {}" .format (tcp_port )
63
- )
61
+ self .loginfo ("Using ROS_TCP_PORT override from constructor: {}" .format (tcp_port ))
64
62
self .tcp_port = tcp_port
65
63
else :
66
64
self .tcp_port = self .get_parameter ("ROS_TCP_PORT" ).get_parameter_value ().integer_value
@@ -93,7 +91,7 @@ def listen_loop(self):
93
91
Creates and binds sockets using TCP variables then listens for incoming connections.
94
92
For each new connection a client thread will be created to handle communication.
95
93
"""
96
- self .get_logger (). info ("Starting server on {}:{}" .format (self .tcp_ip , self .tcp_port ))
94
+ self .loginfo ("Starting server on {}:{}" .format (self .tcp_ip , self .tcp_port ))
97
95
tcp_server = socket .socket (socket .AF_INET , socket .SOCK_STREAM )
98
96
tcp_server .setsockopt (socket .SOL_SOCKET , socket .SO_REUSEADDR , 1 )
99
97
tcp_server .bind ((self .tcp_ip , self .tcp_port ))
@@ -105,7 +103,7 @@ def listen_loop(self):
105
103
(conn , (ip , port )) = tcp_server .accept ()
106
104
ClientThread (conn , self , ip , port ).start ()
107
105
except socket .timeout as err :
108
- self .get_logger (). error ("ros_tcp_endpoint.TcpServer: socket timeout" )
106
+ self .logerr ("ros_tcp_endpoint.TcpServer: socket timeout" )
109
107
110
108
def send_unity_error (self , error ):
111
109
self .unity_tcp_sender .send_unity_error (error )
@@ -128,6 +126,15 @@ def handle_syscommand(self, topic, data):
128
126
params = json .loads (message_json )
129
127
function (** params )
130
128
129
+ def loginfo (self , text ):
130
+ self .get_logger ().info (text )
131
+
132
+ def logwarn (self , text ):
133
+ self .get_logger ().warning (text )
134
+
135
+ def logerr (self , text ):
136
+ self .get_logger ().error (text )
137
+
131
138
def setup_executor (self ):
132
139
"""
133
140
Since rclpy.spin() is a blocking call the server needed a way
@@ -136,7 +143,13 @@ def setup_executor(self):
136
143
MultiThreadedExecutor allows us to set the number of threads
137
144
needed as well as the nodes that need to be spun.
138
145
"""
139
- num_threads = len (self .publishers_table .keys ()) + len (self .subscribers_table .keys ()) + len (self .ros_services_table .keys ()) + len (self .unity_services_table .keys ()) + 1
146
+ num_threads = (
147
+ len (self .publishers_table .keys ())
148
+ + len (self .subscribers_table .keys ())
149
+ + len (self .ros_services_table .keys ())
150
+ + len (self .unity_services_table .keys ())
151
+ + 1
152
+ )
140
153
executor = MultiThreadedExecutor (num_threads )
141
154
142
155
executor .add_node (self )
@@ -204,9 +217,7 @@ def subscribe(self, topic, message_name):
204
217
if self .tcp_server .executor is not None :
205
218
self .tcp_server .executor .add_node (new_subscriber )
206
219
207
- self .tcp_server .get_logger ().info (
208
- "RegisterSubscriber({}, {}) OK" .format (topic , message_class )
209
- )
220
+ self .tcp_server .loginfo ("RegisterSubscriber({}, {}) OK" .format (topic , message_class ))
210
221
211
222
def publish (self , topic , message_name , queue_size = 10 , latch = False ):
212
223
if topic == "" :
@@ -234,9 +245,7 @@ def publish(self, topic, message_name, queue_size=10, latch=False):
234
245
if self .tcp_server .executor is not None :
235
246
self .tcp_server .executor .add_node (new_publisher )
236
247
237
- self .tcp_server .get_logger ().info (
238
- "RegisterPublisher({}, {}) OK" .format (topic , message_class )
239
- )
248
+ self .tcp_server .loginfo ("RegisterPublisher({}, {}) OK" .format (topic , message_class ))
240
249
241
250
def ros_service (self , topic , message_name ):
242
251
if topic == "" :
@@ -265,9 +274,7 @@ def ros_service(self, topic, message_name):
265
274
if self .tcp_server .executor is not None :
266
275
self .tcp_server .executor .add_node (new_service )
267
276
268
- self .tcp_server .get_logger ().info (
269
- "RegisterRosService({}, {}) OK" .format (topic , message_class )
270
- )
277
+ self .tcp_server .loginfo ("RegisterRosService({}, {}) OK" .format (topic , message_class ))
271
278
272
279
def unity_service (self , topic , message_name ):
273
280
if topic == "" :
@@ -297,9 +304,7 @@ def unity_service(self, topic, message_name):
297
304
if self .tcp_server .executor is not None :
298
305
self .tcp_server .executor .add_node (new_service )
299
306
300
- self .tcp_server .get_logger ().info (
301
- "RegisterUnityService({}, {}) OK" .format (topic , message_class )
302
- )
307
+ self .tcp_server .loginfo ("RegisterUnityService({}, {}) OK" .format (topic , message_class ))
303
308
304
309
def response (self , srv_id ): # the next message is a service response
305
310
self .tcp_server .pending_srv_id = srv_id
@@ -320,20 +325,18 @@ def resolve_message_name(self, name, extension="msg"):
320
325
importlib .import_module (module_name + "." + extension )
321
326
module = sys .modules [module_name ]
322
327
if module is None :
323
- self .tcp_server .get_logger ().error (
324
- "Failed to resolve module {}" .format (module_name )
325
- )
328
+ self .tcp_server .logerr ("Failed to resolve module {}" .format (module_name ))
326
329
module = getattr (module , extension )
327
330
if module is None :
328
- self .tcp_server .get_logger (). error (
331
+ self .tcp_server .logerr (
329
332
"Failed to resolve module {}.{}" .format (module_name , extension )
330
333
)
331
334
module = getattr (module , class_name )
332
335
if module is None :
333
- self .tcp_server .get_logger (). error (
336
+ self .tcp_server .logerr (
334
337
"Failed to resolve module {}.{}.{}" .format (module_name , extension , class_name )
335
338
)
336
339
return module
337
340
except (IndexError , KeyError , AttributeError , ImportError ) as e :
338
- self .tcp_server .get_logger (). error ("Failed to resolve message name: {}" .format (e ))
341
+ self .tcp_server .logerr ("Failed to resolve message name: {}" .format (e ))
339
342
return None
0 commit comments