Skip to content
Snippets Groups Projects
Commit 136b1752 authored by Juan Ignacio Ubeira's avatar Juan Ignacio Ubeira
Browse files

Fix to avoid spurious exceptions on node shutdown if there's an active topic.

- Minor nits for ParameterLoaderNode
parent d151b2b1
Branches
Tags
No related merge requests found
...@@ -39,8 +39,6 @@ import org.ros.internal.node.service.ServiceDeclaration; ...@@ -39,8 +39,6 @@ import org.ros.internal.node.service.ServiceDeclaration;
import org.ros.internal.node.service.ServiceFactory; import org.ros.internal.node.service.ServiceFactory;
import org.ros.internal.node.service.ServiceIdentifier; import org.ros.internal.node.service.ServiceIdentifier;
import org.ros.internal.node.service.ServiceManager; import org.ros.internal.node.service.ServiceManager;
import org.ros.internal.node.topic.DefaultPublisher;
import org.ros.internal.node.topic.DefaultSubscriber;
import org.ros.internal.node.topic.PublisherFactory; import org.ros.internal.node.topic.PublisherFactory;
import org.ros.internal.node.topic.SubscriberFactory; import org.ros.internal.node.topic.SubscriberFactory;
import org.ros.internal.node.topic.TopicDeclaration; import org.ros.internal.node.topic.TopicDeclaration;
...@@ -405,6 +403,7 @@ public class DefaultNode implements ConnectedNode { ...@@ -405,6 +403,7 @@ public class DefaultNode implements ConnectedNode {
// NOTE(damonkohler): We don't want to raise potentially spurious // NOTE(damonkohler): We don't want to raise potentially spurious
// exceptions during shutdown that would interrupt the process. This is // exceptions during shutdown that would interrupt the process. This is
// simply best effort cleanup. // simply best effort cleanup.
slaveServer.shutdown();
topicParticipantManager.shutdown(); topicParticipantManager.shutdown();
for (ServiceServer<?, ?> serviceServer : serviceManager.getServers()) { for (ServiceServer<?, ?> serviceServer : serviceManager.getServers()) {
try { try {
......
...@@ -40,7 +40,7 @@ import java.util.Map; ...@@ -40,7 +40,7 @@ import java.util.Map;
public class ParameterLoaderNode extends AbstractNodeMain { public class ParameterLoaderNode extends AbstractNodeMain {
public static final String NODE_NAME = "parameter_loader"; public static final String NODE_NAME = "parameter_loader";
private final List<LoadedResource> params = new ArrayList<>(); private final List<LoadedResource> params = new ArrayList<LoadedResource>();
private Log log; private Log log;
/** /**
...@@ -57,6 +57,7 @@ public class ParameterLoaderNode extends AbstractNodeMain { ...@@ -57,6 +57,7 @@ public class ParameterLoaderNode extends AbstractNodeMain {
this.params.add(new LoadedResource((new Yaml()).load(ymlInputStream), namespace)); this.params.add(new LoadedResource((new Yaml()).load(ymlInputStream), namespace));
} }
@SuppressWarnings("unchecked")
private void addParams(ParameterTree parameterTree, String namespace, Map<String, Object> params) { private void addParams(ParameterTree parameterTree, String namespace, Map<String, Object> params) {
for (Map.Entry<String, Object> e : params.entrySet()) { for (Map.Entry<String, Object> e : params.entrySet()) {
String fullKeyName = namespace + "/" + e.getKey(); String fullKeyName = namespace + "/" + e.getKey();
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment