Fixed duplicate package issue and javaDoc warnings

Change-Id: I3c6456b650516e978e446471a3ffc7b693dab9c4
diff --git a/apps/scalablegateway/BUCK b/apps/scalablegateway/BUCK
index ff5f62d..d4fdb0d 100644
--- a/apps/scalablegateway/BUCK
+++ b/apps/scalablegateway/BUCK
@@ -1,11 +1,14 @@
-BUNDLES = [
-    '//apps/scalablegateway/api:onos-apps-scalablegateway-api',
-    '//apps/scalablegateway/app:onos-apps-scalablegateway-app',
+COMPILE_DEPS = [
+    '//lib:CORE_DEPS',
 ]
 
+osgi_jar_with_tests (
+    deps = COMPILE_DEPS,
+)
+
 onos_app (
   title = 'Scalable GW App',
   category = 'Utility',
   url = 'http://onosproject.org',
-  included_bundles = BUNDLES,
+  description = 'Scalable gateway service',
 )
diff --git a/apps/scalablegateway/api/BUCK b/apps/scalablegateway/api/BUCK
deleted file mode 100644
index ee55792..0000000
--- a/apps/scalablegateway/api/BUCK
+++ /dev/null
@@ -1,7 +0,0 @@
-COMPILE_DEPS = [
-    '//lib:CORE_DEPS',
-]
-
-osgi_jar_with_tests (
-    deps = COMPILE_DEPS,
-)
\ No newline at end of file
diff --git a/apps/scalablegateway/api/pom.xml b/apps/scalablegateway/api/pom.xml
deleted file mode 100644
index 353f424..0000000
--- a/apps/scalablegateway/api/pom.xml
+++ /dev/null
@@ -1,39 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  ~ Copyright 2016-present Open Networking Laboratory
-  ~
-  ~ 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.
-  -->
-<project xmlns="http://maven.apache.org/POM/4.0.0"
-         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-    <modelVersion>4.0.0</modelVersion>
-
-    <parent>
-        <groupId>org.onosproject</groupId>
-        <artifactId>onos-scalablegateway</artifactId>
-        <version>1.6.0-SNAPSHOT</version>
-        <relativePath>../pom.xml</relativePath>
-    </parent>
-
-    <artifactId>onos-app-scalablegateway-api</artifactId>
-    <packaging>bundle</packaging>
-
-    <dependencies>
-        <dependency>
-            <groupId>org.onosproject</groupId>
-            <artifactId>onos-api</artifactId>
-        </dependency>
-    </dependencies>
-
-</project>
\ No newline at end of file
diff --git a/apps/scalablegateway/app/BUCK b/apps/scalablegateway/app/BUCK
deleted file mode 100644
index 9bfb40c..0000000
--- a/apps/scalablegateway/app/BUCK
+++ /dev/null
@@ -1,13 +0,0 @@
-COMPILE_DEPS = [
-    '//lib:CORE_DEPS',
-    '//apps/scalablegateway/api:onos-apps-scalablegateway-api',
-]
-
-TEST_DEPS = [
-    '//lib:TEST_ADAPTERS',
-]
-
-osgi_jar_with_tests (
-    deps = COMPILE_DEPS,
-    test_deps = TEST_DEPS,
-)
diff --git a/apps/scalablegateway/app/pom.xml b/apps/scalablegateway/app/pom.xml
deleted file mode 100644
index 23105ac..0000000
--- a/apps/scalablegateway/app/pom.xml
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  ~ Copyright 2016-present Open Networking Laboratory
-  ~
-  ~ 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.
-  -->
-<project xmlns="http://maven.apache.org/POM/4.0.0"
-         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-    <modelVersion>4.0.0</modelVersion>
-
-    <parent>
-        <groupId>org.onosproject</groupId>
-        <artifactId>onos-scalablegateway</artifactId>
-        <version>1.6.0-SNAPSHOT</version>
-        <relativePath>../pom.xml</relativePath>
-    </parent>
-
-    <artifactId>onos-app-scalablegateway-app</artifactId>
-    <packaging>bundle</packaging>
-
-    <dependencies>
-        <dependency>
-            <groupId>org.onosproject</groupId>
-            <artifactId>onos-api</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.onosproject</groupId>
-            <artifactId>onos-app-scalablegateway-api</artifactId>
-            <version>${project.version}</version>
-        </dependency>
-    </dependencies>
-
-</project>
diff --git a/apps/scalablegateway/app/src/main/java/org/onosproject/scalablegateway/package-info.java b/apps/scalablegateway/app/src/main/java/org/onosproject/scalablegateway/package-info.java
deleted file mode 100644
index 1768150..0000000
--- a/apps/scalablegateway/app/src/main/java/org/onosproject/scalablegateway/package-info.java
+++ /dev/null
@@ -1,20 +0,0 @@
-/*
- * Copyright 2016-present Open Networking Laboratory
- *
- * 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.
- */
-
-/**
- * Application for ScaleableGateway management.
- */
-package org.onosproject.scalablegateway;
\ No newline at end of file
diff --git a/apps/scalablegateway/pom.xml b/apps/scalablegateway/pom.xml
index b68a0c5..8124baf 100644
--- a/apps/scalablegateway/pom.xml
+++ b/apps/scalablegateway/pom.xml
@@ -27,13 +27,26 @@
     </parent>
 
     <artifactId>onos-scalablegateway</artifactId>
-    <packaging>pom</packaging>
+    <packaging>bundle</packaging>
 
-    <description>ONOS ScalableGateway applications</description>
+    <description>ONOS Scalable Gateway applications</description>
 
-    <modules>
-        <module>api</module>
-        <module>app</module>
-    </modules>
+    <properties>
+        <onos.app.name>org.onosproject.scalablegateway</onos.app.name>
+        <onos.app.title>Scalable Gateway App</onos.app.title>
+        <onos.app.category>Utility</onos.app.category>
+        <onos.app.url>http://onosproject.org</onos.app.url>
+        <onos.app.readm>Scalable Gateway Application.</onos.app.readm>
+    </properties>
 
+    <dependencies>
+        <dependency>
+            <groupId>org.osgi</groupId>
+            <artifactId>org.osgi.compendium</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.onosproject</groupId>
+            <artifactId>onos-api</artifactId>
+        </dependency>
+    </dependencies>
 </project>
diff --git a/apps/scalablegateway/api/src/main/java/org/onosproject/scalablegateway/GatewayNode.java b/apps/scalablegateway/src/main/java/org/onosproject/scalablegateway/api/GatewayNode.java
similarity index 98%
rename from apps/scalablegateway/api/src/main/java/org/onosproject/scalablegateway/GatewayNode.java
rename to apps/scalablegateway/src/main/java/org/onosproject/scalablegateway/api/GatewayNode.java
index 1e2a5ed..6df49ce 100644
--- a/apps/scalablegateway/api/src/main/java/org/onosproject/scalablegateway/GatewayNode.java
+++ b/apps/scalablegateway/src/main/java/org/onosproject/scalablegateway/api/GatewayNode.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.scalablegateway;
+package org.onosproject.scalablegateway.api;
 
 import com.google.common.collect.ImmutableList;
 import org.onlab.packet.Ip4Address;
diff --git a/apps/scalablegateway/api/src/main/java/org/onosproject/scalablegateway/ScalableGatewayService.java b/apps/scalablegateway/src/main/java/org/onosproject/scalablegateway/api/ScalableGatewayService.java
similarity index 95%
rename from apps/scalablegateway/api/src/main/java/org/onosproject/scalablegateway/ScalableGatewayService.java
rename to apps/scalablegateway/src/main/java/org/onosproject/scalablegateway/api/ScalableGatewayService.java
index 403855b..bd1b29e 100644
--- a/apps/scalablegateway/api/src/main/java/org/onosproject/scalablegateway/ScalableGatewayService.java
+++ b/apps/scalablegateway/src/main/java/org/onosproject/scalablegateway/api/ScalableGatewayService.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.scalablegateway;
+package org.onosproject.scalablegateway.api;
 
 import org.onosproject.core.GroupId;
 import org.onosproject.net.DeviceId;
@@ -45,6 +45,7 @@
     /**
      * Returns group id for gateway load balance.
      *
+     * @param srcDeviceId source device id
      * @return The group id
      */
     GroupId getGroupIdForGatewayLoadBalance(DeviceId srcDeviceId);
diff --git a/apps/scalablegateway/api/src/main/java/org/onosproject/scalablegateway/package-info.java b/apps/scalablegateway/src/main/java/org/onosproject/scalablegateway/api/package-info.java
similarity index 93%
copy from apps/scalablegateway/api/src/main/java/org/onosproject/scalablegateway/package-info.java
copy to apps/scalablegateway/src/main/java/org/onosproject/scalablegateway/api/package-info.java
index 1768150..7eaa692 100644
--- a/apps/scalablegateway/api/src/main/java/org/onosproject/scalablegateway/package-info.java
+++ b/apps/scalablegateway/src/main/java/org/onosproject/scalablegateway/api/package-info.java
@@ -17,4 +17,4 @@
 /**
  * Application for ScaleableGateway management.
  */
-package org.onosproject.scalablegateway;
\ No newline at end of file
+package org.onosproject.scalablegateway.api;
\ No newline at end of file
diff --git a/apps/scalablegateway/app/src/main/java/org/onosproject/scalablegateway/ScalableGatewayManager.java b/apps/scalablegateway/src/main/java/org/onosproject/scalablegateway/impl/ScalableGatewayManager.java
similarity index 90%
rename from apps/scalablegateway/app/src/main/java/org/onosproject/scalablegateway/ScalableGatewayManager.java
rename to apps/scalablegateway/src/main/java/org/onosproject/scalablegateway/impl/ScalableGatewayManager.java
index eba3de8..3294a09 100644
--- a/apps/scalablegateway/app/src/main/java/org/onosproject/scalablegateway/ScalableGatewayManager.java
+++ b/apps/scalablegateway/src/main/java/org/onosproject/scalablegateway/impl/ScalableGatewayManager.java
@@ -14,11 +14,13 @@
  * limitations under the License.
  */
 
-package org.onosproject.scalablegateway;
+package org.onosproject.scalablegateway.impl;
 
 import org.onosproject.core.GroupId;
 import org.onosproject.net.DeviceId;
 import org.onosproject.net.PortNumber;
+import org.onosproject.scalablegateway.api.GatewayNode;
+import org.onosproject.scalablegateway.api.ScalableGatewayService;
 
 import java.util.List;
 
diff --git a/apps/scalablegateway/api/src/main/java/org/onosproject/scalablegateway/package-info.java b/apps/scalablegateway/src/main/java/org/onosproject/scalablegateway/impl/package-info.java
similarity index 93%
rename from apps/scalablegateway/api/src/main/java/org/onosproject/scalablegateway/package-info.java
rename to apps/scalablegateway/src/main/java/org/onosproject/scalablegateway/impl/package-info.java
index 1768150..f666d0c 100644
--- a/apps/scalablegateway/api/src/main/java/org/onosproject/scalablegateway/package-info.java
+++ b/apps/scalablegateway/src/main/java/org/onosproject/scalablegateway/impl/package-info.java
@@ -17,4 +17,4 @@
 /**
  * Application for ScaleableGateway management.
  */
-package org.onosproject.scalablegateway;
\ No newline at end of file
+package org.onosproject.scalablegateway.impl;
\ No newline at end of file