Merge "Refactor TenantManage"
authorXia Yin Ben <xiayinben@huawei.com>
Tue, 1 Dec 2015 02:13:01 +0000 (02:13 +0000)
committerGerrit Code Review <gerrit@opendaylight.org>
Tue, 1 Dec 2015 02:13:01 +0000 (02:13 +0000)
nemo-impl/src/main/java/org/opendaylight/nemo/intent/algorithm/Edge.java
nemo-impl/src/main/java/org/opendaylight/nemo/intent/algorithm/Vertex.java
nemo-impl/src/main/java/org/opendaylight/nemo/user/UserManager.java
nemo-impl/src/main/java/org/opendaylight/yang/gen/v1/urn/opendaylight/params/xml/ns/yang/nemo/engine/impl/rev151010/NemoEngineModule.java
nemo-impl/src/test/java/org/opendaylight/nemo/user/UserManagerTest.java
nemo-renderers/openflow-renderer/src/test/java/org/opendaylight/nemo/renderer/openflow/physicalnetwork/DataBrokerAdapterTest.java [moved from nemo-renderers/openflow-renderer/src/test/java/org/opendaylight/nemo/renderer/openflow/phtysicalnetwork/DataBrokerAdapterTest.java with 100% similarity]
nemo-renderers/openflow-renderer/src/test/java/org/opendaylight/nemo/renderer/openflow/physicalnetwork/OFLinkListenerTest.java [moved from nemo-renderers/openflow-renderer/src/test/java/org/opendaylight/nemo/renderer/openflow/phtysicalnetwork/OFLinkListenerTest.java with 100% similarity]
nemo-renderers/openflow-renderer/src/test/java/org/opendaylight/nemo/renderer/openflow/physicalnetwork/OFNodeListenerTest.java [moved from nemo-renderers/openflow-renderer/src/test/java/org/opendaylight/nemo/renderer/openflow/phtysicalnetwork/OFNodeListenerTest.java with 100% similarity]
nemo-renderers/openflow-renderer/src/test/java/org/opendaylight/nemo/renderer/openflow/physicalnetwork/OFPacketInListenerTest.java [moved from nemo-renderers/openflow-renderer/src/test/java/org/opendaylight/nemo/renderer/openflow/phtysicalnetwork/OFPacketInListenerTest.java with 100% similarity]
nemo-renderers/openflow-renderer/src/test/java/org/opendaylight/nemo/renderer/openflow/physicalnetwork/PhysicalFlowUtilsTest.java [moved from nemo-renderers/openflow-renderer/src/test/java/org/opendaylight/nemo/renderer/openflow/phtysicalnetwork/PhysicalFlowUtilsTest.java with 100% similarity]
nemo-renderers/openflow-renderer/src/test/java/org/opendaylight/nemo/renderer/openflow/physicalnetwork/UtilsTest.java [moved from nemo-renderers/openflow-renderer/src/test/java/org/opendaylight/nemo/renderer/openflow/phtysicalnetwork/UtilsTest.java with 100% similarity]

