Removing commented out @Property annotations from the drivers, protocols, pipelines and providers.

Change-Id: I4cabc5a53c93b778824c72cebbce0ec49700eade
diff --git a/drivers/bmv2/src/main/java/org/onosproject/drivers/bmv2/ctl/Bmv2PreControllerImpl.java b/drivers/bmv2/src/main/java/org/onosproject/drivers/bmv2/ctl/Bmv2PreControllerImpl.java
index f9661f2..bc0aa47 100644
--- a/drivers/bmv2/src/main/java/org/onosproject/drivers/bmv2/ctl/Bmv2PreControllerImpl.java
+++ b/drivers/bmv2/src/main/java/org/onosproject/drivers/bmv2/ctl/Bmv2PreControllerImpl.java
@@ -50,7 +50,7 @@
 
 import static com.google.common.base.Preconditions.checkNotNull;
 import static java.lang.String.format;
-import static org.onosproject.drivers.bmv2.ctl.OsgiPropertyDefaults.*;
+import static org.onosproject.drivers.bmv2.ctl.OsgiPropertyConstants.*;
 import static org.slf4j.LoggerFactory.getLogger;
 
 /**
@@ -58,9 +58,9 @@
  */
 @Component(immediate = true, service = Bmv2PreController.class,
         property = {
-                "numConnectionRetries:Integer=" + NUM_CONNECTION_RETRIES_DEFAULT,
-                "timeBetweenRetries:Integer=" + TIME_BETWEEN_RETRIES_DEFAULT,
-                "deviceLockWaitingTime:Integer=" + DEVICE_LOCK_WAITING_TIME_IN_SEC_DEFAULT,
+                 NUM_CONNECTION_RETRIES + ":Integer=" + NUM_CONNECTION_RETRIES_DEFAULT,
+                TIME_BETWEEN_RETRIES + ":Integer=" + TIME_BETWEEN_RETRIES_DEFAULT,
+                DEVICE_LOCK_WAITING_TIME_IN_SEC + ":Integer=" + DEVICE_LOCK_WAITING_TIME_IN_SEC_DEFAULT,
         })
 public class Bmv2PreControllerImpl implements Bmv2PreController {
 
@@ -79,14 +79,14 @@
             });
     @Reference(cardinality = ReferenceCardinality.MANDATORY)
     protected ComponentConfigService cfgService;
-    //@Property(name = "numConnectionRetries", intValue = DEFAULT_NUM_CONNECTION_RETRIES,
-    //        label = "Number of connection retries after a network error")
+
+    /** Number of connection retries after a network error. */
     private int numConnectionRetries = NUM_CONNECTION_RETRIES_DEFAULT;
-    //@Property(name = "timeBetweenRetries", intValue = DEFAULT_TIME_BETWEEN_RETRIES,
-    //        label = "Time between retries in milliseconds")
+
+    /** Time between retries in milliseconds. */
     private int timeBetweenRetries = TIME_BETWEEN_RETRIES_DEFAULT;
-    //@Property(name = "deviceLockWaitingTime", intValue = DEVICE_LOCK_WAITING_TIME_IN_SEC,
-    //        label = "Waiting time for a read/write lock in seconds")
+
+    /** Waiting time for a read/write lock in seconds. */
     private int deviceLockWaitingTime = DEVICE_LOCK_WAITING_TIME_IN_SEC_DEFAULT;
 
     @Activate
diff --git a/drivers/bmv2/src/main/java/org/onosproject/drivers/bmv2/ctl/OsgiPropertyDefaults.java b/drivers/bmv2/src/main/java/org/onosproject/drivers/bmv2/ctl/OsgiPropertyConstants.java
similarity index 68%
rename from drivers/bmv2/src/main/java/org/onosproject/drivers/bmv2/ctl/OsgiPropertyDefaults.java
rename to drivers/bmv2/src/main/java/org/onosproject/drivers/bmv2/ctl/OsgiPropertyConstants.java
index 3d63934..1fe6536 100644
--- a/drivers/bmv2/src/main/java/org/onosproject/drivers/bmv2/ctl/OsgiPropertyDefaults.java
+++ b/drivers/bmv2/src/main/java/org/onosproject/drivers/bmv2/ctl/OsgiPropertyConstants.java
@@ -19,11 +19,16 @@
 /**
  * Constants for default values of configurable properties.
  */
