[SEBA-593] Splitting dhcpl2relay app in implementation and api bundles

Change-Id: Ia9c060eeac3d74dc6829d774d32d288da0df203e
diff --git a/api/pom.xml b/api/pom.xml
new file mode 100644
index 0000000..e9a9fe1
--- /dev/null
+++ b/api/pom.xml
@@ -0,0 +1,67 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ Copyright 2016-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.
+  -->
+<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/xsd/maven-4.0.0.xsd">
+    <parent>
+        <artifactId>dhcpl2relay</artifactId>
+        <groupId>org.opencord</groupId>
+        <version>1.6.0-SNAPSHOT</version>
+    </parent>
+    <modelVersion>4.0.0</modelVersion>
+
+    <artifactId>dhcpl2relay-api</artifactId>
+
+    <packaging>bundle</packaging>
+
+    <description>DHCP L2 Relay application API</description>
+
+    <properties>
+        <sadis.api.version>3.0.0</sadis.api.version>
+    </properties>
+
+    <dependencies>
+        <dependency>
+            <groupId>org.onosproject</groupId>
+            <artifactId>onlab-junit</artifactId>
+            <version>${onos.version}</version>
+            <scope>test</scope>
+        </dependency>
+
+        <dependency>
+            <groupId>org.onosproject</groupId>
+            <artifactId>onos-core-serializers</artifactId>
+            <version>${onos.version}</version>
+        </dependency>
+
+        <dependency>
+            <groupId>org.opencord</groupId>
+            <artifactId>sadis-api</artifactId>
+            <version>${sadis.api.version}</version>
+        </dependency>
+    </dependencies>
+
+    <build>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.felix</groupId>
+                <artifactId>maven-bundle-plugin</artifactId>
+                <extensions>true</extensions>
+            </plugin>
+        </plugins>
+    </build>
+</project>
\ No newline at end of file
diff --git a/src/main/java/org/opencord/dhcpl2relay/DhcpAllocationInfo.java b/api/src/main/java/org/opencord/dhcpl2relay/DhcpAllocationInfo.java
similarity index 100%
rename from src/main/java/org/opencord/dhcpl2relay/DhcpAllocationInfo.java
rename to api/src/main/java/org/opencord/dhcpl2relay/DhcpAllocationInfo.java
diff --git a/src/main/java/org/opencord/dhcpl2relay/DhcpL2RelayEvent.java b/api/src/main/java/org/opencord/dhcpl2relay/DhcpL2RelayEvent.java
similarity index 100%
rename from src/main/java/org/opencord/dhcpl2relay/DhcpL2RelayEvent.java
rename to api/src/main/java/org/opencord/dhcpl2relay/DhcpL2RelayEvent.java
diff --git a/src/main/java/org/opencord/dhcpl2relay/DhcpL2RelayListener.java b/api/src/main/java/org/opencord/dhcpl2relay/DhcpL2RelayListener.java
similarity index 100%
rename from src/main/java/org/opencord/dhcpl2relay/DhcpL2RelayListener.java
rename to api/src/main/java/org/opencord/dhcpl2relay/DhcpL2RelayListener.java
diff --git a/src/main/java/org/opencord/dhcpl2relay/DhcpL2RelayService.java b/api/src/main/java/org/opencord/dhcpl2relay/DhcpL2RelayService.java
similarity index 100%
rename from src/main/java/org/opencord/dhcpl2relay/DhcpL2RelayService.java
rename to api/src/main/java/org/opencord/dhcpl2relay/DhcpL2RelayService.java
diff --git a/src/main/java/org/opencord/dhcpl2relay/package-info.java b/api/src/main/java/org/opencord/dhcpl2relay/package-info.java
similarity index 100%
rename from src/main/java/org/opencord/dhcpl2relay/package-info.java
rename to api/src/main/java/org/opencord/dhcpl2relay/package-info.java
diff --git a/app/app.xml b/app/app.xml
new file mode 100644
index 0000000..3bcf254
--- /dev/null
+++ b/app/app.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ 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.
+  -->
+<app name="org.opencord.dhcpl2relay" origin="ON.Lab" version="${project.version}"
+     category="default" url="http://onosproject.org" title="DHCP L2 Relay"
+     featuresRepo="mvn:${project.groupId}/${project.artifactId}/${project.version}/xml/features"
+     features="${project.artifactId}" apps="org.opencord.sadis">
+    <description>${project.description}</description>
+    <artifact>mvn:${project.groupId}/${project.artifactId}/${project.version}</artifact>
+    <artifact>mvn:${project.groupId}/dhcpl2relay-api/${project.version}</artifact>
+</app>
diff --git a/app/features.xml b/app/features.xml
new file mode 100644
index 0000000..ba4b895
--- /dev/null
+++ b/app/features.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<!--
+  ~ 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.
+  -->
+<features xmlns="http://karaf.apache.org/xmlns/features/v1.2.0" name="${project.artifactId}-${project.version}">
+    <feature name="${project.artifactId}" version="${project.version}"
+             description="${project.description}">
+        <feature>onos-api</feature>
+        <bundle>mvn:${project.groupId}/dhcpl2relay-api/${project.version}</bundle>
+        <bundle>mvn:${project.groupId}/${project.artifactId}/${project.version}</bundle>
+    </feature>
+</features>
diff --git a/app/pom.xml b/app/pom.xml
new file mode 100644
index 0000000..d27a579
--- /dev/null
+++ b/app/pom.xml
@@ -0,0 +1,186 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ Copyright 2016-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.
+  -->
+<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/xsd/maven-4.0.0.xsd">
+    <parent>
+        <artifactId>dhcpl2relay</artifactId>
+        <groupId>org.opencord</groupId>
+        <version>1.6.0-SNAPSHOT</version>
+    </parent>
+    <modelVersion>4.0.0</modelVersion>
+
+    <artifactId>dhcpl2relay-app</artifactId>
+
+    <packaging>bundle</packaging>
+    <description>DHCP L2 Realy application for CORD</description>
+
+    <properties>
+        <onos.app.name>org.opencord.dhcpl2relay</onos.app.name>
+        <onos.version>1.13.9-rc4</onos.version>
+        <onos.app.title>DHCP Relay Agent App</onos.app.title>
+        <onos.app.category>default</onos.app.category>
+        <onos.app.url>http://opencord.org</onos.app.url>
+        <onos.app.readme>DHCP L2 Relay Agent Application.</onos.app.readme>
+        <onos.app.requires>
+            org.opencord.sadis
+        </onos.app.requires>
+        <sadis.api.version>3.0.0</sadis.api.version>
+    </properties>
+
+    <dependencies>
+        <dependency>
+            <groupId>org.onosproject</groupId>
+            <artifactId>onos-api</artifactId>
+            <version>${onos.version}</version>
+        </dependency>
+
+        <dependency>
+            <groupId>org.opencord</groupId>
+            <artifactId>sadis-api</artifactId>
+            <version>${sadis.api.version}</version>
+        </dependency>
+
+        <dependency>
+            <groupId>org.opencord</groupId>
+            <artifactId>dhcpl2relay-api</artifactId>
+            <version>1.6.0-SNAPSHOT</version>
+            <scope>compile</scope>
+        </dependency>
+
+        <dependency>
+            <groupId>org.onosproject</groupId>
+            <artifactId>onos-incubator-api</artifactId>
+            <version>${onos.version}</version>
+        </dependency>
+
+        <dependency>
+            <groupId>org.onosproject</groupId>
+            <artifactId>onlab-osgi</artifactId>
+            <version>${onos.version}</version>
+        </dependency>
+
+        <dependency>
+            <groupId>junit</groupId>
+            <artifactId>junit</artifactId>
+            <scope>test</scope>
+        </dependency>
+
+        <dependency>
+            <groupId>org.onosproject</groupId>
+            <artifactId>onlab-junit</artifactId>
+            <version>${onos.version}</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.onosproject</groupId>
+            <artifactId>onos-cli</artifactId>
+            <version>${onos.version}</version>
+        </dependency>
+
+        <dependency>
+            <groupId>org.onosproject</groupId>
+            <artifactId>onos-api</artifactId>
+            <version>${onos.version}</version>
+            <scope>test</scope>
+            <classifier>tests</classifier>
+        </dependency>
+
+        <dependency>
+            <groupId>org.apache.felix</groupId>
+            <artifactId>org.apache.felix.scr.annotations</artifactId>
+            <scope>provided</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.osgi</groupId>
+            <artifactId>org.osgi.compendium</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.onosproject</groupId>
+            <artifactId>onlab-osgi</artifactId>
+            <version>${onos.version}</version>
+            <classifier>tests</classifier>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.easymock</groupId>
+            <artifactId>easymock</artifactId>
+            <scope>test</scope>
+        </dependency>
+
+        <dependency>
+            <groupId>org.apache.karaf.shell</groupId>
+            <artifactId>org.apache.karaf.shell.console</artifactId>
+        </dependency>
+
+        <dependency>
+            <groupId>org.onosproject</groupId>
+            <artifactId>onos-core-common</artifactId>
+            <version>${onos.version}</version>
+            <classifier>tests</classifier>
+            <scope>test</scope>
+        </dependency>
+    </dependencies>
+
+    <build>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.felix</groupId>
+                <artifactId>maven-bundle-plugin</artifactId>
+            </plugin>
+
+            <plugin>
+                <groupId>org.apache.felix</groupId>
+                <artifactId>maven-scr-plugin</artifactId>
+            </plugin>
+
+            <plugin>
+                <groupId>org.onosproject</groupId>
+                <artifactId>onos-maven-plugin</artifactId>
+                <version>1.11</version>
+            </plugin>
+        </plugins>
+    </build>
+
+    <repositories>
+        <repository>
+            <id>central</id>
+            <name>Central Repository</name>
+            <url>http://repo.maven.apache.org/maven2</url>
+            <layout>default</layout>
+            <snapshots>
+                <enabled>false</enabled>
+            </snapshots>
+            <releases>
+                <enabled>true</enabled>
+                <updatePolicy>always</updatePolicy>
+                <checksumPolicy>fail</checksumPolicy>
+            </releases>
+        </repository>
+
+        <repository>
+            <id>snapshots</id>
+            <url>https://oss.sonatype.org/content/repositories/snapshots</url>
+            <snapshots>
+                <enabled>true</enabled>
+                <updatePolicy>always</updatePolicy>
+                <checksumPolicy>fail</checksumPolicy>
+            </snapshots>
+        </repository>
+    </repositories>
+
+</project>
\ No newline at end of file
diff --git a/src/main/java/org/opencord/dhcpl2relay/DhcpL2Relay.java b/app/src/main/java/org/opencord/dhcpl2relay/impl/DhcpL2Relay.java
similarity index 98%
rename from src/main/java/org/opencord/dhcpl2relay/DhcpL2Relay.java
rename to app/src/main/java/org/opencord/dhcpl2relay/impl/DhcpL2Relay.java
index 7917561..cf35677 100755
--- a/src/main/java/org/opencord/dhcpl2relay/DhcpL2Relay.java
+++ b/app/src/main/java/org/opencord/dhcpl2relay/impl/DhcpL2Relay.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.opencord.dhcpl2relay;
+package org.opencord.dhcpl2relay.impl;
 
 import static org.onlab.packet.DHCP.DHCPOptionCode.OptionCode_MessageType;
 import static org.onlab.packet.MacAddress.valueOf;
