@Singleton public class NeutronvpnManager extends Object implements NeutronvpnService, AutoCloseable, EventListener
| Constructor and Description |
|---|
NeutronvpnManager(org.opendaylight.controller.md.sal.binding.api.DataBroker dataBroker,
org.opendaylight.controller.md.sal.binding.api.NotificationPublishService notiPublishService,
NeutronvpnNatManager vpnNatMgr,
VpnRpcService vpnRpcSrv,
IElanService elanService,
NeutronFloatingToFixedIpMappingChangeListener neutronFloatingToFixedIpMappingChangeListener,
NeutronvpnConfig neutronvpnConfig,
IVpnManager vpnManager) |
| Modifier and Type | Method and Description |
|---|---|
void |
addInterVpnRoutes(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid vpnName,
List<org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.l3.rev150712.l3.attributes.Routes> interVpnLinkRoutes,
HashMap<String,InterVpnLink> nexthopsXinterVpnLinks)
Creates the corresponding static routes in the specified VPN.
|
protected void |
addSubnetToVpn(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid vpnId,
org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid subnet) |
protected void |
addToNeutronRouterInterfacesMap(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid routerId,
String interfaceName) |
Future<org.opendaylight.yangtools.yang.common.RpcResult<AssociateNetworksOutput>> |
associateNetworks(AssociateNetworksInput input)
It handles the invocations to the neutronvpn:associateNetworks RPC method.
|
protected List<String> |
associateNetworksToVpn(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid vpn,
List<org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid> networks) |
Future<org.opendaylight.yangtools.yang.common.RpcResult<Void>> |
associateRouter(AssociateRouterInput input)
It handles the invocations to the neutronvpn:associateRouter RPC method.
|
protected void |
associateRouterToInternalVpn(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid vpnId,
org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid routerId) |
protected void |
associateRouterToVpn(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid vpnId,
org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid routerId) |
void |
close() |
Future<org.opendaylight.yangtools.yang.common.RpcResult<CreateEVPNOutput>> |
createEVPN(CreateEVPNInput input)
Create one or more EVPN(s)
|
protected void |
createExternalVpnInterfaces(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid extNetId) |
void |
createL3InternalVpn(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid vpn,
String name,
org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid tenant,
List<String> rd,
List<String> irt,
List<String> ert,
org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid router,
List<org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid> networks) |
Future<org.opendaylight.yangtools.yang.common.RpcResult<CreateL3VPNOutput>> |
createL3VPN(CreateL3VPNInput input)
It handles the invocations to the createVPN RPC method.
|
protected void |
createSubnetmapNode(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid subnetId,
String subnetIp,
org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid tenantId,
org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid networkId,
NetworkAttributes.NetworkType networkType,
long segmentationId) |
void |
createVpn(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid vpn,
String name,
org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid tenant,
List<String> rd,
List<String> irt,
List<String> ert,
org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid router,
List<org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid> networks,
VpnInstance.Type type,
long l3vni)
Performs the creation of a Neutron L3VPN, associating the new VPN to the
specified Neutron Networks and Routers.
|
void |
createVpnInstanceForSubnet(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid subnetId) |
protected void |
createVpnInterface(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid vpnId,
org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.ports.rev150712.ports.attributes.ports.Port port,
org.opendaylight.controller.md.sal.binding.api.WriteTransaction wrtConfigTxn) |
Future<org.opendaylight.yangtools.yang.common.RpcResult<DeleteEVPNOutput>> |
deleteEVPN(DeleteEVPNInput input)
delete EVPNs for specified Id list
|
Future<org.opendaylight.yangtools.yang.common.RpcResult<DeleteL3VPNOutput>> |
deleteL3VPN(DeleteL3VPNInput input)
It handles the invocations to the neutronvpn:deleteL3VPN RPC method.
|
protected void |
deleteSubnetMapNode(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid subnetId) |
protected void |
deleteVpnInterface(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid vpnId,
org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.ports.rev150712.ports.attributes.ports.Port port,
org.opendaylight.controller.md.sal.binding.api.WriteTransaction wrtConfigTxn) |
protected void |
dissociatefixedIPFromFloatingIP(String fixedNeutronPortName) |
Future<org.opendaylight.yangtools.yang.common.RpcResult<DissociateNetworksOutput>> |
dissociateNetworks(DissociateNetworksInput input)
It handles the invocations to the neutronvpn:dissociateNetworks RPC method.
|
protected List<String> |
dissociateNetworksFromVpn(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid vpn,
List<org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid> networks) |
Future<org.opendaylight.yangtools.yang.common.RpcResult<Void>> |
dissociateRouter(DissociateRouterInput input)
It handles the invocations to the neutronvpn:dissociateRouter RPC method.
|
protected void |
dissociateRouterFromVpn(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid vpnId,
org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid routerId) |
protected List<Adjacency> |
getAdjacencyforExtraRoute(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid vpnId,
List<org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.l3.rev150712.l3.attributes.Routes> routeList,
String fixedIp) |
Future<org.opendaylight.yangtools.yang.common.RpcResult<GetEVPNOutput>> |
getEVPN(GetEVPNInput input)
returns EVPN configuration
|
Future<org.opendaylight.yangtools.yang.common.RpcResult<GetFixedIPsForNeutronPortOutput>> |
getFixedIPsForNeutronPort(GetFixedIPsForNeutronPortInput input)
It handles the invocations to the neutronvpn:getFixedIPsForNeutronPort RPC method.
|
Future<org.opendaylight.yangtools.yang.common.RpcResult<GetL3VPNOutput>> |
getL3VPN(GetL3VPNInput input)
It handles the invocations to the neutronvpn:getL3VPN RPC method.
|
protected org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid |
getNetworkForSubnet(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid subnetId) |
protected List<org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid> |
getNetworksForVpn(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid vpnId) |
protected org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.networks.rev150712.networks.attributes.networks.Network |
getNeutronNetwork(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid networkId) |
protected org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.ports.rev150712.ports.attributes.ports.Port |
getNeutronPort(String name) |
protected org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.ports.rev150712.ports.attributes.ports.Port |
getNeutronPort(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid portId) |
protected org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.subnets.rev150712.subnets.attributes.subnets.Subnet |
getNeutronSubnet(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid subnetId) |
protected org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.IpAddress |
getNeutronSubnetGateway(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid subnetId) |
String |
getOpenDaylightVniRangesConfig() |
org.opendaylight.yangtools.yang.binding.InstanceIdentifier<RouterInterfaces> |
getRouterInterfacesId(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid routerId) |
protected void |
handleNeutronRouterDeleted(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid routerId,
List<org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid> routerSubnetIds) |
protected void |
removeAdjacencyforExtraRoute(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid vpnId,
List<org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.l3.rev150712.l3.attributes.Routes> routeList) |
protected void |
removeExternalVpnInterfaces(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid extNetId) |
protected void |
removeFromNeutronRouterInterfacesMap(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid routerId,
String interfaceName) |
protected Subnetmap |
removeFromSubnetNode(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid subnetId,
org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid networkId,
org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid routerId,
org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid vpnId,
org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid portId) |
void |
removeInterVpnRoutes(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid vpnName,
List<org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.l3.rev150712.l3.attributes.Routes> interVpnLinkRoutes,
HashMap<String,InterVpnLink> nexthopsXinterVpnLinks)
Removes the corresponding static routes from the specified VPN.
|
protected Subnetmap |
removePortsFromSubnetmapNode(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid subnetId,
org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid portId,
org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid directPortId) |
protected void |
removeSubnetFromVpn(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid vpnId,
org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid subnet) |
void |
removeVpn(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid id) |
void |
removeVpnInstanceForSubnet(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid subnetId) |
List<String> |
showNeutronPortsCLI()
Implementation of the "vpnservice:neutron-ports-show" Karaf CLI command.
|
List<String> |
showVpnConfigCLI(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid vpnuuid)
Implementation of the "vpnservice:l3vpn-config-show" karaf CLI command.
|
protected Subnetmap |
updateSubnetmapNodeWithPorts(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid subnetId,
org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid portId,
org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid directPortId) |
protected Subnetmap |
updateSubnetNode(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid subnetId,
org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid routerId,
org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid vpnId) |
protected void |
updateSubnetNodeWithFixedIp(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid subnetId,
org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid routerId,
org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid routerInterfacePortId,
String fixedIp,
String routerIntfMacAddress) |
void |
updateVpnInstanceWithRDs(String vpnInstanceId,
List<String> rds) |
protected void |
updateVpnInterface(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid vpnId,
org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid oldVpnId,
org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.ports.rev150712.ports.attributes.ports.Port port,
boolean isBeingAssociated,
boolean isSubnetIp,
org.opendaylight.controller.md.sal.binding.api.WriteTransaction writeConfigTxn) |
protected void |
updateVpnInterfaceWithExtraRouteAdjacency(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid vpnId,
List<org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.l3.rev150712.l3.attributes.Routes> routeList) |
@Inject
public NeutronvpnManager(org.opendaylight.controller.md.sal.binding.api.DataBroker dataBroker,
org.opendaylight.controller.md.sal.binding.api.NotificationPublishService notiPublishService,
NeutronvpnNatManager vpnNatMgr,
VpnRpcService vpnRpcSrv,
IElanService elanService,
NeutronFloatingToFixedIpMappingChangeListener neutronFloatingToFixedIpMappingChangeListener,
NeutronvpnConfig neutronvpnConfig,
IVpnManager vpnManager)
@PreDestroy public void close() throws Exception
close in interface AutoCloseableExceptionpublic String getOpenDaylightVniRangesConfig()
protected void createSubnetmapNode(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid subnetId,
String subnetIp,
org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid tenantId,
org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid networkId,
NetworkAttributes.NetworkType networkType,
long segmentationId)
protected Subnetmap updateSubnetNode(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid subnetId, org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid routerId, org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid vpnId)
protected void updateSubnetNodeWithFixedIp(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid subnetId,
org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid routerId,
org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid routerInterfacePortId,
String fixedIp,
String routerIntfMacAddress)
protected Subnetmap updateSubnetmapNodeWithPorts(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid subnetId, org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid portId, org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid directPortId)
protected Subnetmap removeFromSubnetNode(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid subnetId, org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid networkId, org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid routerId, org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid vpnId, org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid portId)
protected Subnetmap removePortsFromSubnetmapNode(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid subnetId, org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid portId, org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid directPortId)
protected void deleteSubnetMapNode(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid subnetId)
public void updateVpnInstanceWithRDs(String vpnInstanceId, List<String> rds)
protected void createVpnInterface(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid vpnId,
org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.ports.rev150712.ports.attributes.ports.Port port,
org.opendaylight.controller.md.sal.binding.api.WriteTransaction wrtConfigTxn)
protected void deleteVpnInterface(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid vpnId,
org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.ports.rev150712.ports.attributes.ports.Port port,
org.opendaylight.controller.md.sal.binding.api.WriteTransaction wrtConfigTxn)
protected void updateVpnInterface(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid vpnId,
org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid oldVpnId,
org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.ports.rev150712.ports.attributes.ports.Port port,
boolean isBeingAssociated,
boolean isSubnetIp,
org.opendaylight.controller.md.sal.binding.api.WriteTransaction writeConfigTxn)
public void createL3InternalVpn(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid vpn,
String name,
org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid tenant,
List<String> rd,
List<String> irt,
List<String> ert,
org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid router,
List<org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid> networks)
public void createVpn(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid vpn,
String name,
org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid tenant,
List<String> rd,
List<String> irt,
List<String> ert,
org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid router,
List<org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid> networks,
VpnInstance.Type type,
long l3vni)
throws Exception
vpn - Uuid of the VPN tp be createdname - Representative name of the new VPNtenant - Uuid of the Tenant under which the VPN is going to be createdrd - Route-distinguisher for the VPNirt - A list of Import Route Targetsert - A list of Export Route Targetsrouter - UUID of the neutron router the VPN may be associated tonetworks - UUID of the neutron network the VPN may be associated totype - Type of the VPN Instancel3vni - L3VNI for the VPN Instance using VxLAN as the underlayException - if association of L3VPN failedpublic Future<org.opendaylight.yangtools.yang.common.RpcResult<CreateL3VPNOutput>> createL3VPN(CreateL3VPNInput input)
createL3VPN in interface NeutronvpnServicepublic Future<org.opendaylight.yangtools.yang.common.RpcResult<GetL3VPNOutput>> getL3VPN(GetL3VPNInput input)
getL3VPN in interface NeutronvpnServicejava.util.concurrent.Future l3VPN, or null if not presentpublic Future<org.opendaylight.yangtools.yang.common.RpcResult<DeleteL3VPNOutput>> deleteL3VPN(DeleteL3VPNInput input)
deleteL3VPN in interface NeutronvpnServicepublic void createVpnInstanceForSubnet(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid subnetId)
public void removeVpnInstanceForSubnet(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid subnetId)
protected void addSubnetToVpn(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid vpnId,
org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid subnet)
public org.opendaylight.yangtools.yang.binding.InstanceIdentifier<RouterInterfaces> getRouterInterfacesId(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid routerId)
protected void addToNeutronRouterInterfacesMap(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid routerId,
String interfaceName)
protected void removeFromNeutronRouterInterfacesMap(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid routerId,
String interfaceName)
public void addInterVpnRoutes(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid vpnName,
List<org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.l3.rev150712.l3.attributes.Routes> interVpnLinkRoutes,
HashMap<String,InterVpnLink> nexthopsXinterVpnLinks)
vpnName - the VPN identifierinterVpnLinkRoutes - The list of static routesnexthopsXinterVpnLinks - A Map with the correspondence nextHop-InterVpnLinkpublic void removeInterVpnRoutes(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid vpnName,
List<org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.l3.rev150712.l3.attributes.Routes> interVpnLinkRoutes,
HashMap<String,InterVpnLink> nexthopsXinterVpnLinks)
vpnName - the VPN identifierinterVpnLinkRoutes - The list of static routesnexthopsXinterVpnLinks - A Map with the correspondence nextHop-InterVpnLinkprotected List<Adjacency> getAdjacencyforExtraRoute(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid vpnId, List<org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.l3.rev150712.l3.attributes.Routes> routeList, String fixedIp)
protected void updateVpnInterfaceWithExtraRouteAdjacency(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid vpnId,
List<org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.l3.rev150712.l3.attributes.Routes> routeList)
protected void removeAdjacencyforExtraRoute(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid vpnId,
List<org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.l3.rev150712.l3.attributes.Routes> routeList)
public void removeVpn(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid id)
protected void removeSubnetFromVpn(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid vpnId,
org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid subnet)
protected void associateRouterToVpn(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid vpnId,
org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid routerId)
protected void associateRouterToInternalVpn(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid vpnId,
org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid routerId)
protected void dissociateRouterFromVpn(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid vpnId,
org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid routerId)
protected List<String> associateNetworksToVpn(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid vpn, List<org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid> networks)
protected List<String> dissociateNetworksFromVpn(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid vpn, List<org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid> networks)
public Future<org.opendaylight.yangtools.yang.common.RpcResult<AssociateNetworksOutput>> associateNetworks(AssociateNetworksInput input)
associateNetworks in interface NeutronvpnServicepublic Future<org.opendaylight.yangtools.yang.common.RpcResult<Void>> associateRouter(AssociateRouterInput input)
associateRouter in interface NeutronvpnServicepublic Future<org.opendaylight.yangtools.yang.common.RpcResult<GetFixedIPsForNeutronPortOutput>> getFixedIPsForNeutronPort(GetFixedIPsForNeutronPortInput input)
getFixedIPsForNeutronPort in interface NeutronvpnServicejava.util.concurrent.Future fixedIPsForNeutronPort, or null if not presentpublic Future<org.opendaylight.yangtools.yang.common.RpcResult<DissociateNetworksOutput>> dissociateNetworks(DissociateNetworksInput input)
dissociateNetworks in interface NeutronvpnServicepublic Future<org.opendaylight.yangtools.yang.common.RpcResult<Void>> dissociateRouter(DissociateRouterInput input)
dissociateRouter in interface NeutronvpnServiceprotected void handleNeutronRouterDeleted(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid routerId,
List<org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid> routerSubnetIds)
protected org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.subnets.rev150712.subnets.attributes.subnets.Subnet getNeutronSubnet(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid subnetId)
protected org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.IpAddress getNeutronSubnetGateway(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid subnetId)
protected org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.networks.rev150712.networks.attributes.networks.Network getNeutronNetwork(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid networkId)
protected org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.ports.rev150712.ports.attributes.ports.Port getNeutronPort(String name)
protected org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.ports.rev150712.ports.attributes.ports.Port getNeutronPort(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid portId)
protected org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid getNetworkForSubnet(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid subnetId)
protected List<org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid> getNetworksForVpn(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid vpnId)
public List<String> showNeutronPortsCLI() throws org.opendaylight.controller.md.sal.common.api.data.ReadFailedException
org.opendaylight.controller.md.sal.common.api.data.ReadFailedException - if there was a problem reading from the data storepublic List<String> showVpnConfigCLI(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid vpnuuid) throws InterruptedException, ExecutionException
vpnuuid - Uuid of the VPN whose config must be shownInterruptedException - if there was a thread related problem getting the data to displayExecutionException - if there was any other problem getting the data to displayprotected void createExternalVpnInterfaces(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid extNetId)
protected void removeExternalVpnInterfaces(org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid extNetId)
protected void dissociatefixedIPFromFloatingIP(String fixedNeutronPortName)
public Future<org.opendaylight.yangtools.yang.common.RpcResult<CreateEVPNOutput>> createEVPN(CreateEVPNInput input)
NeutronvpnServicecreateEVPN in interface NeutronvpnServicepublic Future<org.opendaylight.yangtools.yang.common.RpcResult<GetEVPNOutput>> getEVPN(GetEVPNInput input)
NeutronvpnServicegetEVPN in interface NeutronvpnServicejava.util.concurrent.Future eVPN, or null if not presentpublic Future<org.opendaylight.yangtools.yang.common.RpcResult<DeleteEVPNOutput>> deleteEVPN(DeleteEVPNInput input)
NeutronvpnServicedeleteEVPN in interface NeutronvpnServiceCopyright © 2018 OpenDaylight. All rights reserved.