Fixing component properties for various providers.

Change-Id: I909c84958109f61e10a542774a2d4b82c428c0f5
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 a43c295..a74e2c7 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
@@ -84,12 +84,17 @@
 import java.util.concurrent.atomic.AtomicLong;
 
 import static org.onlab.util.Tools.getIntegerProperty;
+import static org.onosproject.provider.of.group.impl.OsgiPropertyConstants.POLL_FREQUENCY;
+import static org.onosproject.provider.of.group.impl.OsgiPropertyConstants.POLL_FREQUENCY_DEFAULT;
 import static org.slf4j.LoggerFactory.getLogger;
 
 /**
  * Provider which uses an OpenFlow controller to handle Group.
  */
-@Component(immediate = true)
+@Component(immediate = true,
+        property = {
+            POLL_FREQUENCY + ":Integer=" + POLL_FREQUENCY_DEFAULT,
+        })
 public class OpenFlowGroupProvider extends AbstractProvider implements GroupProvider {
 
     private final Logger log = getLogger(getClass());
@@ -114,13 +119,11 @@
 
     private GroupProviderService providerService;
 
-    private static final int DEFAULT_POLL_INTERVAL = 10;
     private static final String COMPONENT = "org.onosproject.provider.of.group.impl.OpenFlowGroupProvider";
-    private static final String GROUP_POLL_INTERVAL_CONST = "groupPollInterval";
 
     //@Property(name = "groupPollInterval", intValue = DEFAULT_POLL_INTERVAL,
     //        label = "Frequency (in seconds) for polling group statistics")
-    private int groupPollInterval = DEFAULT_POLL_INTERVAL;
+    private int groupPollInterval = POLL_FREQUENCY_DEFAULT;
 
     private final InternalGroupProvider listener = new InternalGroupProvider();
 
@@ -173,7 +176,7 @@
     @Modified
     public void modified(ComponentContext context) {
         Dictionary<?, ?> properties = context != null ? context.getProperties() : new Properties();
-        Integer newGroupPollInterval = getIntegerProperty(properties, GROUP_POLL_INTERVAL_CONST);
+        Integer newGroupPollInterval = getIntegerProperty(properties, POLL_FREQUENCY);
         if (newGroupPollInterval != null && newGroupPollInterval > 0
                 && newGroupPollInterval != groupPollInterval) {
             groupPollInterval = newGroupPollInterval;
@@ -181,7 +184,7 @@
         } else if (newGroupPollInterval != null && newGroupPollInterval <= 0) {
             log.warn("groupPollInterval must be greater than 0");
             //If the new value <= 0 reset property with old value.
-            cfgService.setProperty(COMPONENT, GROUP_POLL_INTERVAL_CONST, Integer.toString(groupPollInterval));
+            cfgService.setProperty(COMPONENT, POLL_FREQUENCY, Integer.toString(groupPollInterval));
         }
     }
 
diff --git a/providers/openflow/group/src/main/java/org/onosproject/provider/of/group/impl/OsgiPropertyConstants.java b/providers/openflow/group/src/main/java/org/onosproject/provider/of/group/impl/OsgiPropertyConstants.java
new file mode 100644
index 0000000..43bd7e4
--- /dev/null
+++ b/providers/openflow/group/src/main/java/org/onosproject/provider/of/group/impl/OsgiPropertyConstants.java
@@ -0,0 +1,29 @@
+/*
+ * 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.of.group.impl;
+
+/**
+ * Constants for default values of configurable properties.
+ */
+public final class OsgiPropertyConstants {
+
+    private OsgiPropertyConstants() {}
+
+    public static final String POLL_FREQUENCY = "groupPollInterval";
+    public static final int POLL_FREQUENCY_DEFAULT = 10;
+
+}