@@ -82,7 +82,11 @@
 import org.onosproject.net.packet.PacketPriority;
 import org.onosproject.net.packet.PacketProcessor;
 import org.onosproject.net.packet.PacketService;
-import org.opencord.dhcpl2relay.packet.DhcpOption82;
+import org.opencord.dhcpl2relay.DhcpAllocationInfo;
+import org.opencord.dhcpl2relay.DhcpL2RelayEvent;
+import org.opencord.dhcpl2relay.DhcpL2RelayListener;
+import org.opencord.dhcpl2relay.DhcpL2RelayService;
+import org.opencord.dhcpl2relay.impl.packet.DhcpOption82;
 import org.opencord.sadis.BaseInformationService;
 import org.opencord.sadis.SadisService;
 import org.opencord.sadis.SubscriberAndDeviceInformation;
diff --git a/src/main/java/org/opencord/dhcpl2relay/DhcpL2RelayAllocationsCommand.java b/app/src/main/java/org/opencord/dhcpl2relay/impl/DhcpL2RelayAllocationsCommand.java
similarity index 97%
rename from src/main/java/org/opencord/dhcpl2relay/DhcpL2RelayAllocationsCommand.java
rename to app/src/main/java/org/opencord/dhcpl2relay/impl/DhcpL2RelayAllocationsCommand.java
index 8c91ec6..adb0bf0 100644
--- a/src/main/java/org/opencord/dhcpl2relay/DhcpL2RelayAllocationsCommand.java
+++ b/app/src/main/java/org/opencord/dhcpl2relay/impl/DhcpL2RelayAllocationsCommand.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.opencord.dhcpl2relay;
+package org.opencord.dhcpl2relay.impl;
 
 import org.apache.karaf.shell.commands.Command;
 import org.onosproject.cli.AbstractShellCommand;
