Add endpointIid(EndpointKey enpointKey) in IidFactory 62/30262/4
authoradetalhouet <adetalhouet@inocybe.com>
Thu, 26 Nov 2015 16:07:17 +0000 (11:07 -0500)
committeradetalhouet <adetalhouet@inocybe.com>
Thu, 26 Nov 2015 19:54:23 +0000 (14:54 -0500)
Get the Endpoint InstanceIdentifier using the EndpointKey

Change-Id: I5e9442c01848260e8ccdbd9d1d751b714ba93937
Signed-off-by: adetalhouet <adetalhouet@inocybe.com>
groupbasedpolicy/src/main/java/org/opendaylight/groupbasedpolicy/util/IidFactory.java
groupbasedpolicy/src/test/java/org/opendaylight/groupbasedpolicy/util/IidFactoryTest.java

index 88be1685db2054d960c26efb5105622703d8d2fb..30365bcf8ce5360d8848b88957ecf56b4b1c6187 100644 (file)
@@ -206,10 +206,17 @@ public class IidFactory {
             .build();
     }
 
+    /**
+     * Get the {@link Endpoint} {@link InstanceIdentifier} based on the {@link EndpointKey}
+     * @param endpointKey The {@link EndpointKey} of a particular {@link Endpoint}
+     * @return The {@link InstanceIdentifier} of the {@link Endpoint}
+     */
+    public static InstanceIdentifier<Endpoint> endpointIid(EndpointKey endpointKey) {
+        return InstanceIdentifier.builder(Endpoints.class).child(Endpoint.class, endpointKey).build();
+    }
+
     public static InstanceIdentifier<Endpoint> endpointIid(L2BridgeDomainId l2Context, MacAddress macAddress) {
-        return InstanceIdentifier.builder(Endpoints.class)
-            .child(Endpoint.class, new EndpointKey(l2Context, macAddress))
-            .build();
+        return IidFactory.endpointIid(new EndpointKey(l2Context, macAddress));
     }
 
     public static InstanceIdentifier<EndpointL3> l3EndpointIid(L3ContextId l3Context, IpAddress ipAddress) {
index 29088f6364376c21b6e74e6dc6ea45a0042c55e6..a64f0e4b1241c3b1ce85ec801f4603ea198e1bfa 100644 (file)
@@ -31,6 +31,7 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.common.rev
 import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.common.rev140421.TenantId;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.endpoint.rev140421.Endpoints;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.endpoint.rev140421.endpoints.Endpoint;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.endpoint.rev140421.endpoints.EndpointKey;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.endpoint.rev140421.endpoints.EndpointL3;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.endpoint.rev140421.endpoints.EndpointL3Prefix;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.groupbasedpolicy.policy.rev140421.has.classifier.refs.ClassifierRef;
@@ -199,6 +200,10 @@ public class IidFactoryTest {
         InstanceIdentifier<Endpoint> identifier = IidFactory.endpointIid(l2Context, macAddress);
         Assert.assertEquals(l2Context, InstanceIdentifier.keyOf(identifier).getL2Context());
         Assert.assertEquals(macAddress, InstanceIdentifier.keyOf(identifier).getMacAddress());
+
+        EndpointKey key = mock(EndpointKey.class);
+        identifier = IidFactory.endpointIid(key);
+        Assert.assertEquals(key, identifier.firstKeyOf(Endpoint.class));
     }
 
     @Test