-public final class OsgiPropertyDefaults {
+public final class OsgiPropertyConstants {
 
-    private OsgiPropertyDefaults() {}
+    private OsgiPropertyConstants() {}
 
+    public static final String DEVICE_LOCK_WAITING_TIME_IN_SEC = "deviceLockWaitingTime";
     public static final int DEVICE_LOCK_WAITING_TIME_IN_SEC_DEFAULT = 60;
+
+    public static final String NUM_CONNECTION_RETRIES = "numConnectionRetries";
     public static final int NUM_CONNECTION_RETRIES_DEFAULT = 2;
-    public static final int TIME_BETWEEN_RETRIES_DEFAULT = 10;
+
+    public static final String TIME_BETWEEN_RETRIES = "timeBetweenRetries";
+    public static final int TIME_BETWEEN_RETRIES_DEFAULT = 2;
 }
diff --git a/incubator/protobuf/registry/src/main/java/org/onosproject/protobuf/registry/GrpcServiceRegistryImpl.java b/incubator/protobuf/registry/src/main/java/org/onosproject/protobuf/registry/GrpcServiceRegistryImpl.java
index 1e25b84..9935cdb 100644
--- a/incubator/protobuf/registry/src/main/java/org/onosproject/protobuf/registry/GrpcServiceRegistryImpl.java
+++ b/incubator/protobuf/registry/src/main/java/org/onosproject/protobuf/registry/GrpcServiceRegistryImpl.java
@@ -65,8 +65,7 @@
     clients of nonstandard port usage as there is no mechanism available to
     discover the port hosting gRPC services.
      */
-    @Property(name = PORT_PROPERTY_NAME, intValue = DEFAULT_SERVER_PORT,
-             label = "The port number which ONOS will use to host gRPC services.")
+    /** The port number which ONOS will use to host gRPC services. */
     private int listeningPort = DEFAULT_SERVER_PORT;
 
     @Activate
diff --git a/incubator/rpc-grpc/src/main/java/org/onosproject/incubator/rpc/grpc/GrpcRemoteServiceServer.java b/incubator/rpc-grpc/src/main/java/org/onosproject/incubator/rpc/grpc/GrpcRemoteServiceServer.java
index 1d506a2..2bf2081 100644
--- a/incubator/rpc-grpc/src/main/java/org/onosproject/incubator/rpc/grpc/GrpcRemoteServiceServer.java
+++ b/incubator/rpc-grpc/src/main/java/org/onosproject/incubator/rpc/grpc/GrpcRemoteServiceServer.java
@@ -99,9 +99,7 @@
     @Reference(cardinality = ReferenceCardinality.MANDATORY)
     protected LinkProviderRegistry linkProviderRegistry;
 
-
-    @Property(name = "listenPort", intValue = DEFAULT_LISTEN_PORT,
-            label = "Port to listen on")
+    /** Port to listen on */
     protected int listenPort = DEFAULT_LISTEN_PORT;
 
     private Server server;
diff --git a/incubator/store/src/main/java/org/onosproject/incubator/store/virtual/impl/DistributedVirtualFlowRuleStore.java b/incubator/store/src/main/java/org/onosproject/incubator/store/virtual/impl/DistributedVirtualFlowRuleStore.java
index 27ca7f7..61ea506 100644
--- a/incubator/store/src/main/java/org/onosproject/incubator/store/virtual/impl/DistributedVirtualFlowRuleStore.java
+++ b/incubator/store/src/main/java/org/onosproject/incubator/store/virtual/impl/DistributedVirtualFlowRuleStore.java
@@ -94,7 +94,7 @@
 import static com.google.common.base.Strings.isNullOrEmpty;
 import static org.onlab.util.Tools.get;
 import static org.onlab.util.Tools.groupedThreads;
-import static org.onosproject.incubator.store.virtual.impl.OsgiPropertyDefaults.*;
+import static org.onosproject.incubator.store.virtual.impl.OsgiPropertyConstants.*;
 import static org.onosproject.net.flow.FlowRuleEvent.Type.RULE_REMOVED;
 import static org.slf4j.LoggerFactory.getLogger;
 
@@ -105,9 +105,9 @@
 //TODO: support backup and persistent mechanism
 @Component(immediate = true, enabled = false, service = VirtualNetworkFlowRuleStore.class,
         property = {
-                "messageHandlerThreadPoolSize:Integer=" + MESSAGE_HANDLER_THREAD_POOL_SIZE_DEFAULT,
-                "pendingFutureTimeoutMinutes:Integer=" + BACKUP_PERIOD_MILLIS_DEFAULT,
-                "persistenceEnabled:Boolean=" + PERSISTENCE_ENABLED_DEFAULT,
+                MESSAGE_HANDLER_THREAD_POOL_SIZE + ":Integer=" + MESSAGE_HANDLER_THREAD_POOL_SIZE_DEFAULT,
+                BACKUP_PERIOD_MILLIS + ":Integer=" + BACKUP_PERIOD_MILLIS_DEFAULT,
+                PERSISTENCE_ENABLED + ":Boolean=" + PERSISTENCE_ENABLED_DEFAULT,
         })
 
 public class DistributedVirtualFlowRuleStore
@@ -117,7 +117,6 @@
     private final Logger log = getLogger(getClass());
 
     //TODO: confirm this working fine with multiple thread more than 1
-    private static final int MESSAGE_HANDLER_THREAD_POOL_SIZE = 1;
     private static final long FLOW_RULE_STORE_TIMEOUT_MILLIS = 5000;
 
     private static final String FLOW_OP_TOPIC = "virtual-flow-ops-ids";
@@ -134,15 +133,13 @@
     private static final MessageSubject REMOTE_APPLY_COMPLETED
             = new MessageSubject("virtual-peer-apply-completed");
 
-    //@Property(name = "msgHandlerThreadPoolSize", intValue = MESSAGE_HANDLER_THREAD_POOL_SIZE,
-    //        label = "Number of threads in the message handler pool")
+    /** Number of threads in the message handler pool. */
     private int msgHandlerThreadPoolSize = MESSAGE_HANDLER_THREAD_POOL_SIZE_DEFAULT;
 
-    //@Property(name = "backupPeriod", intValue = BACKUP_PERIOD_MILLIS,
-    //        label = "Delay in ms between successive backup runs")
+    /** Delay in ms between successive backup runs. */
     private int backupPeriod = BACKUP_PERIOD_MILLIS_DEFAULT;
-    //@Property(name = "persistenceEnabled", boolValue = false,
-    //        label = "Indicates whether or not changes in the flow table should be persisted to disk.")
+
+    /** Indicates whether or not changes in the flow table should be persisted to disk.. */
     private boolean persistenceEnabled = PERSISTENCE_ENABLED_DEFAULT;
 
     private InternalFlowTable flowTable = new InternalFlowTable();
@@ -240,13 +237,13 @@
         int newPoolSize;
         int newBackupPeriod;
         try {
-            String s = get(properties, "msgHandlerPoolSize");
+            String s = get(properties, MESSAGE_HANDLER_THREAD_POOL_SIZE);
             newPoolSize = isNullOrEmpty(s) ? msgHandlerThreadPoolSize : Integer.parseInt(s.trim());
 
-            s = get(properties, "backupPeriod");
+            s = get(properties, BACKUP_PERIOD_MILLIS);
             newBackupPeriod = isNullOrEmpty(s) ? backupPeriod : Integer.parseInt(s.trim());
         } catch (NumberFormatException | ClassCastException e) {
-            newPoolSize = MESSAGE_HANDLER_THREAD_POOL_SIZE;
+            newPoolSize = MESSAGE_HANDLER_THREAD_POOL_SIZE_DEFAULT;
             newBackupPeriod = BACKUP_PERIOD_MILLIS_DEFAULT;
         }
 
diff --git a/incubator/store/src/main/java/org/onosproject/incubator/store/virtual/impl/DistributedVirtualPacketStore.java b/incubator/store/src/main/java/org/onosproject/incubator/store/virtual/impl/DistributedVirtualPacketStore.java
index c1a1210..cbf3860 100644
--- a/incubator/store/src/main/java/org/onosproject/incubator/store/virtual/impl/DistributedVirtualPacketStore.java
+++ b/incubator/store/src/main/java/org/onosproject/incubator/store/virtual/impl/DistributedVirtualPacketStore.java
@@ -63,7 +63,8 @@
 import static java.util.concurrent.Executors.newFixedThreadPool;
 import static org.onlab.util.Tools.get;
 import static org.onlab.util.Tools.groupedThreads;
-import static org.onosproject.incubator.store.virtual.impl.OsgiPropertyDefaults.MESSAGE_HANDLER_THREAD_POOL_SIZE_DEFAULT;
+import static org.onosproject.incubator.store.virtual.impl.OsgiPropertyConstants.MESSAGE_HANDLER_THREAD_POOL_SIZE;
+import static org.onosproject.incubator.store.virtual.impl.OsgiPropertyConstants.MESSAGE_HANDLER_THREAD_POOL_SIZE_DEFAULT;
 import static org.onosproject.net.packet.PacketEvent.Type.EMIT;
 import static org.slf4j.LoggerFactory.getLogger;
 
@@ -73,7 +74,7 @@
  */
 @Component(immediate = true, enabled = false, service = VirtualNetworkPacketStore.class,
         property = {
-                 "messageHandlerThreadPoolSize:Integer=" + MESSAGE_HANDLER_THREAD_POOL_SIZE_DEFAULT,
+                 MESSAGE_HANDLER_THREAD_POOL_SIZE + ":Integer=" + MESSAGE_HANDLER_THREAD_POOL_SIZE_DEFAULT,
         })
 public class DistributedVirtualPacketStore
         extends AbstractVirtualStore<PacketEvent, PacketStoreDelegate>
@@ -107,8 +108,7 @@
 
     private ExecutorService messageHandlingExecutor;
 
-    //@Property(name = "messageHandlerThreadPoolSize", intValue = DEFAULT_MESSAGE_HANDLER_THREAD_POOL_SIZE,
-    //        label = "Size of thread pool to assign message handler")
+    /** Size of thread pool to assign message handler. */
     private static int messageHandlerThreadPoolSize = MESSAGE_HANDLER_THREAD_POOL_SIZE_DEFAULT;
 
     @Activate
@@ -149,7 +149,7 @@
         int newMessageHandlerThreadPoolSize;
 
         try {
-            String s = get(properties, "messageHandlerThreadPoolSize");
+            String s = get(properties, MESSAGE_HANDLER_THREAD_POOL_SIZE);
 
             newMessageHandlerThreadPoolSize =
                     isNullOrEmpty(s) ? messageHandlerThreadPoolSize : Integer.parseInt(s.trim());
diff --git a/incubator/store/src/main/java/org/onosproject/incubator/store/virtual/impl/OsgiPropertyDefaults.java b/incubator/store/src/main/java/org/onosproject/incubator/store/virtual/impl/OsgiPropertyConstants.java
similarity index 70%
rename from incubator/store/src/main/java/org/onosproject/incubator/store/virtual/impl/OsgiPropertyDefaults.java
rename to incubator/store/src/main/java/org/onosproject/incubator/store/virtual/impl/OsgiPropertyConstants.java
index 765903a..4670429 100644
--- a/incubator/store/src/main/java/org/onosproject/incubator/store/virtual/impl/OsgiPropertyDefaults.java
+++ b/incubator/store/src/main/java/org/onosproject/incubator/store/virtual/impl/OsgiPropertyConstants.java
@@ -19,13 +19,20 @@
 /**
  * Constants for default values of configurable properties.
  */
-public final class OsgiPropertyDefaults {
+public final class OsgiPropertyConstants {
 
-    private OsgiPropertyDefaults() {}
+    private OsgiPropertyConstants() {}
 
+    public static final String MESSAGE_HANDLER_THREAD_POOL_SIZE = "messageHandlerThreadPoolSize";
     public static final int MESSAGE_HANDLER_THREAD_POOL_SIZE_DEFAULT = 4;
+
+    public static final String BACKUP_PERIOD_MILLIS = "backupPeriod";
     public static final int BACKUP_PERIOD_MILLIS_DEFAULT = 2000;
+
+    public static final String PERSISTENCE_ENABLED = "persistenceEnabled";
     public static final boolean PERSISTENCE_ENABLED_DEFAULT = false;
+
+    public static final String PENDING_FUTURE_TIMEOUT_MINUTES = "pendingFutureTimeoutMinutes";
     public static final int PENDING_FUTURE_TIMEOUT_MINUTES_DEFAULT = 5;
 
 }
diff --git a/incubator/store/src/main/java/org/onosproject/incubator/store/virtual/impl/SimpleVirtualFlowRuleStore.java b/incubator/store/src/main/java/org/onosproject/incubator/store/virtual/impl/SimpleVirtualFlowRuleStore.java
index c2edd81..ab2c792 100644
--- a/incubator/store/src/main/java/org/onosproject/incubator/store/virtual/impl/SimpleVirtualFlowRuleStore.java
+++ b/incubator/store/src/main/java/org/onosproject/incubator/store/virtual/impl/SimpleVirtualFlowRuleStore.java
@@ -62,7 +62,8 @@
 import java.util.concurrent.TimeoutException;
 import java.util.concurrent.atomic.AtomicInteger;
 
-import static org.onosproject.incubator.store.virtual.impl.OsgiPropertyDefaults.PENDING_FUTURE_TIMEOUT_MINUTES_DEFAULT;
+import static org.onosproject.incubator.store.virtual.impl.OsgiPropertyConstants.PENDING_FUTURE_TIMEOUT_MINUTES;
+import static org.onosproject.incubator.store.virtual.impl.OsgiPropertyConstants.PENDING_FUTURE_TIMEOUT_MINUTES_DEFAULT;
 import static org.onosproject.net.flow.FlowRuleEvent.Type.RULE_REMOVED;
 import static org.slf4j.LoggerFactory.getLogger;
 
@@ -74,7 +75,7 @@
 
 @Component(immediate = true, service = VirtualNetworkFlowRuleStore.class,
         property = {
-                 "pendingFutureTimeoutMinutes:Integer=" + PENDING_FUTURE_TIMEOUT_MINUTES_DEFAULT,
+                 PENDING_FUTURE_TIMEOUT_MINUTES + ":Integer=" + PENDING_FUTURE_TIMEOUT_MINUTES_DEFAULT,
         })
 public class SimpleVirtualFlowRuleStore
         extends AbstractVirtualStore<FlowRuleBatchEvent, FlowRuleStoreDelegate>
@@ -92,8 +93,7 @@
 
     private final AtomicInteger localBatchIdGen = new AtomicInteger();
 
-    //@Property(name = "pendingFutureTimeoutMinutes", intValue = DEFAULT_PENDING_FUTURE_TIMEOUT_MINUTES,
-    //        label = "Expiration time after an entry is created that it should be automatically removed")
+    /** Expiration time after an entry is created that it should be automatically removed. */
     private int pendingFutureTimeoutMinutes = PENDING_FUTURE_TIMEOUT_MINUTES_DEFAULT;
 
     private Cache<Integer, SettableFuture<CompletedBatchOperation>> pendingFutures =
diff --git a/protocols/grpc/ctl/src/main/java/org/onosproject/grpc/ctl/GrpcControllerImpl.java b/protocols/grpc/ctl/src/main/java/org/onosproject/grpc/ctl/GrpcControllerImpl.java
index 232885c..7d038ce 100644
--- a/protocols/grpc/ctl/src/main/java/org/onosproject/grpc/ctl/GrpcControllerImpl.java
+++ b/protocols/grpc/ctl/src/main/java/org/onosproject/grpc/ctl/GrpcControllerImpl.java
@@ -60,11 +60,16 @@
 import java.util.concurrent.locks.Lock;
 
 import static com.google.common.base.Preconditions.checkNotNull;
+import static org.onosproject.grpc.ctl.OsgiPropertyConstants.ENABLE_MESSAGE_LOG;
+import static org.onosproject.grpc.ctl.OsgiPropertyConstants.ENABLE_MESSAGE_LOG_DEFAULT;
 
 /**
  * Default implementation of the GrpcController.
  */
-@Component(immediate = true, service = GrpcController.class)
+@Component(immediate = true, service = GrpcController.class,
+        property = {
+            ENABLE_MESSAGE_LOG + ":Boolean=" + ENABLE_MESSAGE_LOG_DEFAULT,
+        })
 public class GrpcControllerImpl implements GrpcController {
 
     private  static final String SET_FORWARDING_PIPELINE_CONFIG_METHOD = "p4.P4Runtime/SetForwardingPipelineConfig";
@@ -75,8 +80,8 @@
     // Hint: set to true to log all gRPC messages received/sent on all channels
     // Does not enable log on existing channels
     private static final boolean DEFAULT_LOG_LEVEL = false;
-    //@Property(name = "enableMessageLog", boolValue =  DEFAULT_LOG_LEVEL,
-    //        label = "Indicates whether to log all gRPC messages sent and received on all channels")
+
+    /** Indicates whether to log all gRPC messages sent and received on all channels. */
     public static boolean enableMessageLog = DEFAULT_LOG_LEVEL;
 
     private final Logger log = LoggerFactory.getLogger(getClass());
@@ -95,7 +100,7 @@
     public void modified(ComponentContext context) {
         if (context != null) {
             Dictionary<?, ?> properties = context.getProperties();
-            enableMessageLog = Tools.isPropertyEnabled(properties, "enableMessageLog",
+            enableMessageLog = Tools.isPropertyEnabled(properties, ENABLE_MESSAGE_LOG,
                     DEFAULT_LOG_LEVEL);
             log.info("Configured. Log of gRPC messages is {}", enableMessageLog ? "enabled" : "disabled");
         }
diff --git a/providers/link/src/main/java/org/onosproject/provider/linkdiscovery/impl/OsgiPropertyDefaults.java b/protocols/grpc/ctl/src/main/java/org/onosproject/grpc/ctl/OsgiPropertyConstants.java
similarity index 72%
copy from providers/link/src/main/java/org/onosproject/provider/linkdiscovery/impl/OsgiPropertyDefaults.java
copy to protocols/grpc/ctl/src/main/java/org/onosproject/grpc/ctl/OsgiPropertyConstants.java
index ba85b86..576d1da 100644
--- a/providers/link/src/main/java/org/onosproject/provider/linkdiscovery/impl/OsgiPropertyDefaults.java
+++ b/protocols/grpc/ctl/src/main/java/org/onosproject/grpc/ctl/OsgiPropertyConstants.java
@@ -14,16 +14,16 @@
  * limitations under the License.
  */
 
-package org.onosproject.provider.linkdiscovery.impl;
+package org.onosproject.grpc.ctl;
 
 /**
  * Constants for default values of configurable properties.
  */
-public final class OsgiPropertyDefaults {
+public final class OsgiPropertyConstants {
 
-    private OsgiPropertyDefaults() {}
+    private OsgiPropertyConstants() {}
 
-    public static final int POLL_DELAY_SECONDS_DEFAULT = 20;
-    public static final int POLL_FREQUENCY_SECONDS_DEFAULT = 10;
+    public static final String ENABLE_MESSAGE_LOG = "enableMessageLog";
+    public static final boolean ENABLE_MESSAGE_LOG_DEFAULT = false;
 
 }
diff --git a/protocols/lisp/ctl/src/main/java/org/onosproject/lisp/ctl/impl/LispControllerImpl.java b/protocols/lisp/ctl/src/main/java/org/onosproject/lisp/ctl/impl/LispControllerImpl.java
index 779e6c2..9fd5200 100644
--- a/protocols/lisp/ctl/src/main/java/org/onosproject/lisp/ctl/impl/LispControllerImpl.java
+++ b/protocols/lisp/ctl/src/main/java/org/onosproject/lisp/ctl/impl/LispControllerImpl.java
@@ -51,42 +51,45 @@
 import static org.onlab.util.Tools.get;
 import static org.onlab.util.Tools.getIntegerProperty;
 import static org.onlab.util.Tools.groupedThreads;
+import static org.onosproject.lisp.ctl.impl.OsgiPropertyConstants.*;
 import static org.slf4j.LoggerFactory.getLogger;
 
 /**
  * LISP controller initiation class.
  */
-@Component(immediate = true, service = LispController.class)
+@Component(immediate = true, service = LispController.class,
+        property = {
+                LISP_AUTH_KEY + "=" + LISP_AUTH_KEY_DEFAULT,
+                LISP_AUTH_KEY_ID + ":Integer=" + LISP_AUTH_KEY_ID_DEFAULT,
+                ENABLE_SMR + ":Boolean=" + ENABLE_SMR_DEFAULT,
+        })
 public class LispControllerImpl implements LispController {
 
     private static final String APP_ID = "org.onosproject.lisp-base";
 
     private static final Logger log = getLogger(LispControllerImpl.class);
 
-    private static final String DEFAULT_LISP_AUTH_KEY = "onos";
-    private static final short DEFAULT_LISP_AUTH_KEY_ID = 1;
-
     @Reference(cardinality = ReferenceCardinality.MANDATORY)
     protected CoreService coreService;
 
     @Reference(cardinality = ReferenceCardinality.MANDATORY)
     protected ComponentConfigService cfgService;
 
-    //@Property(name = "lispAuthKey", value = DEFAULT_LISP_AUTH_KEY,
-    //        label = "Authentication key which is used to calculate authentication " +
-    //                "data for LISP control message; default value is onos")
-    private String lispAuthKey = DEFAULT_LISP_AUTH_KEY;
+    /**
+     * Authentication key which is used to calculate authentication data for
+     * LISP control message; default value is onos.
+     */
+    private String lispAuthKey = LISP_AUTH_KEY_DEFAULT;
 
-    //@Property(name = "lispAuthKeyId", intValue = DEFAULT_LISP_AUTH_KEY_ID,
-    //        label = "Authentication key id which denotes the authentication method " +
-    //                "that ONOS uses to calculate the authentication data; " +
-    //                "1 denotes HMAC SHA1 encryption, 2 denotes HMAC SHA256 encryption; " +
-    //                "default value is 1")
-    private int lispAuthKeyId = DEFAULT_LISP_AUTH_KEY_ID;
+    /**
+     * Authentication key id which denotes the authentication method
+     * that ONOS uses to calculate the authentication data;
+     * 1 denotes HMAC SHA1 encryption, 2 denotes HMAC SHA256 encryption;
+     * default value is 1.
+     */
+    private int lispAuthKeyId = LISP_AUTH_KEY_ID_DEFAULT;
 
-    //@Property(name = "enableSmr", boolValue = false,
-    //        label = "Enable to send SMR(Solicit Map Request) by map server; " +
-    //                "By default SMR is not activated")
+    /** Enable to send SMR(Solicit Map Request) by map server; by default SMR is not activated. */
     private boolean enableSmr = false;
 
     ExecutorService executorMessages =
@@ -145,8 +148,8 @@
      * @param properties a set of properties that contained in component context
      */
     private void initAuthConfig(Dictionary<?, ?> properties) {
-        authConfig.updateLispAuthKey(get(properties, "lispAuthKey"));
-        authConfig.updateLispAuthKeyId(getIntegerProperty(properties, "lispAuthKeyId"));
+        authConfig.updateLispAuthKey(get(properties, LISP_AUTH_KEY));
+        authConfig.updateLispAuthKeyId(getIntegerProperty(properties, LISP_AUTH_KEY_ID));
     }
 
     /**
@@ -157,14 +160,14 @@
     private void readComponentConfiguration(ComponentContext context) {
         Dictionary<?, ?> properties = context.getProperties();
 
-        String lispAuthKeyStr = Tools.get(properties, "lispAuthKey");
-        lispAuthKey = lispAuthKeyStr != null ? lispAuthKeyStr : DEFAULT_LISP_AUTH_KEY;
+        String lispAuthKeyStr = Tools.get(properties, LISP_AUTH_KEY);
+        lispAuthKey = lispAuthKeyStr != null ? lispAuthKeyStr : LISP_AUTH_KEY_DEFAULT;
         authConfig.updateLispAuthKey(lispAuthKey);
         log.info("Configured. LISP authentication key is {}", lispAuthKey);
 
-        Integer lispAuthMethodInt = Tools.getIntegerProperty(properties, "lispAuthKeyId");
+        Integer lispAuthMethodInt = Tools.getIntegerProperty(properties, LISP_AUTH_KEY_ID);
         if (lispAuthMethodInt == null) {
-            lispAuthKeyId = DEFAULT_LISP_AUTH_KEY_ID;
+            lispAuthKeyId = LISP_AUTH_KEY_ID_DEFAULT;
             log.info("LISP authentication method is not configured, default value is {}", lispAuthKeyId);
         } else {
             lispAuthKeyId = lispAuthMethodInt;
@@ -172,14 +175,14 @@
         }
         authConfig.updateLispAuthKeyId(lispAuthKeyId);
 
-        Boolean enableSmr = Tools.isPropertyEnabled(properties, "enableSmr");
+        Boolean enableSmr = Tools.isPropertyEnabled(properties, ENABLE_SMR);
         if (enableSmr == null) {
             log.info("Enable SMR is not configured, " +
-                    "using current value of {}", this.enableSmr);
+                             "using current value of {}", this.enableSmr);
         } else {
             this.enableSmr = enableSmr;
             log.info("Configured. Sending SMR through map server is {}",
-                    this.enableSmr ? "enabled" : "disabled");
+                     this.enableSmr ? "enabled" : "disabled");
         }
     }
 
@@ -191,9 +194,9 @@
     @Override
     public Iterable<LispRouter> getSubscribedRouters() {
         return connectedRouters.entrySet()
-                                .stream()
-                                .filter(e -> e.getValue().isSubscribed())
-                                .collect(toConcurrentMap(Map.Entry::getKey,
+                .stream()
+                .filter(e -> e.getValue().isSubscribed())
+                .collect(toConcurrentMap(Map.Entry::getKey,
                                          Map.Entry::getValue)).values();
     }
 
@@ -269,7 +272,7 @@
 
             if (connectedRouters.get(routerId) != null) {
                 log.warn("Trying to add connectedRouter but found a previous " +
-                          "value for routerId: {}", routerId);
+                                 "value for routerId: {}", routerId);
                 return false;
             } else {
                 log.info("Added router {}", routerId);
@@ -286,7 +289,7 @@
 
             if (connectedRouters.get(routerId) == null) {
                 log.error("Trying to remove router {} from connectedRouter " +
-                          "list but no element was found", routerId);
+                                  "list but no element was found", routerId);
             } else {
                 log.info("Removed router {}", routerId);
                 connectedRouters.remove(routerId);
@@ -353,7 +356,7 @@
         private final boolean isIncoming;
 
         LispMessageHandler(LispRouterId routerId,
-                                  LispMessage message, boolean isIncoming) {
+                           LispMessage message, boolean isIncoming) {
             this.routerId = routerId;
             this.message = message;
             this.isIncoming = isIncoming;
@@ -375,10 +378,10 @@
      * LISP incoming message handler.
      */
     protected final class LispIncomingMessageHandler
-                    extends LispMessageHandler implements Runnable {
+            extends LispMessageHandler implements Runnable {
 
         LispIncomingMessageHandler(LispRouterId routerId,
-                                          LispMessage message) {
+                                   LispMessage message) {
             super(routerId, message, true);
         }
     }
@@ -387,10 +390,10 @@
      * LISP outgoing message handler.
      */
     protected final class LispOutgoingMessageHandler
-                    extends LispMessageHandler implements Runnable {
+            extends LispMessageHandler implements Runnable {
 
         LispOutgoingMessageHandler(LispRouterId routerId,
-                                          LispMessage message) {
+                                   LispMessage message) {
             super(routerId, message, false);
         }
     }
diff --git a/protocols/lisp/ctl/src/main/java/org/onosproject/lisp/ctl/impl/OsgiPropertyConstants.java b/protocols/lisp/ctl/src/main/java/org/onosproject/lisp/ctl/impl/OsgiPropertyConstants.java
new file mode 100644
index 0000000..9295734
--- /dev/null
+++ b/protocols/lisp/ctl/src/main/java/org/onosproject/lisp/ctl/impl/OsgiPropertyConstants.java
@@ -0,0 +1,35 @@
+/*
+ * Copyright 2018-present Open Networking Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.onosproject.lisp.ctl.impl;
+
+/**
+ * Constants for default values of configurable properties.
+ */
+public final class OsgiPropertyConstants {
+
+    private OsgiPropertyConstants() {}
+
+    public static final String LISP_AUTH_KEY = "lispAuthKey";
+    public static final String LISP_AUTH_KEY_DEFAULT = "onos";
+
+    public static final String LISP_AUTH_KEY_ID = "lispAuthKeyId";
+    public static final int LISP_AUTH_KEY_ID_DEFAULT = 1;
+
+    public static final String ENABLE_SMR = "enableSmr";
+    public static final boolean ENABLE_SMR_DEFAULT = false;
+
+}
diff --git a/protocols/netconf/ctl/src/main/java/org/onosproject/netconf/ctl/impl/NetconfControllerImpl.java b/protocols/netconf/ctl/src/main/java/org/onosproject/netconf/ctl/impl/NetconfControllerImpl.java
index e18714c..0395dee 100644
--- a/protocols/netconf/ctl/src/main/java/org/onosproject/netconf/ctl/impl/NetconfControllerImpl.java
+++ b/protocols/netconf/ctl/src/main/java/org/onosproject/netconf/ctl/impl/NetconfControllerImpl.java
@@ -61,39 +61,33 @@
 import static org.onlab.util.Tools.get;
 import static org.onlab.util.Tools.getIntegerProperty;
 import static org.onlab.util.Tools.groupedThreads;
+import static org.onosproject.netconf.ctl.impl.OsgiPropertyConstants.*;
 
 /**
  * The implementation of NetconfController.
  */
-@Component(immediate = true, service = NetconfController.class)
+@Component(immediate = true, service = NetconfController.class,
+        property = {
+                NETCONF_CONNECT_TIMEOUT + ":Integer=" + NETCONF_CONNECT_TIMEOUT_DEFAULT,
+                NETCONF_REPLY_TIMEOUT + ":Integer=" + NETCONF_REPLY_TIMEOUT_DEFAULT,
+                NETCONF_IDLE_TIMEOUT + ":Integer=" + NETCONF_IDLE_TIMEOUT_DEFAULT,
+                SSH_LIBRARY + "=" + SSH_LIBRARY_DEFAULT,
+        })
 public class NetconfControllerImpl implements NetconfController {
 
-    protected static final int DEFAULT_CONNECT_TIMEOUT_SECONDS = 5;
-    private static final String PROP_NETCONF_CONNECT_TIMEOUT = "netconfConnectTimeout";
-    // FIXME @Property should not be static
-    //@Property(name = PROP_NETCONF_CONNECT_TIMEOUT, intValue = DEFAULT_CONNECT_TIMEOUT_SECONDS,
-    //        label = "Time (in seconds) to wait for a NETCONF connect.")
-    protected static int netconfConnectTimeout = DEFAULT_CONNECT_TIMEOUT_SECONDS;
+    /** Time (in seconds) to wait for a NETCONF connect. */
+    protected static int netconfConnectTimeout = NETCONF_CONNECT_TIMEOUT_DEFAULT;
 
-    private static final String PROP_NETCONF_REPLY_TIMEOUT = "netconfReplyTimeout";
-    protected static final int DEFAULT_REPLY_TIMEOUT_SECONDS = 5;
-    // FIXME @Property should not be static
-    //@Property(name = PROP_NETCONF_REPLY_TIMEOUT, intValue = DEFAULT_REPLY_TIMEOUT_SECONDS,
-    //        label = "Time (in seconds) waiting for a NetConf reply")
-    protected static int netconfReplyTimeout = DEFAULT_REPLY_TIMEOUT_SECONDS;
+    /** Time (in seconds) waiting for a NetConf reply. */
+    protected static int netconfReplyTimeout = NETCONF_REPLY_TIMEOUT_DEFAULT;
 
-    private static final String PROP_NETCONF_IDLE_TIMEOUT = "netconfIdleTimeout";
-    protected static final int DEFAULT_IDLE_TIMEOUT_SECONDS = 300;
-    // FIXME @Property should not be static
-    //@Property(name = PROP_NETCONF_IDLE_TIMEOUT, intValue = DEFAULT_IDLE_TIMEOUT_SECONDS,
-    //        label = "Time (in seconds) SSH session will close if no traffic seen")
-    protected static int netconfIdleTimeout = DEFAULT_IDLE_TIMEOUT_SECONDS;
+    /** Time (in seconds) SSH session will close if no traffic seen. */
+    protected static int netconfIdleTimeout = NETCONF_IDLE_TIMEOUT_DEFAULT;
 
-    private static final String SSH_LIBRARY = "sshLibrary";
-    private static final String APACHE_MINA_STR = "apache-mina";
-    //@Property(name = SSH_LIBRARY, value = APACHE_MINA_STR,
-    //        label = "Ssh client library to use")
-    protected NetconfSshClientLib sshLibrary = NetconfSshClientLib.APACHE_MINA;
+    /** SSH client library to use. */
+    protected static String sshLibrary = SSH_LIBRARY_DEFAULT;
+
+    protected NetconfSshClientLib sshClientLib = NetconfSshClientLib.APACHE_MINA;
 
     @Reference(cardinality = ReferenceCardinality.MANDATORY)
     protected ComponentConfigService cfgService;
@@ -115,7 +109,7 @@
     private final NetconfDeviceOutputEventListener downListener = new DeviceDownEventListener();
 
     protected Set<NetconfDeviceListener> netconfDeviceListeners = new CopyOnWriteArraySet<>();
-    protected NetconfDeviceFactory deviceFactory = (deviceInfo) -> new DefaultNetconfDevice(deviceInfo);
+    protected NetconfDeviceFactory deviceFactory = DefaultNetconfDevice::new;
 
     protected final ExecutorService executor =
             Executors.newCachedThreadPool(groupedThreads("onos/netconfdevicecontroller",
@@ -145,10 +139,11 @@
     @Modified
     public void modified(ComponentContext context) {
         if (context == null) {
-            netconfReplyTimeout = DEFAULT_REPLY_TIMEOUT_SECONDS;
-            netconfConnectTimeout = DEFAULT_CONNECT_TIMEOUT_SECONDS;
-            netconfIdleTimeout = DEFAULT_IDLE_TIMEOUT_SECONDS;
-            sshLibrary = NetconfSshClientLib.APACHE_MINA;
+            netconfReplyTimeout = NETCONF_REPLY_TIMEOUT_DEFAULT;
+            netconfConnectTimeout = NETCONF_CONNECT_TIMEOUT_DEFAULT;
+            netconfIdleTimeout = NETCONF_IDLE_TIMEOUT_DEFAULT;
+            sshLibrary = SSH_LIBRARY_DEFAULT;
+            sshClientLib = NetconfSshClientLib.APACHE_MINA;
             log.info("No component configuration");
             return;
         }
@@ -158,11 +153,11 @@
         String newSshLibrary;
 
         int newNetconfReplyTimeout = getIntegerProperty(
-                properties, PROP_NETCONF_REPLY_TIMEOUT, netconfReplyTimeout);
+                properties, NETCONF_REPLY_TIMEOUT, netconfReplyTimeout);
         int newNetconfConnectTimeout = getIntegerProperty(
-                properties, PROP_NETCONF_CONNECT_TIMEOUT, netconfConnectTimeout);
+                properties, NETCONF_CONNECT_TIMEOUT, netconfConnectTimeout);
         int newNetconfIdleTimeout = getIntegerProperty(
-                properties, PROP_NETCONF_IDLE_TIMEOUT, netconfIdleTimeout);
+                properties, NETCONF_IDLE_TIMEOUT, netconfIdleTimeout);
 
         newSshLibrary = get(properties, SSH_LIBRARY);
 
@@ -181,12 +176,13 @@
         netconfConnectTimeout = newNetconfConnectTimeout;
         netconfIdleTimeout = newNetconfIdleTimeout;
         if (newSshLibrary != null) {
-            sshLibrary = NetconfSshClientLib.getEnum(newSshLibrary);
+            sshLibrary = newSshLibrary;
+            sshClientLib = NetconfSshClientLib.getEnum(newSshLibrary);
         }
         log.info("Settings: {} = {}, {} = {}, {} = {}, {} = {}",
-                 PROP_NETCONF_REPLY_TIMEOUT, netconfReplyTimeout,
-                 PROP_NETCONF_CONNECT_TIMEOUT, netconfConnectTimeout,
-                 PROP_NETCONF_IDLE_TIMEOUT, netconfIdleTimeout,
+                 NETCONF_REPLY_TIMEOUT, netconfReplyTimeout,
+                 NETCONF_CONNECT_TIMEOUT, netconfConnectTimeout,
+                 NETCONF_IDLE_TIMEOUT, netconfIdleTimeout,
                  SSH_LIBRARY, sshLibrary);
     }
 
diff --git a/protocols/netconf/ctl/src/main/java/org/onosproject/netconf/ctl/impl/OsgiPropertyConstants.java b/protocols/netconf/ctl/src/main/java/org/onosproject/netconf/ctl/impl/OsgiPropertyConstants.java
new file mode 100644
index 0000000..6fcdcfd
--- /dev/null
+++ b/protocols/netconf/ctl/src/main/java/org/onosproject/netconf/ctl/impl/OsgiPropertyConstants.java
@@ -0,0 +1,37 @@
+/*
+ * Copyright 2018-present Open Networking Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.onosproject.netconf.ctl.impl;
+
+/**
+ * Constants for default values of configurable properties.
+ */
+public final class OsgiPropertyConstants {
+
+    private OsgiPropertyConstants() {}
+
+    public static final String NETCONF_CONNECT_TIMEOUT = "netconfConnectTimeout";
+    public static final int NETCONF_CONNECT_TIMEOUT_DEFAULT = 5;
+
+    public static final String NETCONF_REPLY_TIMEOUT = "netconfReplyTimeout";
+    public static final int NETCONF_REPLY_TIMEOUT_DEFAULT = 5;
+
+    public static final String NETCONF_IDLE_TIMEOUT = "netconfIdleTimeout";
+    public static final int NETCONF_IDLE_TIMEOUT_DEFAULT = 300;
+
+    public static final String SSH_LIBRARY = "sshLibrary";
+    public static final String SSH_LIBRARY_DEFAULT = "apache-mina";
+}
diff --git a/protocols/netconf/ctl/src/test/java/org/onosproject/netconf/ctl/impl/NetconfControllerImplTest.java b/protocols/netconf/ctl/src/test/java/org/onosproject/netconf/ctl/impl/NetconfControllerImplTest.java
index 459559c..44011f1 100644
--- a/protocols/netconf/ctl/src/test/java/org/onosproject/netconf/ctl/impl/NetconfControllerImplTest.java
+++ b/protocols/netconf/ctl/src/test/java/org/onosproject/netconf/ctl/impl/NetconfControllerImplTest.java
@@ -58,6 +58,9 @@
 
 import static org.hamcrest.Matchers.*;
 import static org.junit.Assert.*;
+import static org.onosproject.netconf.ctl.impl.OsgiPropertyConstants.NETCONF_CONNECT_TIMEOUT_DEFAULT;
+import static org.onosproject.netconf.ctl.impl.OsgiPropertyConstants.NETCONF_IDLE_TIMEOUT_DEFAULT;
+import static org.onosproject.netconf.ctl.impl.OsgiPropertyConstants.NETCONF_REPLY_TIMEOUT_DEFAULT;
 
 /**
  * Unit tests for the Netconf controller implementation test.
@@ -125,9 +128,9 @@
         ctrl.deviceService = deviceService;
         ctrl.deviceKeyService = deviceKeyService;
         ctrl.netCfgService = netCfgService;
-        NetconfControllerImpl.netconfConnectTimeout = NetconfControllerImpl.DEFAULT_CONNECT_TIMEOUT_SECONDS;
-        NetconfControllerImpl.netconfIdleTimeout = NetconfControllerImpl.DEFAULT_IDLE_TIMEOUT_SECONDS;
-        NetconfControllerImpl.netconfReplyTimeout = NetconfControllerImpl.DEFAULT_REPLY_TIMEOUT_SECONDS;
+        NetconfControllerImpl.netconfConnectTimeout = NETCONF_CONNECT_TIMEOUT_DEFAULT;
+        NetconfControllerImpl.netconfIdleTimeout = NETCONF_IDLE_TIMEOUT_DEFAULT;
+        NetconfControllerImpl.netconfReplyTimeout = NETCONF_REPLY_TIMEOUT_DEFAULT;
 
         //Creating mock devices
         deviceInfo1 = new NetconfDeviceInfo("device1", "001", IpAddress.valueOf(DEVICE_1_IP), DEVICE_1_PORT);
@@ -183,9 +186,9 @@
     public void tearDown() {
         ctrl.deactivate();
         // resetting static variables..
-        NetconfControllerImpl.netconfConnectTimeout = NetconfControllerImpl.DEFAULT_CONNECT_TIMEOUT_SECONDS;
-        NetconfControllerImpl.netconfIdleTimeout = NetconfControllerImpl.DEFAULT_IDLE_TIMEOUT_SECONDS;
-        NetconfControllerImpl.netconfReplyTimeout = NetconfControllerImpl.DEFAULT_REPLY_TIMEOUT_SECONDS;
+        NetconfControllerImpl.netconfConnectTimeout = NETCONF_CONNECT_TIMEOUT_DEFAULT;
+        NetconfControllerImpl.netconfIdleTimeout = NETCONF_IDLE_TIMEOUT_DEFAULT;
+        NetconfControllerImpl.netconfReplyTimeout = NETCONF_REPLY_TIMEOUT_DEFAULT;
     }
 
     /**
diff --git a/protocols/openflow/ctl/src/main/java/org/onosproject/openflow/controller/impl/OpenFlowControllerImpl.java b/protocols/openflow/ctl/src/main/java/org/onosproject/openflow/controller/impl/OpenFlowControllerImpl.java
index e3d16da..2d5213d 100644
--- a/protocols/openflow/ctl/src/main/java/org/onosproject/openflow/controller/impl/OpenFlowControllerImpl.java
+++ b/protocols/openflow/ctl/src/main/java/org/onosproject/openflow/controller/impl/OpenFlowControllerImpl.java
@@ -125,33 +125,26 @@
     @Reference(cardinality = ReferenceCardinality.MANDATORY)
     protected NetworkConfigRegistry netCfgService;
 
-    //@Property(name = "openflowPorts", value = DEFAULT_OFPORT,
-    //        label = "Port numbers (comma separated) used by OpenFlow protocol; default is 6633,6653")
-    //private String openflowPortsValue = OFPORTS_DEFAULT;
+    /** Port numbers (comma separated) used by OpenFlow protocol; default is 6633,6653. */
+    private String openflowPortsValue = OFPORTS_DEFAULT;
 
-    //@Property(name = "workerThreads", intValue = DEFAULT_WORKER_THREADS,
-    //        label = "Number of controller worker threads")
-    //private int workerThreads = DEFAULT_WORKER_THREADS;
+    /** Number of controller worker threads. */
+    private int workerThreads = WORKER_THREADS_DEFAULT;
 
-    //@Property(name = "tlsMode", value = "",
-    //          label = "TLS mode for OpenFlow channel; options are: disabled [default], enabled, strict")
-    //private String tlsModeString;
+      /** TLS mode for OpenFlow channel; options are: disabled [default], enabled, strict. */
+    private String tlsModeString;
 
-    //@Property(name = "keyStore", value = "",
-    //        label = "File path to key store for TLS connections")
-    //private String keyStore;
+    /** File path to key store for TLS connections. */
+    private String keyStore;
 
-    //@Property(name = "keyStorePassword", value = "",
-    //        label = "Key store password")
-    //private String keyStorePassword;
+    /** Key store password. */
+    private String keyStorePassword;
 
-    //@Property(name = "trustStore", value = "",
-    //        label = "File path to trust store for TLS connections")
-    //private String trustStore;
+    /** File path to trust store for TLS connections. */
+    private String trustStore;
 
-    //@Property(name = "trustStorePassword", value = "",
-    //        label = "Trust store password")
-    //private String trustStorePassword;
+    /** Trust store password. */
+    private String trustStorePassword;
 
     protected ExecutorService executorMsgs =
         Executors.newFixedThreadPool(32, groupedThreads("onos/of", "event-stats-%d", log));
diff --git a/protocols/openflow/ctl/src/main/java/org/onosproject/openflow/controller/impl/OsgiPropertyConstants.java b/protocols/openflow/ctl/src/main/java/org/onosproject/openflow/controller/impl/OsgiPropertyConstants.java
index 186b85e..a152239 100644
--- a/protocols/openflow/ctl/src/main/java/org/onosproject/openflow/controller/impl/OsgiPropertyConstants.java
+++ b/protocols/openflow/ctl/src/main/java/org/onosproject/openflow/controller/impl/OsgiPropertyConstants.java
@@ -25,38 +25,24 @@
     private OsgiPropertyConstants() {
     }
 
-    //@Property(name = "openflowPorts", value = DEFAULT_OFPORT,
-    //        label = "Port numbers (comma separated) used by OpenFlow protocol; default is 6633,6653")
     public static final String OFPORTS = "openflowPorts";
     public static final String OFPORTS_DEFAULT = "6633,6653";
 
-    //@Property(name = "workerThreads", intValue = DEFAULT_WORKER_THREADS,
-    //        label = "Number of controller worker threads")
     public static final String WORKER_THREADS = "workerThreads";
     public static final int WORKER_THREADS_DEFAULT = 0;
 
-    //@Property(name = "tlsMode", value = "",
-    //          label = "TLS mode for OpenFlow channel; options are: disabled [default], enabled, strict")
     public static final String TLS_MODE = "tlsMode";
     public static final String TLS_MODE_DEFAULT = "";
 
-    //@Property(name = "keyStore", value = "",
-    //        label = "File path to key store for TLS connections")
     public static final String KEY_STORE = "keyStore";
     public static final String KEY_STORE_DEFAULT = "";
 
-    //@Property(name = "keyStorePassword", value = "",
-    //        label = "Key store password")
     public static final String KEY_STORE_PASSWORD = "keyStorePassword";
     public static final String KEY_STORE_PASSWORD_DEFAULT = "";
 
-    //@Property(name = "trustStore", value = "",
-    //        label = "File path to trust store for TLS connections")
     public static final String TRUST_STORE = "trustStore";
     public static final String TRUST_STORE_DEFAULT = "";
 
-    //@Property(name = "trustStorePassword", value = "",
-    //        label = "Trust store password")
     public static final String TRUST_STORE_PASSWORD = "trustStorePassword";
     public static final String TRUST_STORE_PASSWORD_DEFAULT = "";
 
diff --git a/protocols/ovsdb/api/src/main/java/org/onosproject/ovsdb/controller/OvsdbConstant.java b/protocols/ovsdb/api/src/main/java/org/onosproject/ovsdb/controller/OvsdbConstant.java
index ddd93eb..ee13e4c 100644
--- a/protocols/ovsdb/api/src/main/java/org/onosproject/ovsdb/controller/OvsdbConstant.java
+++ b/protocols/ovsdb/api/src/main/java/org/onosproject/ovsdb/controller/OvsdbConstant.java
@@ -127,9 +127,4 @@
 
     public static final boolean OVSDB_TLS_FLAG = false;
 
-    //TODO CONFIG_DIR is duplicated from ConfigFileBasedClusterMetadataProvider
-    public static final String CONFIG_DIR = "../config/";
-    public static final String KS_FILE_NAME = "onos.jks";
-    public static final String DEFAULT_KS_FILE = CONFIG_DIR + KS_FILE_NAME;
-    public static final String DEFAULT_KS_PASSWORD = "222222";
 }
diff --git a/protocols/ovsdb/ctl/src/main/java/org/onosproject/ovsdb/controller/impl/OsgiPropertyConstants.java b/protocols/ovsdb/ctl/src/main/java/org/onosproject/ovsdb/controller/impl/OsgiPropertyConstants.java
new file mode 100644
index 0000000..44630c9
--- /dev/null
+++ b/protocols/ovsdb/ctl/src/main/java/org/onosproject/ovsdb/controller/impl/OsgiPropertyConstants.java
@@ -0,0 +1,44 @@
+/*
+ * Copyright 2018-present Open Networking Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.onosproject.ovsdb.controller.impl;
+
+/**
+ * Constants for default values of configurable properties.
+ */
+public final class OsgiPropertyConstants {
+
+    private OsgiPropertyConstants() {}
+
+    public static final String SERVER_MODE = "";
+    public static final boolean SERVER_MODE_DEFAULT = false;
+
+    public static final String OVSDB_TLS_FLAG = "enableOvsdbTls";
+    public static final boolean OVSDB_TLS_FLAG_DEFAULT = false;
+
+    public static final String KS_FILE = "keyStoreLocation";
+    public static final String KS_FILE_DEFAULT = "../config/onos.jks";
+
+    public static final String TS_FILE = "trustStoreLocation";
+    public static final String TS_FILE_DEFAULT = "../config/onos.jks";
+
+    public static final String KS_PASSWORD = "keyStorePassword";
+    public static final String KS_PASSWORD_DEFAULT = "222222";
+
+    public static final String TS_PASSWORD = "trustStorePassword";
+    public static final String TS_PASSWORD_DEFAULT = "222222";
+
+}
diff --git a/protocols/ovsdb/ctl/src/main/java/org/onosproject/ovsdb/controller/impl/OvsdbControllerImpl.java b/protocols/ovsdb/ctl/src/main/java/org/onosproject/ovsdb/controller/impl/OvsdbControllerImpl.java
index dde2416..428a411 100644
--- a/protocols/ovsdb/ctl/src/main/java/org/onosproject/ovsdb/controller/impl/OvsdbControllerImpl.java
+++ b/protocols/ovsdb/ctl/src/main/java/org/onosproject/ovsdb/controller/impl/OvsdbControllerImpl.java
@@ -81,16 +81,21 @@
 
 import static com.google.common.base.Preconditions.checkNotNull;
 import static org.onlab.util.Tools.get;
-import static org.onosproject.ovsdb.controller.OvsdbConstant.DEFAULT_KS_FILE;
-import static org.onosproject.ovsdb.controller.OvsdbConstant.DEFAULT_KS_PASSWORD;
-import static org.onosproject.ovsdb.controller.OvsdbConstant.OVSDB_TLS_FLAG;
-import static org.onosproject.ovsdb.controller.OvsdbConstant.SERVER_MODE;
 import static org.onosproject.ovsdb.controller.impl.Controller.MIN_KS_LENGTH;
+import static org.onosproject.ovsdb.controller.impl.OsgiPropertyConstants.*;
 
 /**
  * The implementation of OvsdbController.
  */
-@Component(immediate = true, service = OvsdbController.class)
+@Component(immediate = true, service = OvsdbController.class,
+        property = {
+                "serverMode" + ":Boolean=" + SERVER_MODE_DEFAULT,
+                "enableOvsdbTls" + ":Boolean=" + OVSDB_TLS_FLAG_DEFAULT,
+                "keyStoreLocation" + "=" + KS_FILE_DEFAULT,
+                "keyStorePassword" + "=" + KS_PASSWORD_DEFAULT,
+                "trustStoreLocation" + "=" + TS_FILE_DEFAULT,
+                "trustStorePassword" + "=" + TS_PASSWORD_DEFAULT,
+        })
 public class OvsdbControllerImpl implements OvsdbController {
 
     public static final Logger log = LoggerFactory
@@ -110,29 +115,23 @@
     @Reference(cardinality = ReferenceCardinality.MANDATORY)
     protected ComponentConfigService configService;
 
-    //@Property(name = "serverMode", boolValue = SERVER_MODE,
-    //        label = "Run as server mode, listen on 6640 port")
-    private boolean serverMode = SERVER_MODE;
+    /** Run as server mode, listen on 6640 port. */
+    private boolean serverMode = SERVER_MODE_DEFAULT;
 
-    //@Property(name = "enableOvsdbTls", boolValue = OVSDB_TLS_FLAG,
-    //        label = "TLS mode for OVSDB channel; options are: true false")
-    private boolean enableOvsdbTls = OVSDB_TLS_FLAG;
+    /** TLS mode for OVSDB channel; options are: true false. */
+    private boolean enableOvsdbTls = OVSDB_TLS_FLAG_DEFAULT;
 
-    //@Property(name = "keyStoreLocation", value = DEFAULT_KS_FILE,
-    //        label = "File path to KeyStore for Ovsdb TLS Connections")
-    protected String keyStoreLocation = DEFAULT_KS_FILE;
+    /** File path to KeyStore for Ovsdb TLS Connections. */
+    protected String keyStoreLocation = KS_FILE_DEFAULT;
 
-    //@Property(name = "trustStoreLocation", value = DEFAULT_KS_FILE,
-    //        label = "File path to TrustStore for Ovsdb TLS Connections")
-    protected String trustStoreLocation = DEFAULT_KS_FILE;
+    /** File path to TrustStore for Ovsdb TLS Connections. */
+    protected String trustStoreLocation = TS_FILE_DEFAULT;
 
-    //@Property(name = "keyStorePassword", value = DEFAULT_KS_PASSWORD,
-    //        label = "KeyStore Password")
-    protected String keyStorePassword = DEFAULT_KS_PASSWORD;
+    /** KeyStore Password. */
+    protected String keyStorePassword = KS_PASSWORD_DEFAULT;
 
-    //@Property(name = "trustStorePassword", value = DEFAULT_KS_PASSWORD,
-    //        label = "TrustStore Password")
-    protected String trustStorePassword = DEFAULT_KS_PASSWORD;
+    /** TrustStore Password. */
+    protected String trustStorePassword = TS_PASSWORD_DEFAULT;
 
     @Activate
     public void activate(ComponentContext context) {
@@ -180,7 +179,7 @@
     private TlsParams getTlsParams(Dictionary<?, ?> properties) {
         TlsMode mode = null;
 
-        boolean flag = Tools.isPropertyEnabled(properties, "enableOvsdbTls");
+        boolean flag = Tools.isPropertyEnabled(properties, OVSDB_TLS_FLAG);
         if (Objects.isNull(flag) || !flag) {
             log.warn("OvsdbTLS Disabled");
             mode = TlsMode.DISABLED;
@@ -191,25 +190,25 @@
 
         String ksLocation = null, tsLocation = null, ksPwd = null, tsPwd = null;
 
-        ksLocation = get(properties, "keyStoreLocation");
+        ksLocation = get(properties, KS_FILE);
         if (Strings.isNullOrEmpty(ksLocation)) {
             log.warn("trustStoreLocation is not configured");
             mode = TlsMode.DISABLED;
         }
 
-        tsLocation = get(properties, "trustStoreLocation");
+        tsLocation = get(properties, TS_FILE);
         if (Strings.isNullOrEmpty(tsLocation)) {
             log.warn("trustStoreLocation is not configured");
             mode = TlsMode.DISABLED;
         }
 
-        ksPwd = get(properties, "keyStorePassword");
+        ksPwd = get(properties, KS_PASSWORD);
         if (Strings.isNullOrEmpty(ksPwd) || MIN_KS_LENGTH > ksPwd.length()) {
             log.warn("keyStorePassword is not configured or Password length too small");
             mode = TlsMode.DISABLED;
         }
 
-        tsPwd = get(properties, "trustStorePassword");
+        tsPwd = get(properties, TS_PASSWORD);
         if (Strings.isNullOrEmpty(tsPwd) || MIN_KS_LENGTH > tsPwd.length()) {
             log.warn("trustStorePassword is not configured or Password length too small");
             mode = TlsMode.DISABLED;
diff --git a/protocols/ovsdb/ctl/src/main/java/org/onosproject/ovsdb/controller/impl/TlsParams.java b/protocols/ovsdb/ctl/src/main/java/org/onosproject/ovsdb/controller/impl/TlsParams.java
index dfe7fa9..f71f8fa 100644
--- a/protocols/ovsdb/ctl/src/main/java/org/onosproject/ovsdb/controller/impl/TlsParams.java
+++ b/protocols/ovsdb/ctl/src/main/java/org/onosproject/ovsdb/controller/impl/TlsParams.java
@@ -29,8 +29,7 @@
 import java.util.EnumSet;
 import java.util.Objects;
 
-import static org.onosproject.ovsdb.controller.OvsdbConstant.DEFAULT_KS_FILE;
-import static org.onosproject.ovsdb.controller.OvsdbConstant.DEFAULT_KS_PASSWORD;
+import static org.onosproject.ovsdb.controller.impl.OsgiPropertyConstants.*;
 
 /**
  * TlsParams Class for properties required for configuring OVSDB TLS Connection.
@@ -69,10 +68,10 @@
      */
     TlsParams() {
         this.mode = TlsMode.DISABLED;
-        this.ksLocation = DEFAULT_KS_FILE;
-        this.tsLocation = DEFAULT_KS_FILE;
-        this.ksPwd = DEFAULT_KS_PASSWORD;
-        this.tsPwd = DEFAULT_KS_PASSWORD;
+        this.ksLocation = KS_FILE_DEFAULT;
+        this.tsLocation = TS_FILE_DEFAULT;
+        this.ksPwd = KS_PASSWORD_DEFAULT;
+        this.tsPwd = TS_PASSWORD_DEFAULT;
         this.ksSignature = getSha1Checksum(ksLocation);
         this.tsSignature = getSha1Checksum(tsLocation);
     }
diff --git a/providers/link/src/main/java/org/onosproject/provider/linkdiscovery/impl/OsgiPropertyDefaults.java b/protocols/xmpp/core/ctl/src/main/java/org/onosproject/xmpp/core/ctl/OsgiPropertyConstants.java
similarity index 72%
copy from providers/link/src/main/java/org/onosproject/provider/linkdiscovery/impl/OsgiPropertyDefaults.java
copy to protocols/xmpp/core/ctl/src/main/java/org/onosproject/xmpp/core/ctl/OsgiPropertyConstants.java
index ba85b86..24a3b7c 100644
--- a/providers/link/src/main/java/org/onosproject/provider/linkdiscovery/impl/OsgiPropertyDefaults.java
+++ b/protocols/xmpp/core/ctl/src/main/java/org/onosproject/xmpp/core/ctl/OsgiPropertyConstants.java
@@ -14,16 +14,16 @@
  * limitations under the License.
  */
 
-package org.onosproject.provider.linkdiscovery.impl;
+package org.onosproject.xmpp.core.ctl;
 
 /**
  * Constants for default values of configurable properties.
  */
-public final class OsgiPropertyDefaults {
+public final class OsgiPropertyConstants {
 
-    private OsgiPropertyDefaults() {}
+    private OsgiPropertyConstants() {}
 
-    public static final int POLL_DELAY_SECONDS_DEFAULT = 20;
-    public static final int POLL_FREQUENCY_SECONDS_DEFAULT = 10;
+    public static final String XMPP_PORT = "xmppPort";
+    public static final String XMPP_PORT_DEFAULT = "5269";
 
 }
diff --git a/protocols/xmpp/core/ctl/src/main/java/org/onosproject/xmpp/core/ctl/XmppControllerImpl.java b/protocols/xmpp/core/ctl/src/main/java/org/onosproject/xmpp/core/ctl/XmppControllerImpl.java
index 178018a..da42c1c 100644
--- a/protocols/xmpp/core/ctl/src/main/java/org/onosproject/xmpp/core/ctl/XmppControllerImpl.java
+++ b/protocols/xmpp/core/ctl/src/main/java/org/onosproject/xmpp/core/ctl/XmppControllerImpl.java
@@ -49,6 +49,9 @@
 import java.util.concurrent.ConcurrentMap;
 import java.util.concurrent.CopyOnWriteArraySet;
 
+import static org.onosproject.xmpp.core.ctl.OsgiPropertyConstants.XMPP_PORT;
+import static org.onosproject.xmpp.core.ctl.OsgiPropertyConstants.XMPP_PORT_DEFAULT;
+
 
 /**
  * The main class (bundle) of XMPP protocol.
@@ -58,11 +61,13 @@
  * 3. Configuration parameters initialization.
  * 4. Notifing listeners about XMPP events/packets.
  */
-@Component(immediate = true, service = XmppController.class)
+@Component(immediate = true, service = XmppController.class,
+        property = {
+                XMPP_PORT + "=" + XMPP_PORT_DEFAULT,
+        })
 public class XmppControllerImpl implements XmppController {
 
     private static final String APP_ID = "org.onosproject.xmpp";
-    private static final String XMPP_PORT = "5269";
 
     private static final Logger log =
             LoggerFactory.getLogger(XmppControllerImpl.class);
@@ -75,10 +80,8 @@
     protected ComponentConfigService cfgService;
 
     // configuration properties definition
-    //@Property(name = "xmppPort", value = XMPP_PORT,
-    //        label = "Port number used by XMPP protocol; default is 5269")
-    private String xmppPort = XMPP_PORT;
-
+    /** Port number used by XMPP protocol; default is 5269. */
+    private String xmppPort = XMPP_PORT_DEFAULT;
 
     // listener declaration
     protected Set<XmppDeviceListener> xmppDeviceListeners = new CopyOnWriteArraySet<XmppDeviceListener>();
diff --git a/protocols/xmpp/core/ctl/src/main/java/org/onosproject/xmpp/core/ctl/XmppServer.java b/protocols/xmpp/core/ctl/src/main/java/org/onosproject/xmpp/core/ctl/XmppServer.java
index 2bc96fd..0970d82 100644
--- a/protocols/xmpp/core/ctl/src/main/java/org/onosproject/xmpp/core/ctl/XmppServer.java
+++ b/protocols/xmpp/core/ctl/src/main/java/org/onosproject/xmpp/core/ctl/XmppServer.java
@@ -35,6 +35,7 @@
 import java.util.Dictionary;
 
 import static org.onlab.util.Tools.get;
+import static org.onosproject.xmpp.core.ctl.OsgiPropertyConstants.XMPP_PORT;
 
 /**
  *  The XMPP server class. Starts XMPP server and listens to new XMPP device TCP connections.
@@ -124,7 +125,7 @@
      * @param properties properties to be set
      */
     public void setConfiguration(Dictionary<?, ?> properties) {
-        String port = get(properties, "xmppPort");
+        String port = get(properties, XMPP_PORT);
         if (!Strings.isNullOrEmpty(port)) {
             this.port = Integer.parseInt(port);
         }
diff --git a/providers/general/device/src/main/java/org/onosproject/provider/general/device/impl/GeneralDeviceProvider.java b/providers/general/device/src/main/java/org/onosproject/provider/general/device/impl/GeneralDeviceProvider.java
index 6e8fe1d..4374089 100644
--- a/providers/general/device/src/main/java/org/onosproject/provider/general/device/impl/GeneralDeviceProvider.java
+++ b/providers/general/device/src/main/java/org/onosproject/provider/general/device/impl/GeneralDeviceProvider.java
@@ -106,9 +106,7 @@
 import static java.util.concurrent.Executors.newSingleThreadScheduledExecutor;
 import static org.onlab.util.Tools.groupedThreads;
 import static org.onosproject.net.device.DeviceEvent.Type;
-import static org.onosproject.provider.general.device.impl.OsgiPropertyDefaults.OP_TIMEOUT_SHORT_DEFAULT;
-import static org.onosproject.provider.general.device.impl.OsgiPropertyDefaults.PROBE_FREQUENCY_DEFAULT;
-import static org.onosproject.provider.general.device.impl.OsgiPropertyDefaults.STATS_POLL_FREQUENCY_DEFAULT;
+import static org.onosproject.provider.general.device.impl.OsgiPropertyConstants.*;
 import static org.slf4j.LoggerFactory.getLogger;
 
 /**
@@ -119,9 +117,9 @@
 @Beta
 @Component(immediate = true,
         property = {
-            "deviceStatsPollFrequency:Integer=" + STATS_POLL_FREQUENCY_DEFAULT,
-            "deviceProbeFrequency:Integer=" + PROBE_FREQUENCY_DEFAULT,
-            "deviceOperationTimeoutShort:Integer=" + OP_TIMEOUT_SHORT_DEFAULT,
+                STATS_POLL_FREQUENCY + ":Integer=" + STATS_POLL_FREQUENCY_DEFAULT,
+                PROBE_FREQUENCY + ":Integer=" + PROBE_FREQUENCY_DEFAULT,
+                OP_TIMEOUT_SHORT + ":Integer=" + OP_TIMEOUT_SHORT_DEFAULT,
         })
 public class GeneralDeviceProvider extends AbstractProvider
         implements DeviceProvider {
@@ -166,23 +164,20 @@
     @Reference(cardinality = ReferenceCardinality.MANDATORY)
     private PiPipeconfWatchdogService pipeconfWatchdogService;
 
-    private static final String STATS_POLL_FREQUENCY = "deviceStatsPollFrequency";
-    //@Property(name = STATS_POLL_FREQUENCY, intValue = DEFAULT_STATS_POLL_FREQUENCY,
-    //        label = "Configure poll frequency for port status and statistics; " +
-    //                "default is 10 sec")
+    /**
+     * Configure poll frequency for port status and statistics; default is 10 sec.
+     */
     private int statsPollFrequency = STATS_POLL_FREQUENCY_DEFAULT;
 
-    private static final String PROBE_FREQUENCY = "deviceProbeFrequency";
-    //@Property(name = PROBE_FREQUENCY, intValue = DEFAULT_PROBE_FREQUENCY,
-    //        label = "Configure probe frequency for checking device availability; " +
-    //                "default is 10 sec")
+    /**
+     * Configure probe frequency for checking device availability; default is 10 sec.
+     */
     private int probeFrequency = PROBE_FREQUENCY_DEFAULT;
 
-    private static final String OP_TIMEOUT_SHORT = "deviceOperationTimeoutShort";
-    //@Property(name = OP_TIMEOUT_SHORT, intValue = DEFAULT_OP_TIMEOUT_SHORT,
-    //        label = "Configure timeout in seconds for device operations " +
-    //                "that are supposed to take a short time " +
-    //                "(e.g. checking device reachability); default is 10 seconds")
+    /**
+     * Configure timeout in seconds for device operations that are supposed to take a short time
+     * (e.g. checking device reachability); default is 10 seconds.
+     */
     private int opTimeoutShort = OP_TIMEOUT_SHORT_DEFAULT;
 
     //FIXME to be removed when netcfg will issue device events in a bundle or
diff --git a/providers/general/device/src/main/java/org/onosproject/provider/general/device/impl/OsgiPropertyDefaults.java b/providers/general/device/src/main/java/org/onosproject/provider/general/device/impl/OsgiPropertyConstants.java
similarity index 74%
rename from providers/general/device/src/main/java/org/onosproject/provider/general/device/impl/OsgiPropertyDefaults.java
rename to providers/general/device/src/main/java/org/onosproject/provider/general/device/impl/OsgiPropertyConstants.java
index 90cf437..84419f4 100644
--- a/providers/general/device/src/main/java/org/onosproject/provider/general/device/impl/OsgiPropertyDefaults.java
+++ b/providers/general/device/src/main/java/org/onosproject/provider/general/device/impl/OsgiPropertyConstants.java
@@ -19,12 +19,17 @@
 /**
  * Constants for default values of configurable properties.
  */
-public final class OsgiPropertyDefaults {
+public final class OsgiPropertyConstants {
 
-    private OsgiPropertyDefaults() {}
+    private OsgiPropertyConstants() {}
 
+    public static final String STATS_POLL_FREQUENCY = "deviceStatsPollFrequency";
     public static final int STATS_POLL_FREQUENCY_DEFAULT = 10;
+
+    public static final String PROBE_FREQUENCY = "deviceProbeFrequency";
     public static final int PROBE_FREQUENCY_DEFAULT = 10;
+
+    public static final String OP_TIMEOUT_SHORT = "deviceOperationTimeoutShort";
     public static final int OP_TIMEOUT_SHORT_DEFAULT = 10;
 
 }
diff --git a/providers/host/src/main/java/org/onosproject/provider/host/impl/HostLocationProvider.java b/providers/host/src/main/java/org/onosproject/provider/host/impl/HostLocationProvider.java
index b804c6d..2e4b412 100644
--- a/providers/host/src/main/java/org/onosproject/provider/host/impl/HostLocationProvider.java
+++ b/providers/host/src/main/java/org/onosproject/provider/host/impl/HostLocationProvider.java
@@ -103,6 +103,7 @@
 
 import static java.util.concurrent.Executors.newSingleThreadScheduledExecutor;
 import static org.onlab.util.Tools.groupedThreads;
+import static org.onosproject.provider.host.impl.OsgiPropertyConstants.*;
 import static org.slf4j.LoggerFactory.getLogger;
 
 /**
@@ -111,13 +112,13 @@
  */
 @Component(immediate = true, service = HostProvider.class,
         property = {
-                "hostRemovalEnabled:Boolean=true",
-                "requestArp:Boolean=true",
-                "requestIpv6ND:Boolean=false",
-                "useDhcp:Boolean=false",
-                "useDhcp6:Boolean=false",
-                "requestInterceptsEnabled:Boolean=true",
-                "multihomingEnabled:Boolean=false",
+                HOST_REMOVAL_ENABLED + ":Boolean=" + HOST_REMOVAL_ENABLED_DEFAULT,
+                REQUEST_ARP + ":Boolean=" + REQUEST_ARP_DEFAULT,
+                REQUEST_NDP + ":Boolean=" + REQUEST_NDP_DEFAULT,
+                USE_DHCP + ":Boolean=" + USE_DHCP_DEFAULT,
+                USE_DHCP6 + ":Boolean=" + USE_DHCP6_DEFAULT,
+                REQUEST_INTERCEPTS_ENABLED + ":Boolean=" + REQUEST_INTERCEPTS_ENABLED_DEFAULT,
+                MULTIHOMING_ENABLED + ":Boolean=" + MULTIHOMING_ENABLED_DEFAULT,
         })
 public class HostLocationProvider extends AbstractProvider implements HostProvider {
     private final Logger log = getLogger(getClass());
@@ -155,34 +156,25 @@
 
     private ApplicationId appId;
 
-    //@Property(name = "hostRemovalEnabled", boolValue = true,
-    //        label = "Enable host removal on port/device down events")
+    /** Enable host removal on port/device down events. */
     private boolean hostRemovalEnabled = true;
 
-    //@Property(name = "requestArp", boolValue = true,
-    //        label = "Request ARP packets for neighbor discovery by the " +
-    //                "Host Location Provider; default is true")
+    /** Request ARP packets for neighbor discovery by the Host Location Provider; default is true. */
     private boolean requestArp = true;
 
-    //@Property(name = "requestIpv6ND", boolValue = false,
-    //        label = "Requests IPv6 Neighbor Discovery by the " +
-    //                "Host Location Provider; default is false")
+    /** Requests IPv6 Neighbor Discovery by the Host Location Provider; default is false. */
     private boolean requestIpv6ND = false;
 
-    //@Property(name = "useDhcp", boolValue = false,
-    //        label = "Use DHCP to update IP address of the host; default is false")
+    /** Use DHCP to update IP address of the host; default is false. */
     private boolean useDhcp = false;
 
-    //@Property(name = "useDhcp6", boolValue = false,
-    //        label = "Use DHCPv6 to update IP address of the host; default is false")
+    /** Use DHCPv6 to update IP address of the host; default is false. */
     private boolean useDhcp6 = false;
 
-    //@Property(name = "requestInterceptsEnabled", boolValue = true,
-    //        label = "Enable requesting packet intercepts")
+    /** Enable requesting packet intercepts. */
     private boolean requestInterceptsEnabled = true;
 
-    //@Property(name = "multihomingEnabled", boolValue = false,
-    //        label = "Allow hosts to be multihomed")
+    /** Allow hosts to be multihomed. */
     private boolean multihomingEnabled = false;
 
     private HostProviderService providerService;
@@ -322,7 +314,7 @@
         Dictionary<?, ?> properties = context.getProperties();
         Boolean flag;
 
-        flag = Tools.isPropertyEnabled(properties, "hostRemovalEnabled");
+        flag = Tools.isPropertyEnabled(properties, HOST_REMOVAL_ENABLED);
         if (flag == null) {
             log.info("Host removal on port/device down events is not configured, " +
                      "using current value of {}", hostRemovalEnabled);
@@ -332,7 +324,7 @@
                      hostRemovalEnabled ? "enabled" : "disabled");
         }
 
-        flag = Tools.isPropertyEnabled(properties, "requestArp");
+        flag = Tools.isPropertyEnabled(properties, REQUEST_ARP);
         if (flag == null) {
             log.info("Using ARP is not configured, " +
                      "using current value of {}", requestArp);
@@ -342,7 +334,7 @@
                      requestArp ? "enabled" : "disabled");
         }
 
-        flag = Tools.isPropertyEnabled(properties, "requestIpv6ND");
+        flag = Tools.isPropertyEnabled(properties, REQUEST_NDP);
         if (flag == null) {
             log.info("Using IPv6 Neighbor Discovery is not configured, " +
                              "using current value of {}", requestIpv6ND);
@@ -352,7 +344,7 @@
                      requestIpv6ND ? "enabled" : "disabled");
         }
 
-        flag = Tools.isPropertyEnabled(properties, "useDhcp");
+        flag = Tools.isPropertyEnabled(properties, USE_DHCP);
         if (flag == null) {
             log.info("Using DHCP is not configured, " +
                      "using current value of {}", useDhcp);
@@ -362,7 +354,17 @@
                      useDhcp ? "enabled" : "disabled");
         }
 
-        flag = Tools.isPropertyEnabled(properties, "requestInterceptsEnabled");
+        flag = Tools.isPropertyEnabled(properties, USE_DHCP6);
+        if (flag == null) {
+            log.info("Using DHCP6 is not configured, " +
+                             "using current value of {}", useDhcp6);
+        } else {
+            useDhcp6 = flag;
+            log.info("Configured. Using DHCP6 is {}",
+                     useDhcp6 ? "enabled" : "disabled");
+        }
+
+        flag = Tools.isPropertyEnabled(properties, REQUEST_INTERCEPTS_ENABLED);
         if (flag == null) {
             log.info("Request intercepts is not configured, " +
                      "using current value of {}", requestInterceptsEnabled);
@@ -372,7 +374,7 @@
                      requestInterceptsEnabled ? "enabled" : "disabled");
         }
 
-        flag = Tools.isPropertyEnabled(properties, "multihomingEnabled");
+        flag = Tools.isPropertyEnabled(properties, MULTIHOMING_ENABLED);
         if (flag == null) {
             log.info("Multihoming is not configured, " +
                     "using current value of {}", multihomingEnabled);
diff --git a/providers/host/src/main/java/org/onosproject/provider/host/impl/OsgiPropertyConstants.java b/providers/host/src/main/java/org/onosproject/provider/host/impl/OsgiPropertyConstants.java
new file mode 100644
index 0000000..eb8dafe
--- /dev/null
+++ b/providers/host/src/main/java/org/onosproject/provider/host/impl/OsgiPropertyConstants.java
@@ -0,0 +1,48 @@
+/*
+ * Copyright 2018-present Open Networking Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.onosproject.provider.host.impl;
+
+/**
+ * Name/Value constants for properties.
+ */
+
+public final class OsgiPropertyConstants {
+
+    private OsgiPropertyConstants() {
+    }
+
+    public static final String HOST_REMOVAL_ENABLED = "hostRemovalEnabled:Boolean=true";
+    public static final boolean HOST_REMOVAL_ENABLED_DEFAULT = true;
+
+    public static final String REQUEST_ARP = "requestArp";
+    public static final boolean REQUEST_ARP_DEFAULT = true;
+
+    public static final String REQUEST_NDP = "requestIpv6ND";
+    public static final boolean REQUEST_NDP_DEFAULT = false;
+
+    public static final String USE_DHCP = "useDhcp";
+    public static final boolean USE_DHCP_DEFAULT = false;
+
+    public static final String USE_DHCP6 = "useDhcp6";
+    public static final boolean USE_DHCP6_DEFAULT = false;
+
+    public static final String REQUEST_INTERCEPTS_ENABLED = "requestInterceptsEnabled";
+    public static final boolean REQUEST_INTERCEPTS_ENABLED_DEFAULT = true;
+
+    public static final String MULTIHOMING_ENABLED = "multihomingEnabled";
+    public static final boolean MULTIHOMING_ENABLED_DEFAULT = false;
+}
diff --git a/providers/link/src/main/java/org/onosproject/provider/linkdiscovery/impl/LinkDiscoveryProvider.java b/providers/link/src/main/java/org/onosproject/provider/linkdiscovery/impl/LinkDiscoveryProvider.java
index 44dd60d..dba7add 100644
--- a/providers/link/src/main/java/org/onosproject/provider/linkdiscovery/impl/LinkDiscoveryProvider.java
+++ b/providers/link/src/main/java/org/onosproject/provider/linkdiscovery/impl/LinkDiscoveryProvider.java
@@ -58,8 +58,7 @@
 import static java.util.concurrent.TimeUnit.SECONDS;
 import static org.onlab.util.Tools.get;
 import static org.onlab.util.Tools.groupedThreads;
-import static org.onosproject.provider.linkdiscovery.impl.OsgiPropertyDefaults.POLL_DELAY_SECONDS_DEFAULT;
-import static org.onosproject.provider.linkdiscovery.impl.OsgiPropertyDefaults.POLL_FREQUENCY_SECONDS_DEFAULT;
+import static org.onosproject.provider.linkdiscovery.impl.OsgiPropertyConstants.*;
 import static org.slf4j.LoggerFactory.getLogger;
 
 /**
@@ -68,8 +67,8 @@
  */
 @Component(immediate = true,
         property = {
-                "linkPollDelaySeconds:Integer=" + POLL_DELAY_SECONDS_DEFAULT,
-                "linkPollFrequencySeconds:Integer=" + POLL_FREQUENCY_SECONDS_DEFAULT,
+                POLL_DELAY_SECONDS + ":Integer=" + POLL_DELAY_SECONDS_DEFAULT,
+                POLL_FREQUENCY_SECONDS + ":Integer=" + POLL_FREQUENCY_SECONDS_DEFAULT,
         })
 public class LinkDiscoveryProvider extends AbstractProvider
         implements LinkProvider {
@@ -78,12 +77,11 @@
     protected static final String SCHEME_NAME = "linkdiscovery";
     private static final String LINK_PROVIDER_PACKAGE = "org.onosproject.provider.linkdiscovery";
     private final Logger log = getLogger(getClass());
-    //@Property(name = "linkPollDelaySeconds", intValue = DEFAULT_POLL_DELAY_SECONDS,
-    //        label = "Initial delay (in seconds) for polling link discovery")
+
+    /** Initial delay (in seconds) for polling link discovery. */
     protected static int linkPollDelaySeconds = POLL_DELAY_SECONDS_DEFAULT;
 
-    //@Property(name = "linkPollFrequencySeconds", intValue = DEFAULT_POLL_FREQUENCY_SECONDS,
-    //        label = "Frequency (in seconds) for polling link discovery")
+    /** Frequency (in seconds) for polling link discovery. */
     protected static int linkPollFrequencySeconds = POLL_FREQUENCY_SECONDS_DEFAULT;
 
 
@@ -171,7 +169,7 @@
     private int getNewPollFrequency(Dictionary<?, ?> properties, int pollFrequency) {
         int newPollFrequency;
         try {
-            String s = get(properties, "linkPollFrequencySeconds");
+            String s = get(properties, POLL_FREQUENCY_SECONDS);
             newPollFrequency = isNullOrEmpty(s) ? pollFrequency : Integer.parseInt(s.trim());
         } catch (NumberFormatException | ClassCastException e) {
             newPollFrequency = POLL_FREQUENCY_SECONDS_DEFAULT;
@@ -182,7 +180,7 @@
     private int getNewPollDealy(Dictionary<?, ?> properties, int pollDelay) {
         int newPollFrequency;
         try {
-            String s = get(properties, "linkPollDelaySeconds");
+            String s = get(properties, POLL_DELAY_SECONDS);
             newPollFrequency = isNullOrEmpty(s) ? pollDelay : Integer.parseInt(s.trim());
         } catch (NumberFormatException | ClassCastException e) {
             newPollFrequency = POLL_DELAY_SECONDS_DEFAULT;
diff --git a/providers/link/src/main/java/org/onosproject/provider/linkdiscovery/impl/OsgiPropertyDefaults.java b/providers/link/src/main/java/org/onosproject/provider/linkdiscovery/impl/OsgiPropertyConstants.java
similarity index 78%
rename from providers/link/src/main/java/org/onosproject/provider/linkdiscovery/impl/OsgiPropertyDefaults.java
rename to providers/link/src/main/java/org/onosproject/provider/linkdiscovery/impl/OsgiPropertyConstants.java
index ba85b86..4335fac 100644
--- a/providers/link/src/main/java/org/onosproject/provider/linkdiscovery/impl/OsgiPropertyDefaults.java
+++ b/providers/link/src/main/java/org/onosproject/provider/linkdiscovery/impl/OsgiPropertyConstants.java
@@ -19,11 +19,14 @@
 /**
  * Constants for default values of configurable properties.
  */
-public final class OsgiPropertyDefaults {
+public final class OsgiPropertyConstants {
 
-    private OsgiPropertyDefaults() {}
+    private OsgiPropertyConstants() {}
 
+    public static final String POLL_DELAY_SECONDS = "linkPollDelaySeconds";
     public static final int POLL_DELAY_SECONDS_DEFAULT = 20;
+
+    public static final String POLL_FREQUENCY_SECONDS = "linkPollFrequencySeconds";
     public static final int POLL_FREQUENCY_SECONDS_DEFAULT = 10;
 
 }
diff --git a/providers/lldp/src/main/java/org/onosproject/provider/lldp/impl/LldpLinkProvider.java b/providers/lldp/src/main/java/org/onosproject/provider/lldp/impl/LldpLinkProvider.java
index 2914965..6849119 100644
--- a/providers/lldp/src/main/java/org/onosproject/provider/lldp/impl/LldpLinkProvider.java
+++ b/providers/lldp/src/main/java/org/onosproject/provider/lldp/impl/LldpLinkProvider.java
@@ -155,28 +155,19 @@
     private static final long DEVICE_SYNC_DELAY = 5;
     private static final long LINK_PRUNER_DELAY = 3;
 
-    //@Property(name = PROP_ENABLED, boolValue = true,
-    //        label = "If false, link discovery is disabled")
     /** If false, link discovery is disabled. */
     protected boolean enabled = false;
 
-    //@Property(name = PROP_USE_BDDP, boolValue = true,
-    //        label = "Use BDDP for link discovery")
     /** Use BDDP for link discovery. */
     protected boolean useBddp = USE_BDDP_DEFAULT;
 
-    //@Property(name = PROP_PROBE_RATE, intValue = DEFAULT_PROBE_RATE,
-    //        label = "LLDP and BDDP probe rate specified in millis")
     /** LLDP and BDDP probe rate specified in millis. */
     protected int probeRate = PROBE_RATE_DEFAULT;
 
-    //@Property(name = PROP_STALE_LINK_AGE, intValue = DEFAULT_STALE_LINK_AGE,
-    //        label = "Number of millis beyond which links will be considered stale")
     /** Number of millis beyond which links will be considered stale. */
     protected int staleLinkAge = STALE_LINK_AGE_DEFAULT;
 
-    //@Property(name = PROP_DISCOVERY_DELAY, intValue = DEFAULT_DISCOVERY_DELAY,
-    //        label = "Number of millis beyond which an LLDP packet will not be accepted")
+    /** Number of millis beyond which an LLDP packet will not be accepted. */
     private int maxDiscoveryDelayMs = DISCOVERY_DELAY_DEFAULT;
 
     private final LinkDiscoveryContext context = new InternalDiscoveryContext();
diff --git a/providers/lldp/src/main/java/org/onosproject/provider/lldp/impl/OsgiPropertyConstants.java b/providers/lldp/src/main/java/org/onosproject/provider/lldp/impl/OsgiPropertyConstants.java
index e67f3d8..77e7167 100644
--- a/providers/lldp/src/main/java/org/onosproject/provider/lldp/impl/OsgiPropertyConstants.java
+++ b/providers/lldp/src/main/java/org/onosproject/provider/lldp/impl/OsgiPropertyConstants.java
@@ -35,7 +35,7 @@
     public static final String PROP_STALE_LINK_AGE = "staleLinkAge";
     public static final int STALE_LINK_AGE_DEFAULT = 10000;
 
-    public static final String PROP_DISCOVERY_DELAY = "maxLLDPAge";
+    public static final String PROP_DISCOVERY_DELAY = "maxDiscoveryDelayMs";
     public static final int DISCOVERY_DELAY_DEFAULT = 1000;
 
 }
diff --git a/providers/netcfglinks/src/main/java/org/onosproject/provider/netcfglinks/NetworkConfigLinksProvider.java b/providers/netcfglinks/src/main/java/org/onosproject/provider/netcfglinks/NetworkConfigLinksProvider.java
index 06de0f9..ac00cf8 100644
--- a/providers/netcfglinks/src/main/java/org/onosproject/provider/netcfglinks/NetworkConfigLinksProvider.java
+++ b/providers/netcfglinks/src/main/java/org/onosproject/provider/netcfglinks/NetworkConfigLinksProvider.java
@@ -108,12 +108,10 @@
     @Reference(cardinality = ReferenceCardinality.MANDATORY)
     protected ClusterMetadataService metadataService;
 
-    //@Property(name = PROP_PROBE_RATE, intValue = DEFAULT_PROBE_RATE,
-    //        label = "LLDP and BDDP probe rate specified in millis")
+    /** LLDP and BDDP probe rate specified in millis. */
     private int probeRate = PROBE_RATE_DEFAULT;
 
-    //@Property(name = PROP_DISCOVERY_DELAY, intValue = DEFAULT_DISCOVERY_DELAY,
-    //        label = "Number of millis beyond which an LLDP packet will not be accepted")
+    /** Number of millis beyond which an LLDP packet will not be accepted. */
     private int maxDiscoveryDelayMs = DISCOVERY_DELAY_DEFAULT;
 
     // Device link discovery helpers.
diff --git a/providers/netconf/device/src/main/java/org/onosproject/provider/netconf/device/impl/NetconfDeviceProvider.java b/providers/netconf/device/src/main/java/org/onosproject/provider/netconf/device/impl/NetconfDeviceProvider.java
index 9987c6e..d9afbe3 100644
--- a/providers/netconf/device/src/main/java/org/onosproject/provider/netconf/device/impl/NetconfDeviceProvider.java
+++ b/providers/netconf/device/src/main/java/org/onosproject/provider/netconf/device/impl/NetconfDeviceProvider.java
@@ -145,14 +145,10 @@
     private static final String PORT = "port";
     private static final int CORE_POOL_SIZE = 10;
 
-    //@Property(name = "pollFrequency", intValue = DEFAULT_POLL_FREQUENCY_SECONDS,
-    //        label = "Configure poll frequency for port status and statistics; " +
-    //                "default is 30 sec")
+    /** Configure poll frequency for port status and statistics; default is 30 sec. */
     private int pollFrequency = POLL_FREQUENCY_SECONDS_DEFAULT;
 
-    //@Property(name = "maxRetries", intValue = DEFAULT_MAX_RETRIES,
-    //        label = "Configure maximum allowed number of retries for obtaining list of ports; " +
-    //                "default is 5 times")
+    /** Configure maximum allowed number of retries for obtaining list of ports; default is 5 times. */
     private int maxRetries = MAX_RETRIES_DEFAULT;
 
     protected ExecutorService executor =
diff --git a/providers/null/src/main/java/org/onosproject/provider/nil/NullProviders.java b/providers/null/src/main/java/org/onosproject/provider/nil/NullProviders.java
index 1f21244..d95943b 100644
--- a/providers/null/src/main/java/org/onosproject/provider/nil/NullProviders.java
+++ b/providers/null/src/main/java/org/onosproject/provider/nil/NullProviders.java
@@ -64,7 +64,7 @@
 import static org.onosproject.net.DeviceId.deviceId;
 import static org.onosproject.net.MastershipRole.MASTER;
 import static org.onosproject.net.MastershipRole.NONE;
-import static org.onosproject.provider.nil.OsgiPropertyDefaults.*;
+import static org.onosproject.provider.nil.OsgiPropertyConstants.*;
 import static org.slf4j.LoggerFactory.getLogger;
 
 /**
@@ -73,13 +73,13 @@
  */
 @Component(immediate = true, service = NullProviders.class,
         property = {
-            "enabled:Boolean=" + false,
-            "topoShape=" + TOPO_SHAPE_DEFAULT,
-            "deviceCount:Integer=" + DEVICE_COUNT_DEFAULT,
-            "hostCount:Integer=" +  HOST_COUNT_DEFAULT,
-            "packetRate:Integer=" +  PACKET_RATE_DEFAULT,
-            "mutationRate:Double=" + MUTATION_RATE_DEFAULT,
-            "mastership=" + MASTERSHIP_DEFAULT,
+            ENABLED + ":Boolean=" + ENABLED_DEFAULT,
+            TOPO_SHAPE + "=" + TOPO_SHAPE_DEFAULT,
+            DEVICE_COUNT + ":Integer=" + DEVICE_COUNT_DEFAULT,
+            HOST_COUNT + ":Integer=" +  HOST_COUNT_DEFAULT,
+            PACKET_RATE + ":Integer=" +  PACKET_RATE_DEFAULT,
+            MUTATION_RATE + ":Double=" + MUTATION_RATE_DEFAULT,
+            MASTERSHIP + "=" + MASTERSHIP_DEFAULT,
         })
 public class NullProviders {
 
@@ -110,7 +110,6 @@
     @Reference(cardinality = ReferenceCardinality.MANDATORY)
     protected LinkService linkService;
 
-
     @Reference(cardinality = ReferenceCardinality.MANDATORY)
     protected DeviceProviderRegistry deviceProviderRegistry;
 
@@ -146,32 +145,25 @@
 
     private TopologySimulator simulator;
 
-    //@Property(name = "enabled", boolValue = false,
-    //        label = "Enables or disables the provider")
+    /** Enables or disables the provider. */
     private boolean enabled = false;
 
-    //@Property(name = "topoShape", value = DEFAULT_TOPO_SHAPE,
-    //        label = "Topology shape: configured, linear, reroute, tree, spineleaf, mesh, grid")
+    /** Topology shape: configured, linear, reroute, tree, spineleaf, mesh, grid. */
     private String topoShape = TOPO_SHAPE_DEFAULT;
 
-    //@Property(name = "deviceCount", intValue = DEFAULT_DEVICE_COUNT,
-    //        label = "Number of devices to generate")
+    /** Number of devices to generate. */
     private int deviceCount = DEVICE_COUNT_DEFAULT;
 
-    //@Property(name = "hostCount", intValue = DEFAULT_HOST_COUNT,
-    //        label = "Number of host to generate per device")
+    /** Number of host to generate per device. */
     private int hostCount = HOST_COUNT_DEFAULT;
 
-    //@Property(name = "packetRate", intValue = DEFAULT_PACKET_RATE,
-    //        label = "Packet-in/s rate; 0 for no packets")
+    /** Packet-in/s rate; 0 for no packets. */
     private int packetRate = PACKET_RATE_DEFAULT;
 
-    //@Property(name = "mutationRate", doubleValue = DEFAULT_MUTATION_RATE,
-    //        label = "Link event/s topology mutation rate; 0 for no mutations")
+    /** Link event/s topology mutation rate; 0 for no mutations. */
     private double mutationRate = MUTATION_RATE_DEFAULT;
 
-    //@Property(name = "mastership", value = DEFAULT_MASTERSHIP,
-    //        label = "Mastership given as 'random' or 'node1=dpid,dpid/node2=dpid,...'")
+    /** Mastership given as 'random' or 'node1=dpid,dpid/node2=dpid,...'. */
     private String mastership = MASTERSHIP_DEFAULT;
 
 
@@ -219,22 +211,22 @@
         double newMutationRate;
         String newTopoShape, newMastership;
         try {
-            String s = get(properties, "enabled");
+            String s = get(properties, ENABLED);
             newEnabled = isNullOrEmpty(s) ? enabled : Boolean.parseBoolean(s.trim());
 
-            newTopoShape = get(properties, "topoShape");
-            newMastership = get(properties, "mastership");
+            newTopoShape = get(properties, TOPO_SHAPE);
+            newMastership = get(properties, MASTERSHIP);
 
-            s = get(properties, "deviceCount");
+            s = get(properties, DEVICE_COUNT);
             newDeviceCount = isNullOrEmpty(s) ? deviceCount : Integer.parseInt(s.trim());
 
-            s = get(properties, "hostCount");
+            s = get(properties, HOST_COUNT);
             newHostCount = isNullOrEmpty(s) ? hostCount : Integer.parseInt(s.trim());
 
-            s = get(properties, "packetRate");
+            s = get(properties, PACKET_RATE);
             newPacketRate = isNullOrEmpty(s) ? packetRate : Integer.parseInt(s.trim());
 
-            s = get(properties, "mutationRate");
+            s = get(properties, MUTATION_RATE);
             newMutationRate = isNullOrEmpty(s) ? mutationRate : Double.parseDouble(s.trim());
 
         } catch (NumberFormatException e) {
diff --git a/providers/null/src/main/java/org/onosproject/provider/nil/OsgiPropertyDefaults.java b/providers/null/src/main/java/org/onosproject/provider/nil/OsgiPropertyConstants.java
similarity index 66%
rename from providers/null/src/main/java/org/onosproject/provider/nil/OsgiPropertyDefaults.java
rename to providers/null/src/main/java/org/onosproject/provider/nil/OsgiPropertyConstants.java
index 2dd35e5..8cd6d8e 100644
--- a/providers/null/src/main/java/org/onosproject/provider/nil/OsgiPropertyDefaults.java
+++ b/providers/null/src/main/java/org/onosproject/provider/nil/OsgiPropertyConstants.java
@@ -19,15 +19,29 @@
 /**
  * Constants for default values of configurable properties.
  */
-public final class OsgiPropertyDefaults {
+public final class OsgiPropertyConstants {
 
-    private OsgiPropertyDefaults() {}
+    private OsgiPropertyConstants() {}
 
+    public static final String ENABLED = "enabled";
+    public static final boolean ENABLED_DEFAULT = false;
+
+    public static final String TOPO_SHAPE = "topoShape";
     public static final String TOPO_SHAPE_DEFAULT = "configured";
+
+    public static final String DEVICE_COUNT = "deviceCount";
     public static final int DEVICE_COUNT_DEFAULT = 10;
+
+    public static final String HOST_COUNT = "hostCount";
     public static final int HOST_COUNT_DEFAULT = 5;
+
+    public static final String PACKET_RATE = "packetRate";
     public static final int PACKET_RATE_DEFAULT = 0;
+
+    public static final String MUTATION_RATE = "mutationRate";
     public static final double MUTATION_RATE_DEFAULT = 0;
+
+    public static final String MASTERSHIP = "mastership";
     public static final String MASTERSHIP_DEFAULT = "random";
 
 }
diff --git a/providers/openflow/device/src/main/java/org/onosproject/provider/of/device/impl/OpenFlowDeviceProvider.java b/providers/openflow/device/src/main/java/org/onosproject/provider/of/device/impl/OpenFlowDeviceProvider.java
index 6117339..f849467 100644
--- a/providers/openflow/device/src/main/java/org/onosproject/provider/of/device/impl/OpenFlowDeviceProvider.java
+++ b/providers/openflow/device/src/main/java/org/onosproject/provider/of/device/impl/OpenFlowDeviceProvider.java
@@ -453,12 +453,10 @@
 
     private final InternalDeviceProvider listener = new InternalDeviceProvider();
 
-    //@Property(name = POLL_PROP_NAME, intValue = POLL_INTERVAL,
-    //label = "Frequency (in seconds) for polling switch Port statistics")
+    /** Frequency (in seconds) for polling switch Port statistics. */
     private int portStatsPollFrequency = POLL_FREQ_DEFAULT;
 
-    //@Property(name = PROP_FREQ, boolValue = DEFAULT_PROP_FREQ,
-    //label = "It indicates frequency must be used instead of wavelength for port tuning.")
+    /** It indicates frequency must be used instead of wavelength for port tuning. */
     private static boolean propFreq = PROP_FREQ_DEFAULT;
 
     private final Timer timer = new Timer("onos-openflow-portstats-collector");
diff --git a/providers/openflow/flow/src/main/java/org/onosproject/provider/of/flow/impl/OpenFlowRuleProvider.java b/providers/openflow/flow/src/main/java/org/onosproject/provider/of/flow/impl/OpenFlowRuleProvider.java
index 22b5246..d1867e2 100644
--- a/providers/openflow/flow/src/main/java/org/onosproject/provider/of/flow/impl/OpenFlowRuleProvider.java
+++ b/providers/openflow/flow/src/main/java/org/onosproject/provider/of/flow/impl/OpenFlowRuleProvider.java
@@ -135,12 +135,10 @@
     private static final int MIN_EXPECTED_BYTE_LEN = 56;
     private static final int SKIP_BYTES = 4;
 
-    //@Property(name = "flowPollFrequency", intValue = DEFAULT_POLL_FREQUENCY,
-    //        label = "Frequency (in seconds) for polling flow statistics")
+    /** Frequency (in seconds) for polling flow statistics. */
     private int flowPollFrequency = POLL_FREQUENCY_DEFAULT;
 
-    //@Property(name = "adaptiveFlowSampling", boolValue = DEFAULT_ADAPTIVE_FLOW_SAMPLING,
-    //        label = "Adaptive Flow Sampling is on or off")
+    /** Adaptive Flow Sampling is on or off. */
     private boolean adaptiveFlowSampling = ADAPTIVE_FLOW_SAMPLING_DEFAULT;
 
     private FlowRuleProviderService providerService;
diff --git a/providers/openflow/group/src/main/java/org/onosproject/provider/of/group/impl/OpenFlowGroupProvider.java b/providers/openflow/group/src/main/java/org/onosproject/provider/of/group/impl/OpenFlowGroupProvider.java
index a74e2c7..433cfb6 100644
--- a/providers/openflow/group/src/main/java/org/onosproject/provider/of/group/impl/OpenFlowGroupProvider.java
+++ b/providers/openflow/group/src/main/java/org/onosproject/provider/of/group/impl/OpenFlowGroupProvider.java
@@ -121,8 +121,7 @@
 
     private static final String COMPONENT = "org.onosproject.provider.of.group.impl.OpenFlowGroupProvider";
 
-    //@Property(name = "groupPollInterval", intValue = DEFAULT_POLL_INTERVAL,
-    //        label = "Frequency (in seconds) for polling group statistics")
+    /** Frequency (in seconds) for polling group statistics. */
     private int groupPollInterval = POLL_FREQUENCY_DEFAULT;
 
     private final InternalGroupProvider listener = new InternalGroupProvider();
diff --git a/providers/pcep/tunnel/src/main/java/org/onosproject/provider/pcep/tunnel/impl/PcepTunnelProvider.java b/providers/pcep/tunnel/src/main/java/org/onosproject/provider/pcep/tunnel/impl/PcepTunnelProvider.java
index 04612c45..d25c95f 100644
--- a/providers/pcep/tunnel/src/main/java/org/onosproject/provider/pcep/tunnel/impl/PcepTunnelProvider.java
+++ b/providers/pcep/tunnel/src/main/java/org/onosproject/provider/pcep/tunnel/impl/PcepTunnelProvider.java
@@ -183,8 +183,7 @@
     private static final int WAIT_TIME = 5;
     public static final String LSRID = "lsrId";
 
-    //@Property(name = "tunnelStatsPollFrequency", intValue = POLL_INTERVAL,
-    //        label = "Frequency (in seconds) for polling tunnel statistics")
+    /** Frequency (in seconds) for polling tunnel statistics. */
     private int tunnelStatsPollFrequency = POLL_FREQUENCY_DEFAULT;
 
     private static final String TUNNLE_NOT_NULL = "Create failed,The given port may be wrong or has been occupied.";
diff --git a/providers/rest/device/src/main/java/org/onosproject/provider/rest/device/impl/RestDeviceProvider.java b/providers/rest/device/src/main/java/org/onosproject/provider/rest/device/impl/RestDeviceProvider.java
index 56afd93..a302203 100644
--- a/providers/rest/device/src/main/java/org/onosproject/provider/rest/device/impl/RestDeviceProvider.java
+++ b/providers/rest/device/src/main/java/org/onosproject/provider/rest/device/impl/RestDeviceProvider.java
@@ -137,9 +137,7 @@
     @Reference(cardinality = ReferenceCardinality.MANDATORY)
     protected DriverService driverService;
 
-    //@Property(name = POLL_FREQUENCY, intValue = DEFAULT_POLL_FREQUENCY_SECONDS,
-    //        label = "Configure poll frequency for port status and statistics; " +
-    //                "default is 30 seconds")
+    /** Configure poll frequency for port status and statistics; default is 30 seconds. */
     private int pollFrequency = POLL_FREQUENCY_DEFAULT;
 
     private DeviceProviderService providerService;