diff --git a/src/main/java/org/opencord/dhcpl2relay/DhcpL2RelayConfig.java b/app/src/main/java/org/opencord/dhcpl2relay/impl/DhcpL2RelayConfig.java
similarity index 98%
rename from src/main/java/org/opencord/dhcpl2relay/DhcpL2RelayConfig.java
rename to app/src/main/java/org/opencord/dhcpl2relay/impl/DhcpL2RelayConfig.java
index e939c78..9a47ab3 100755
--- a/src/main/java/org/opencord/dhcpl2relay/DhcpL2RelayConfig.java
+++ b/app/src/main/java/org/opencord/dhcpl2relay/impl/DhcpL2RelayConfig.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.opencord.dhcpl2relay;
+package org.opencord.dhcpl2relay.impl;
 
 import com.fasterxml.jackson.databind.JsonNode;
 import com.fasterxml.jackson.databind.node.ArrayNode;
diff --git a/src/main/java/org/opencord/dhcpl2relay/packet/package-info.java b/app/src/main/java/org/opencord/dhcpl2relay/impl/package-info.java
old mode 100644
new mode 100755
similarity index 75%
copy from src/main/java/org/opencord/dhcpl2relay/packet/package-info.java
copy to app/src/main/java/org/opencord/dhcpl2relay/impl/package-info.java
index 40880f8..f5617d6
--- a/src/main/java/org/opencord/dhcpl2relay/packet/package-info.java
+++ b/app/src/main/java/org/opencord/dhcpl2relay/impl/package-info.java
@@ -7,14 +7,14 @@
  *
  *     http://www.apache.org/licenses/LICENSE-2.0
  *