index efc6c6a0fd74f0caba136af14dd4c870aa4e4365..8476494820bf27be374c740f5d97f6ce826a5637 100644 (file)
@@ -14,7 +14,7 @@ package org.opendaylight.nemo.intent.algorithm;
  * @author Zhigang Ji\r
  */\r
 public class Edge {\r
-    private String id;\r
+    private final String id;\r
     private String src;\r
     private String dest;\r
     private long metric;\r
@@ -66,16 +66,27 @@ public class Edge {
 \r
     @Override\r
     public int hashCode() {\r
-        return super.hashCode();\r
+        final int prime = 31;\r
+        int result = 1;\r
+        result = prime * result + ((id == null) ? 0 : id.hashCode());\r
+        return result;\r
     }\r
 \r
     @Override\r
     public boolean equals(Object obj) {\r
-        if ( obj instanceof Edge ) {\r
-            return ((Edge)obj).getId().equals(id);\r
-        }\r
-\r
-        return false;\r
+        if (this == obj)\r
+            return true;\r
+        if (obj == null)\r
+            return false;\r
+        if (getClass() != obj.getClass())\r
+            return false;\r
+        Edge other = (Edge) obj;\r
+        if (id == null) {\r
+            if (other.id != null)\r
+                return false;\r
+        } else if (!id.equals(other.id))\r
+            return false;\r
+        return true;\r
     }\r
 \r
     @Override\r
index 2dff929e25e73fab96af16f89ceb925072ac164e..8d6e56107222ef4afce95e8fc450bb4bfd87127f 100644 (file)
@@ -14,7 +14,7 @@ package org.opendaylight.nemo.intent.algorithm;
  * @author Zhigang Ji\r
  */\r
 public class Vertex {\r
-    private String id;\r
+    private final String id;\r
 \r
     public Vertex(String id) {\r
         super();\r
@@ -30,16 +30,27 @@ public class Vertex {
 \r
     @Override\r
     public int hashCode() {\r
-        return super.hashCode();\r
+        final int prime = 31;\r
+        int result = 1;\r
+        result = prime * result + ((id == null) ? 0 : id.hashCode());\r
+        return result;\r
     }\r
 \r
     @Override\r
     public boolean equals(Object obj) {\r
-        if ( obj instanceof Vertex ) {\r
-            return ((Vertex)obj).getId().equals(id);\r
-        }\r
-\r
-        return false;\r
+        if (this == obj)\r
+            return true;\r
+        if (obj == null)\r
+            return false;\r
+        if (getClass() != obj.getClass())\r
+            return false;\r
+        Vertex other = (Vertex) obj;\r
+        if (id == null) {\r
+            if (other.id != null)\r
+                return false;\r
+        } else if (!id.equals(other.id))\r
+            return false;\r
+        return true;\r
     }\r
 \r
     @Override\r
index 78f455e8330609eec41e3e9d70db587dd4b8fc98..2d4ca33217ddb1b8c9cdfa9af9dc8de8e6116ff6 100644 (file)
@@ -11,8 +11,6 @@ import static org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.n
 import static org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.nemo.intent.rev151010.CommonRpcResult.ResultCode.Ok; \r
 \r
 import org.opendaylight.controller.md.sal.binding.api.DataBroker;\r
-import org.opendaylight.controller.sal.binding.api.BindingAwareBroker.RpcRegistration;\r
-import org.opendaylight.controller.sal.binding.api.RpcProviderRegistry;\r
 import org.opendaylight.nemo.intent.IntentResolutionException;\r
 import org.opendaylight.nemo.intent.IntentResolver;\r
 import org.opendaylight.nemo.intent.computation.VNMappingException;\r
@@ -35,10 +33,9 @@ import java.util.concurrent.Future;
 /**\r
  * Created by z00293636 on 2015/9/7.\r
  */\r
-public class UserManager implements NemoIntentService, AutoCloseable {\r
+public class UserManager implements NemoIntentService {\r
 \r
-    private DataBroker dataBroker;\r
-    private RpcProviderRegistry rpcProviderRegistry;\r
+    private final DataBroker dataBroker;\r
 \r
     private VNSpaceManagement vnSpaceManagement;\r
     private RegisterUser registerUser;\r
@@ -55,15 +52,11 @@ public class UserManager implements NemoIntentService, AutoCloseable {
     Boolean transaction;\r
     Boolean informresolver;\r
 \r
-    private RpcRegistration<NemoIntentService> rpcRegistration;\r
-\r
-    public UserManager(DataBroker dataBroker, RpcProviderRegistry rpcProviderRegistry,\r
-                       IntentResolver intentResolver)\r
+    public UserManager(DataBroker dataBroker0, IntentResolver intentResolver0)\r
     {\r
-        this.dataBroker = dataBroker;\r
-        this.rpcProviderRegistry = rpcProviderRegistry;\r
+        this.dataBroker = dataBroker0;\r
 \r
-        this.intentResolver = intentResolver;\r
+        this.intentResolver = intentResolver0;\r
         vnSpaceManagement = new VNSpaceManagement(dataBroker);\r
         tenantManage = new TenantManage(dataBroker);\r
         aaa = new AAA(tenantManage);\r
@@ -78,8 +71,6 @@ public class UserManager implements NemoIntentService, AutoCloseable {
 \r
         transaction = false;\r
         informresolver = false;\r
-\r
-        rpcRegistration = rpcProviderRegistry.addRpcImplementation(NemoIntentService.class, this);\r
     }\r
 \r
     @Override\r
@@ -245,11 +236,4 @@ public class UserManager implements NemoIntentService, AutoCloseable {
 \r
         return RpcResultBuilder.success(outputBuilder).buildFuture();\r
     }\r
-\r
-    @Override\r
-    public void close() throws Exception {\r
-        if ( null != rpcRegistration ) {\r
-            rpcRegistration.close();\r
-        }\r
-    }\r
 }\r
index 2442f1ca8165da5dd3374cbe9947daceee4283b4..5e213e08e1835874098c462a7e4ff656f783c0f2 100644 (file)
@@ -1,9 +1,11 @@
 package org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.nemo.engine.impl.rev151010;
 
 import org.opendaylight.controller.md.sal.binding.api.DataBroker;
+import org.opendaylight.controller.sal.binding.api.BindingAwareBroker.RpcRegistration;
 import org.opendaylight.controller.sal.binding.api.RpcProviderRegistry;
 import org.opendaylight.nemo.intent.IntentResolver;
 import org.opendaylight.nemo.user.UserManager;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.nemo.intent.rev151010.NemoIntentService;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -25,24 +27,28 @@ public class NemoEngineModule extends org.opendaylight.yang.gen.v1.urn.opendayli
 
     @Override
     public AutoCloseable createInstance() {
-        DataBroker dataBroker = getDataBrokerDependency();
-        RpcProviderRegistry rpcProviderRegistry = getRpcRegistryDependency();
-
-        final IntentResolver intentResolver = new IntentResolver(dataBroker);
-        final UserManager userManager = new UserManager(dataBroker, rpcProviderRegistry, intentResolver);
+        final DataBroker dataBroker = getDataBrokerDependency();
+        final RpcProviderRegistry rpcProviderRegistry = getRpcRegistryDependency();
 
         final class NemoEngine implements AutoCloseable {
+
+            private final IntentResolver intentResolver = new IntentResolver(dataBroker);
+            private final UserManager userManager = new UserManager(dataBroker, intentResolver);
+            private final RpcRegistration<NemoIntentService> rpcRegistration;
+
+            public NemoEngine() {
+                rpcRegistration = rpcProviderRegistry.addRpcImplementation(NemoIntentService.class, userManager);
+            }
+            
             @Override
             public void close() throws Exception {
+                if (null != rpcRegistration) {
+                    rpcRegistration.close();
+                }
+                
                 if ( null != intentResolver ) {
                     intentResolver.close();
                 }
-
-                if ( null != userManager ) {
-                    userManager.close();
-                }
-
-                return;
             }
         }
 
index 1a8a3f50166dd81e94f420f1a1d23d7a0af0e286..11b0c66cf2a3c14578f976a445629609ae1cdcf9 100644 (file)
@@ -95,11 +95,4 @@ public class UserManagerTest extends TestCase {
         Assert.assertNotNull(userManagerTest);\r
         verify(userManagerTest).structureStyleNemoUpdate(structureStyleNemoUpdateInput);\r
     }\r
-\r
-    @org.junit.Test\r
-    public void testClose() throws Exception {\r
-        userManagerTest.close();\r
-        Assert.assertNotNull(userManagerTest);\r
-        verify(userManagerTest).close();\r
-    }\r
 }
\ No newline at end of file