Refining driver subsystem to facilitate coordinated start-up.

- for ONOS-6402

Change-Id: I7f64fc62ad1d451fcf55624b2422b60631a3c8e8
diff --git a/incubator/net/src/main/java/org/onosproject/incubator/net/meter/impl/MeterManager.java b/incubator/net/src/main/java/org/onosproject/incubator/net/meter/impl/MeterManager.java
index 62b77de..1777cbc 100644
--- a/incubator/net/src/main/java/org/onosproject/incubator/net/meter/impl/MeterManager.java
+++ b/incubator/net/src/main/java/org/onosproject/incubator/net/meter/impl/MeterManager.java
@@ -63,10 +63,10 @@
 /**
  * Provides implementation of the meter service APIs.
  */
-@Component(immediate = true, enabled = true)
+@Component(immediate = true)
 @Service
-public class MeterManager extends AbstractListenerProviderRegistry<MeterEvent, MeterListener,
-        MeterProvider, MeterProviderService>
+public class MeterManager
+        extends AbstractListenerProviderRegistry<MeterEvent, MeterListener, MeterProvider, MeterProviderService>
         implements MeterService, MeterProviderRegistry {
 
     private static final String METERCOUNTERIDENTIFIER = "meter-id-counter-%s";
@@ -89,7 +89,6 @@
 
     @Activate
     public void activate() {
-
         store.setDelegate(delegate);
         eventDispatcher.addSink(MeterEvent.class, listenerRegistry);
 
@@ -113,6 +112,7 @@
     @Deactivate
     public void deactivate() {
         store.unsetDelegate(delegate);
+        eventDispatcher.removeSink(MeterEvent.class);
         log.info("Stopped");
     }