- * Unless required by applicable lacd ..
- * w or agreed to in writing, software
+ * 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.
  */
+
 /**
- * Utilities for decoding and encoding DHCP options.
+ *  DHCP-L2RELAY application.
  */
-package org.opencord.dhcpl2relay.packet;
+package org.opencord.dhcpl2relay.impl;
diff --git a/src/main/java/org/opencord/dhcpl2relay/packet/DhcpOption82.java b/app/src/main/java/org/opencord/dhcpl2relay/impl/packet/DhcpOption82.java
similarity index 97%
rename from src/main/java/org/opencord/dhcpl2relay/packet/DhcpOption82.java
rename to app/src/main/java/org/opencord/dhcpl2relay/impl/packet/DhcpOption82.java
index 7f39258..bad55f9 100644
--- a/src/main/java/org/opencord/dhcpl2relay/packet/DhcpOption82.java
+++ b/app/src/main/java/org/opencord/dhcpl2relay/impl/packet/DhcpOption82.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.opencord.dhcpl2relay.packet;
+package org.opencord.dhcpl2relay.impl.packet;
 
 import java.io.ByteArrayOutputStream;
 import java.nio.charset.StandardCharsets;
diff --git a/src/main/java/org/opencord/dhcpl2relay/packet/package-info.java b/app/src/main/java/org/opencord/dhcpl2relay/impl/packet/package-info.java
similarity index 93%
rename from src/main/java/org/opencord/dhcpl2relay/packet/package-info.java
rename to app/src/main/java/org/opencord/dhcpl2relay/impl/packet/package-info.java
index 40880f8..19362cd 100644
--- a/src/main/java/org/opencord/dhcpl2relay/packet/package-info.java
+++ b/app/src/main/java/org/opencord/dhcpl2relay/impl/packet/package-info.java
@@ -17,4 +17,4 @@
 /**
  * Utilities for decoding and encoding DHCP options.
  */
