1 package org.opendaylight.vpnservice;
4 import java.util.concurrent.ExecutionException;
5 import java.util.concurrent.Future;
7 import org.opendaylight.yang.gen.v1.urn.huawei.params.xml.ns.yang.l3vpn.rev140815.VpnInterfaces;
8 import org.opendaylight.yang.gen.v1.urn.huawei.params.xml.ns.yang.l3vpn.rev140815.vpn.instances.VpnInstance;
9 import org.opendaylight.yang.gen.v1.urn.huawei.params.xml.ns.yang.l3vpn.rev140815.VpnInstances;
10 import org.opendaylight.yang.gen.v1.urn.huawei.params.xml.ns.yang.l3vpn.rev140815.vpn.instances.VpnInstanceKey;
11 import org.opendaylight.yang.gen.v1.urn.huawei.params.xml.ns.yang.l3vpn.rev140815.vpn.interfaces.VpnInterface;
12 import org.opendaylight.yang.gen.v1.urn.huawei.params.xml.ns.yang.l3vpn.rev140815.vpn.interfaces.VpnInterfaceKey;
13 import org.opendaylight.yang.gen.v1.urn.huawei.params.xml.ns.yang.l3vpn.rev140815.vpn.interfaces.VpnInterfaceBuilder;
14 import org.opendaylight.yang.gen.v1.urn.opendaylight.l3vpn.rev130911.adjacency.list.Adjacency;
15 import org.opendaylight.yang.gen.v1.urn.opendaylight.l3vpn.rev130911.Adjacencies;
16 import org.opendaylight.yang.gen.v1.urn.opendaylight.l3vpn.rev130911.AdjacenciesBuilder;
17 import org.opendaylight.yang.gen.v1.urn.opendaylight.vpnservice.idmanager.rev150403.Pools;
18 import org.opendaylight.yang.gen.v1.urn.opendaylight.vpnservice.idmanager.rev150403.pools.IdPool;
19 import org.opendaylight.yang.gen.v1.urn.opendaylight.vpnservice.idmanager.rev150403.pools.IdPoolKey;
20 import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
21 import org.opendaylight.yangtools.yang.common.RpcResult;
23 public class VpnUtil {
24 static InstanceIdentifier<VpnInterface> getVpnInterfaceIdentifier(String vpnInterfaceName) {
25 return InstanceIdentifier.builder(VpnInterfaces.class)
26 .child(VpnInterface.class, new VpnInterfaceKey(vpnInterfaceName)).build();
29 static InstanceIdentifier<VpnInstance> getVpnInstanceIdentifier(String vpnName) {
30 return InstanceIdentifier.builder(VpnInstances.class)
31 .child(VpnInstance.class, new VpnInstanceKey(vpnName)).build();
34 static VpnInterface getVpnInterface(String intfName, String vpnName, Adjacencies aug) {
35 return new VpnInterfaceBuilder().setKey(new VpnInterfaceKey(intfName)).setVpnInstanceName(vpnName)
36 .addAugmentation(Adjacencies.class, aug).build();
39 static Adjacencies getVpnInterfaceAugmentation(List<Adjacency> nextHops) {
40 return new AdjacenciesBuilder().setAdjacency(nextHops).build();
43 public static InstanceIdentifier<IdPool> getPoolId(String poolName){
44 InstanceIdentifier.InstanceIdentifierBuilder<IdPool> idBuilder =
45 InstanceIdentifier.builder(Pools.class).child(IdPool.class, new IdPoolKey(poolName));
46 InstanceIdentifier<IdPool> id = idBuilder.build();