X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-rest-connector%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fsal%2Frestconf%2Fimpl%2FRestconfProviderImpl.java;h=84b092e10eae92f9fc7715162c6bbdc48a975ad1;hb=d8d8f731bbe6c58fcbd0e616734e2e230aaf4ab4;hp=c7c9cc0dc5bd1d34612a6e31dccc26cc72548249;hpb=8b4d61d841649cd054bb62b20fcc64e87cc7c36d;p=controller.git diff --git a/opendaylight/md-sal/sal-rest-connector/src/main/java/org/opendaylight/controller/sal/restconf/impl/RestconfProviderImpl.java b/opendaylight/md-sal/sal-rest-connector/src/main/java/org/opendaylight/controller/sal/restconf/impl/RestconfProviderImpl.java index c7c9cc0dc5..84b092e10e 100644 --- a/opendaylight/md-sal/sal-rest-connector/src/main/java/org/opendaylight/controller/sal/restconf/impl/RestconfProviderImpl.java +++ b/opendaylight/md-sal/sal-rest-connector/src/main/java/org/opendaylight/controller/sal/restconf/impl/RestconfProviderImpl.java @@ -19,6 +19,7 @@ import org.opendaylight.controller.config.yang.md.sal.rest.connector.RestConnect import org.opendaylight.controller.config.yang.md.sal.rest.connector.Rpcs; import org.opendaylight.controller.md.sal.dom.api.DOMDataBroker; import org.opendaylight.controller.md.sal.dom.api.DOMMountPointService; +import org.opendaylight.controller.md.sal.dom.api.DOMRpcService; import org.opendaylight.controller.sal.core.api.Broker.ProviderSession; import org.opendaylight.controller.sal.core.api.Provider; import org.opendaylight.controller.sal.core.api.model.SchemaService; @@ -30,26 +31,26 @@ import org.opendaylight.yangtools.yang.model.api.SchemaContextListener; public class RestconfProviderImpl implements Provider, AutoCloseable, RestConnector, RestConnectorRuntimeMXBean { - public final static String NOT_INITALIZED_MSG = "Restconf is not initialized yet. Please try again later"; - private final StatisticsRestconfServiceWrapper stats = StatisticsRestconfServiceWrapper.getInstance(); private ListenerRegistration listenerRegistration; private PortNumber port; - public void setWebsocketPort(PortNumber port) { + private Thread webSocketServerThread; + + public void setWebsocketPort(final PortNumber port) { this.port = port; } - private Thread webSocketServerThread; - @Override - public void onSessionInitiated(ProviderSession session) { + public void onSessionInitiated(final ProviderSession session) { final DOMDataBroker domDataBroker = session.getService(DOMDataBroker.class); BrokerFacade.getInstance().setContext(session); BrokerFacade.getInstance().setDomDataBroker( domDataBroker); - - SchemaService schemaService = session.getService(SchemaService.class); + final SchemaService schemaService = session.getService(SchemaService.class); listenerRegistration = schemaService.registerSchemaContextListener(ControllerContext.getInstance()); + BrokerFacade.getInstance().setRpcService(session.getService(DOMRpcService.class)); + + ControllerContext.getInstance().setSchemas(schemaService.getGlobalContext()); ControllerContext.getInstance().setMountService(session.getService(DOMMountPointService.class)); @@ -65,22 +66,25 @@ public class RestconfProviderImpl implements Provider, AutoCloseable, RestConnec @Override public void close() { + if (listenerRegistration != null) { listenerRegistration.close(); } + + WebSocketServer.destroyInstance(); webSocketServerThread.interrupt(); } @Override public Config getConfig() { - Config config = new Config(); - Get get = new Get(); + final Config config = new Config(); + final Get get = new Get(); get.setReceivedRequests(stats.getConfigGet()); config.setGet(get); - Post post = new Post(); + final Post post = new Post(); post.setReceivedRequests(stats.getConfigPost()); config.setPost(post); - Put put = new Put(); + final Put put = new Put(); put.setReceivedRequests(stats.getConfigPut()); config.setPut(put); return config; @@ -88,9 +92,9 @@ public class RestconfProviderImpl implements Provider, AutoCloseable, RestConnec @Override public Operational getOperational() { - BigInteger opGet = stats.getOperationalGet(); - Operational operational = new Operational(); - Get get = new Get(); + final BigInteger opGet = stats.getOperationalGet(); + final Operational operational = new Operational(); + final Get get = new Get(); get.setReceivedRequests(opGet); operational.setGet(get); return operational; @@ -98,8 +102,8 @@ public class RestconfProviderImpl implements Provider, AutoCloseable, RestConnec @Override public Rpcs getRpcs() { - BigInteger rpcInvoke = stats.getRpc(); - Rpcs rpcs = new Rpcs(); + final BigInteger rpcInvoke = stats.getRpc(); + final Rpcs rpcs = new Rpcs(); rpcs.setReceivedRequests(rpcInvoke); return rpcs ; }