-package org.opencord.dhcpl2relay.packet;
+package org.opencord.dhcpl2relay.impl.packet;
diff --git a/src/test/java/org/opencord/dhcpl2relay/DhcpL2RelayTest.java b/app/src/test/java/org/opencord/dhcpl2relay/impl/DhcpL2RelayTest.java
similarity index 98%
rename from src/test/java/org/opencord/dhcpl2relay/DhcpL2RelayTest.java
rename to app/src/test/java/org/opencord/dhcpl2relay/impl/DhcpL2RelayTest.java
index 1117804..17fb417 100755
--- a/src/test/java/org/opencord/dhcpl2relay/DhcpL2RelayTest.java
+++ b/app/src/test/java/org/opencord/dhcpl2relay/impl/DhcpL2RelayTest.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.opencord.dhcpl2relay;
+package org.opencord.dhcpl2relay.impl;
 
 import static org.junit.Assert.assertEquals;
 
@@ -60,7 +60,7 @@
 import org.onosproject.net.flowobjective.FlowObjectiveServiceAdapter;
 import org.onosproject.net.host.HostServiceAdapter;
 import org.onosproject.net.provider.ProviderId;
-import org.opencord.dhcpl2relay.packet.DhcpOption82;
+import org.opencord.dhcpl2relay.impl.packet.DhcpOption82;
 import org.opencord.sadis.SubscriberAndDeviceInformation;
 import org.opencord.sadis.BandwidthProfileInformation;
 import org.opencord.sadis.BaseInformationService;
diff --git a/src/test/java/org/opencord/dhcpl2relay/DhcpL2RelayTestBase.java b/app/src/test/java/org/opencord/dhcpl2relay/impl/DhcpL2RelayTestBase.java
similarity index 99%
rename from src/test/java/org/opencord/dhcpl2relay/DhcpL2RelayTestBase.java
rename to app/src/test/java/org/opencord/dhcpl2relay/impl/DhcpL2RelayTestBase.java
index fb519cf..5318adc 100755
--- a/src/test/java/org/opencord/dhcpl2relay/DhcpL2RelayTestBase.java
+++ b/app/src/test/java/org/opencord/dhcpl2relay/impl/DhcpL2RelayTestBase.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package org.opencord.dhcpl2relay;
+package org.opencord.dhcpl2relay.impl;
 
 import static org.junit.Assert.fail;
 
diff --git a/pom.xml b/pom.xml
index f3e55e5..24ae825 100755
--- a/pom.xml
+++ b/pom.xml
@@ -27,57 +27,51 @@
     <groupId>org.opencord</groupId>
     <artifactId>dhcpl2relay</artifactId>
     <version>1.6.0-SNAPSHOT</version>
-    <packaging>bundle</packaging>
+    <packaging>pom</packaging>
 
     <description>DHCP L2 Relay Agent</description>
     <url>http://opencord.org</url>
 
     <properties>
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
-        <onos.app.name>org.opencord.dhcpl2relay</onos.app.name>
-        <onos.app.title>DHCP Relay Agent App</onos.app.title>
-        <onos.app.origin>ON.Lab</onos.app.origin>
-        <onos.app.category>default</onos.app.category>
-        <onos.app.url>http://opencord.org</onos.app.url>
-        <onos.app.readme>DHCP L2 Relay Agent Application.</onos.app.readme>
+        <onos.version>1.13.9-rc4</onos.version>
         <onos.app.requires>
             org.opencord.sadis
         </onos.app.requires>
