|
12 | 12 | # See the License for the specific language governing permissions and |
13 | 13 | # limitations under the License. |
14 | 14 |
|
| 15 | +import sys |
| 16 | + |
15 | 17 | from rclpy.parameter import PARAMETER_SEPARATOR_STRING |
16 | 18 | from ros2cli.node.direct import DirectNode |
17 | 19 | from ros2cli.node.strategy import add_arguments |
@@ -52,7 +54,7 @@ def get_parameter_values(node, node_name, params): |
52 | 54 |
|
53 | 55 | # requested parameter not set |
54 | 56 | if not response.values: |
55 | | - return '# Parameter not set' |
| 57 | + return None |
56 | 58 |
|
57 | 59 | # extract type specific value |
58 | 60 | return [get_value(parameter_value=i) for i in response.values] |
@@ -81,18 +83,25 @@ def main(self, *, args): # noqa: D102 |
81 | 83 | # retrieve values |
82 | 84 | response = call_list_parameters(node=node, node_name=absolute_node_name) |
83 | 85 | if response is None: |
84 | | - raise RuntimeError( |
| 86 | + print( |
85 | 87 | 'Wait for service timed out waiting for ' |
86 | | - f'parameter services for node {node_name.full_name}') |
| 88 | + f'parameter services for node {node_name.full_name}', file=sys.stderr) |
| 89 | + return |
87 | 90 | elif response.result() is None: |
88 | 91 | e = response.exception() |
89 | | - raise RuntimeError( |
90 | | - 'Exception while calling service of node ' |
91 | | - f"'{node_name.full_name}': {e}") |
| 92 | + print( |
| 93 | + 'Exception while calling list_parameters service of node ' |
| 94 | + f"'{node_name.full_name}': {e}", file=sys.stderr) |
| 95 | + return |
92 | 96 |
|
93 | 97 | response = response.result().result.names |
94 | 98 | response = sorted(response) |
95 | 99 | parameter_values = self.get_parameter_values(node, absolute_node_name, response) |
| 100 | + if parameter_values is None: |
| 101 | + print( |
| 102 | + 'Exception while calling get_parameters service of node ' |
| 103 | + f"'{node_name.full_name}': {e}", file=sys.stderr) |
| 104 | + return |
96 | 105 |
|
97 | 106 | for param_name, pval in zip(response, parameter_values): |
98 | 107 | self.insert_dict( |
|
0 commit comments