Skip to content
Snippets Groups Projects
Commit c746aed1 authored by Julian Cerruti's avatar Julian Cerruti Committed by GitHub
Browse files

Merge pull request #242 from jubeira/fix/node_shutdown

Fix: avoid exceptions on node shutdown
parents d151b2b1 136b1752
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