-        <onos.version>1.13.9-rc4</onos.version>
-        <sadis.api.version>3.1.0-SNAPSHOT</sadis.api.version>
+        <sadis.api.version>3.0.0</sadis.api.version>
     </properties>
 
+    <modules>
+        <module>app</module>
+        <module>api</module>
+    </modules>
+
     <dependencies>
         <dependency>
             <groupId>org.onosproject</groupId>
             <artifactId>onos-api</artifactId>
             <version>${onos.version}</version>
         </dependency>
-
         <dependency>
             <groupId>org.opencord</groupId>
             <artifactId>sadis-api</artifactId>
-	    <version>${sadis.api.version}</version>
+           <version>${sadis.api.version}</version>
         </dependency>
-
         <dependency>
             <groupId>org.onosproject</groupId>
             <artifactId>onos-incubator-api</artifactId>
             <version>${onos.version}</version>
         </dependency>
-
         <dependency>
             <groupId>org.onosproject</groupId>
             <artifactId>onlab-osgi</artifactId>
             <version>${onos.version}</version>
         </dependency>
-
         <dependency>
             <groupId>junit</groupId>
             <artifactId>junit</artifactId>
             <scope>test</scope>
         </dependency>
-
         <dependency>
             <groupId>org.onosproject</groupId>
             <artifactId>onlab-junit</artifactId>
@@ -89,7 +83,6 @@
             <artifactId>onos-cli</artifactId>
             <version>${onos.version}</version>
         </dependency>
-
         <dependency>
             <groupId>org.onosproject</groupId>
             <artifactId>onos-api</artifactId>
@@ -97,7 +90,6 @@
             <scope>test</scope>
             <classifier>tests</classifier>
         </dependency>
-
         <dependency>
             <groupId>org.apache.felix</groupId>
             <artifactId>org.apache.felix.scr.annotations</artifactId>
@@ -119,19 +111,6 @@
             <artifactId>easymock</artifactId>
             <scope>test</scope>
         </dependency>
-
-        <dependency>
-            <groupId>org.apache.karaf.shell</groupId>
-            <artifactId>org.apache.karaf.shell.console</artifactId>
-        </dependency>
-
-        <dependency>
-            <groupId>org.onosproject</groupId>
-            <artifactId>onos-core-common</artifactId>
-            <version>${onos.version}</version>
-            <classifier>tests</classifier>
-            <scope>test</scope>
-        </dependency>
     </dependencies>
 
     <build>
diff --git a/src/main/resources/OSGI-INF/blueprint/shell-config.xml b/src/main/resources/OSGI-INF/blueprint/shell-config.xml
deleted file mode 100644
index 49c3d35..0000000
--- a/src/main/resources/OSGI-INF/blueprint/shell-config.xml
+++ /dev/null
@@ -1,23 +0,0 @@
-<!--
-  ~ Copyright 2016-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.
-  -->
-<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0">
-
-    <command-bundle xmlns="http://karaf.apache.org/xmlns/shell/v1.1.0">
-        <command>
-            <action class="org.opencord.dhcpl2relay.DhcpL2RelayAllocationsCommand"/>
-        </command>
-    </command-bundle>
-</blueprint>
diff --git a/src/test/resources/dhcp-l2relay.json b/src/test/resources/dhcp-l2relay.json
deleted file mode 100755
index 2aae8bf..0000000
--- a/src/test/resources/dhcp-l2relay.json
+++ /dev/null
@@ -1,9 +0,0 @@
-{
-  "apps": {
-    "org.opencord.dhcpl2relay" : {
-      "dhcpl2relay" : {
-        "dhcpserverConnectPoint": "of:0000000000000002/2"
-      }
-    }
-  }
-}