Cleaned-up templates and added package.html files.
diff --git a/net/core/trivial/src/main/java/org/onlab/onos/net/trivial/impl/SimpleDeviceManager.java b/net/core/trivial/src/main/java/org/onlab/onos/net/trivial/impl/SimpleDeviceManager.java
index 7038284..a293183 100644
--- a/net/core/trivial/src/main/java/org/onlab/onos/net/trivial/impl/SimpleDeviceManager.java
+++ b/net/core/trivial/src/main/java/org/onlab/onos/net/trivial/impl/SimpleDeviceManager.java
@@ -3,6 +3,8 @@
import org.apache.felix.scr.annotations.Activate;
import org.apache.felix.scr.annotations.Component;
import org.apache.felix.scr.annotations.Deactivate;
+import org.apache.felix.scr.annotations.Reference;
+import org.apache.felix.scr.annotations.ReferenceCardinality;
import org.apache.felix.scr.annotations.Service;
import org.onlab.onos.event.AbstractListenerManager;
import org.onlab.onos.event.EventDispatchService;
@@ -22,11 +24,11 @@
import org.onlab.onos.net.provider.AbstractProviderBroker;
import org.onlab.onos.net.provider.AbstractProviderService;
import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
import java.util.List;
import static com.google.common.base.Preconditions.checkNotNull;
+import static org.slf4j.LoggerFactory.getLogger;
/**
* Provides basic implementation of the device SB & NB APIs.
@@ -42,24 +44,25 @@
public static final String DEVICE_DESCRIPTION_NULL = "Device description cannot be null";
public static final String PORT_DESCRIPTION_NULL = "Port description cannot be null";
- private Logger log = LoggerFactory.getLogger(SimpleDeviceManager.class);
+ private final Logger log = getLogger(getClass());
private final AbstractListenerManager<DeviceEvent, DeviceListener>
listenerManager = new AbstractListenerManager<>();
- private EventDispatchService eventDispatcher;
-
private final DeviceStore store = new DeviceStore();
+ @Reference(cardinality = ReferenceCardinality.MANDATORY_UNARY)
+ private EventDispatchService eventDispatcher;
+
@Activate
public void activate() {
-// eventDispatcher.addSink(DeviceEvent.class, listenerManager);
+ eventDispatcher.addSink(DeviceEvent.class, listenerManager);
log.info("Started");
}
@Deactivate
public void deactivate() {
-// eventDispatcher.removeSink(DeviceEvent.class);
+ eventDispatcher.removeSink(DeviceEvent.class);
log.info("Stopped");
}
diff --git a/net/core/trivial/src/main/java/org/onlab/onos/net/trivial/impl/SimpleHostManager.java b/net/core/trivial/src/main/java/org/onlab/onos/net/trivial/impl/SimpleHostManager.java
index 81397cf..0c0c983 100644
--- a/net/core/trivial/src/main/java/org/onlab/onos/net/trivial/impl/SimpleHostManager.java
+++ b/net/core/trivial/src/main/java/org/onlab/onos/net/trivial/impl/SimpleHostManager.java
@@ -3,55 +3,56 @@
import org.apache.felix.scr.annotations.Activate;
import org.apache.felix.scr.annotations.Component;
import org.apache.felix.scr.annotations.Deactivate;
+import org.apache.felix.scr.annotations.Reference;
+import org.apache.felix.scr.annotations.ReferenceCardinality;
import org.apache.felix.scr.annotations.Service;
+import org.onlab.onos.event.AbstractListenerManager;
+import org.onlab.onos.event.EventDispatchService;
import org.onlab.onos.net.host.HostDescription;
+import org.onlab.onos.net.host.HostEvent;
+import org.onlab.onos.net.host.HostListener;
import org.onlab.onos.net.host.HostProvider;
import org.onlab.onos.net.host.HostProviderBroker;
import org.onlab.onos.net.host.HostProviderService;
import org.onlab.onos.net.provider.AbstractProviderBroker;
import org.onlab.onos.net.provider.AbstractProviderService;
import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
+
+import static org.slf4j.LoggerFactory.getLogger;
/**
* Provides basic implementation of the host SB & NB APIs.
*/
@Component(immediate = true)
@Service
-public class SimpleHostManager implements HostProviderBroker {
+public class SimpleHostManager
+ extends AbstractProviderBroker<HostProvider, HostProviderService>
+ implements HostProviderBroker {
- private Logger log = LoggerFactory.getLogger(SimpleHostManager.class);
+ private final Logger log = getLogger(getClass());
- private final HostProviderBroker broker = new InternalBroker();
+ private final AbstractListenerManager<HostEvent, HostListener>
+ listenerManager = new AbstractListenerManager<>();
+
+ @Reference(cardinality = ReferenceCardinality.MANDATORY_UNARY)
+ private EventDispatchService eventDispatcher;
+
@Activate
public void activate() {
+ eventDispatcher.addSink(HostEvent.class, listenerManager);
log.info("Started");
}
@Deactivate
public void deactivate() {
+ eventDispatcher.removeSink(HostEvent.class);
log.info("Stopped");
}
@Override
- public HostProviderService register(HostProvider provider) {
- return broker.register(provider);
- }
-
- @Override
- public void unregister(HostProvider provider) {
- broker.unregister(provider);
- }
-
- // Internal delegate for tracking various providers and issuing them a
- // personalized provider service.
- private class InternalBroker extends AbstractProviderBroker<HostProvider, HostProviderService>
- implements HostProviderBroker {
- @Override
- protected HostProviderService createProviderService(HostProvider provider) {
- return new InternalHostProviderService(provider);
- }
+ protected HostProviderService createProviderService(HostProvider provider) {
+ return new InternalHostProviderService(provider);
}
// Personalized host provider service issued to the supplied provider.
diff --git a/net/core/trivial/src/main/java/org/onlab/onos/net/trivial/impl/SimpleLinkManager.java b/net/core/trivial/src/main/java/org/onlab/onos/net/trivial/impl/SimpleLinkManager.java
index 6283e0b..73fedab 100644
--- a/net/core/trivial/src/main/java/org/onlab/onos/net/trivial/impl/SimpleLinkManager.java
+++ b/net/core/trivial/src/main/java/org/onlab/onos/net/trivial/impl/SimpleLinkManager.java
@@ -3,55 +3,55 @@
import org.apache.felix.scr.annotations.Activate;
import org.apache.felix.scr.annotations.Component;
import org.apache.felix.scr.annotations.Deactivate;
+import org.apache.felix.scr.annotations.Reference;
+import org.apache.felix.scr.annotations.ReferenceCardinality;
import org.apache.felix.scr.annotations.Service;
+import org.onlab.onos.event.AbstractListenerManager;
+import org.onlab.onos.event.EventDispatchService;
import org.onlab.onos.net.link.LinkDescription;
+import org.onlab.onos.net.link.LinkEvent;
+import org.onlab.onos.net.link.LinkListener;
import org.onlab.onos.net.link.LinkProvider;
import org.onlab.onos.net.link.LinkProviderBroker;
import org.onlab.onos.net.link.LinkProviderService;
import org.onlab.onos.net.provider.AbstractProviderBroker;
import org.onlab.onos.net.provider.AbstractProviderService;
import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
+
+import static org.slf4j.LoggerFactory.getLogger;
/**
* Provides basic implementation of the link SB & NB APIs.
*/
@Component(immediate = true)
@Service
-public class SimpleLinkManager implements LinkProviderBroker {
+public class SimpleLinkManager
+ extends AbstractProviderBroker<LinkProvider, LinkProviderService>
+ implements LinkProviderBroker {
- private Logger log = LoggerFactory.getLogger(SimpleLinkManager.class);
+ private final Logger log = getLogger(getClass());
- private final LinkProviderBroker broker = new InternalBroker();
+ private final AbstractListenerManager<LinkEvent, LinkListener>
+ listenerManager = new AbstractListenerManager<>();
+
+ @Reference(cardinality = ReferenceCardinality.MANDATORY_UNARY)
+ private EventDispatchService eventDispatcher;
@Activate
public void activate() {
+ eventDispatcher.addSink(LinkEvent.class, listenerManager);
log.info("Started");
}
@Deactivate
public void deactivate() {
+ eventDispatcher.removeSink(LinkEvent.class);
log.info("Stopped");
}
@Override
- public LinkProviderService register(LinkProvider provider) {
- return broker.register(provider);
- }
-
- @Override
- public void unregister(LinkProvider provider) {
- broker.unregister(provider);
- }
-
- // Internal delegate for tracking various providers and issuing them a
- // personalized provider service.
- private class InternalBroker extends AbstractProviderBroker<LinkProvider, LinkProviderService>
- implements LinkProviderBroker {
- @Override
- protected LinkProviderService createProviderService(LinkProvider provider) {
- return new InternalLinkProviderService(provider);
- }
+ protected LinkProviderService createProviderService(LinkProvider provider) {
+ return new InternalLinkProviderService(provider);
}
// Personalized link provider service issued to the supplied provider.