org.dasein.cloud.azure.network
Class AzureVPNSupport

java.lang.Object
  extended by org.dasein.cloud.azure.network.AzureVPNSupport
All Implemented Interfaces:
AccessControlledService, VPNSupport

public class AzureVPNSupport
extends Object
implements VPNSupport


Field Summary
static String ENSTRATUS_DEFAULT_VPN
          The enstratus default VPN is used when create VLANs, subnet, local network and gateway as all of the operations on VLAN, subnet etc requires an VPN;
static String VPN_ID_KEY
           
 
Fields inherited from interface org.dasein.cloud.network.VPNSupport
ANY, ATTACH, CONNECT_GATEWAY, CREATE_GATEWAY, CREATE_VPN, DETACH, DISCONNECT_GATEWAY, GET_GATEWAY, GET_VPN, LIST_GATEWAY, LIST_VPN, REMOVE_GATEWAY, REMOVE_VPN
 
Constructor Summary
AzureVPNSupport(Azure provider)
           
 
Method Summary
 void attachToVLAN(String providerVpnId, String providerVlanId)
          Vlan was created when the VPN created
 void connectToGateway(String providerVpnId, String toGatewayId)
           
 VPN createVPN(String inProviderDataCenterId, String name, String description, VPNProtocol protocol)
           
 VPNGateway createVPNGateway(String endpoint, String name, String description, VPNProtocol protocol, String bgpAsn)
           
 void deleteVPN(String providerVpnId)
           
 void deleteVPNGateway(String providerVPNGatewayId)
           
 void detachFromVLAN(String providerVpnId, String providerVlanId)
           
 void disconnectFromGateway(String providerVpnId, String fromGatewayId)
           
 VPNGateway getGateway(String gatewayId)
           
 VPN getVPN(String providerVpnId)
           
 Requirement getVPNDataCenterConstraint()
           
 boolean isSubscribed()
           
 Iterable<VPNConnection> listGatewayConnections(String toGatewayId)
           
 Iterable<VPNGateway> listGateways()
           
 Iterable<ResourceStatus> listGatewayStatus()
           
 Iterable<VPNGateway> listGatewaysWithBgpAsn(String bgpAsn)
           
 Iterable<VPNProtocol> listSupportedVPNProtocols()
           
 Iterable<VPNConnection> listVPNConnections(String toVpnId)
           
 Iterable<VPN> listVPNs()
           
 Iterable<ResourceStatus> listVPNStatus()
           
 String[] mapServiceAction(ServiceAction action)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

VPN_ID_KEY

public static final String VPN_ID_KEY
See Also:
Constant Field Values

ENSTRATUS_DEFAULT_VPN

public static final String ENSTRATUS_DEFAULT_VPN
The enstratus default VPN is used when create VLANs, subnet, local network and gateway as all of the operations on VLAN, subnet etc requires an VPN;

See Also:
Constant Field Values
Constructor Detail

AzureVPNSupport

public AzureVPNSupport(Azure provider)
Method Detail

mapServiceAction

public String[] mapServiceAction(ServiceAction action)
Specified by:
mapServiceAction in interface AccessControlledService

attachToVLAN

public void attachToVLAN(String providerVpnId,
                         String providerVlanId)
                  throws CloudException,
                         InternalException
Vlan was created when the VPN created

Specified by:
attachToVLAN in interface VPNSupport
Throws:
CloudException
InternalException

connectToGateway

public void connectToGateway(String providerVpnId,
                             String toGatewayId)
                      throws CloudException,
                             InternalException
Specified by:
connectToGateway in interface VPNSupport
Throws:
CloudException
InternalException

createVPN

public VPN createVPN(String inProviderDataCenterId,
                     String name,
                     String description,
                     VPNProtocol protocol)
              throws CloudException,
                     InternalException
Specified by:
createVPN in interface VPNSupport
Throws:
CloudException
InternalException

createVPNGateway

public VPNGateway createVPNGateway(String endpoint,
                                   String name,
                                   String description,
                                   VPNProtocol protocol,
                                   String bgpAsn)
                            throws CloudException,
                                   InternalException
Specified by:
createVPNGateway in interface VPNSupport
Throws:
CloudException
InternalException

deleteVPN

public void deleteVPN(String providerVpnId)
               throws CloudException,
                      InternalException
Specified by:
deleteVPN in interface VPNSupport
Throws:
CloudException
InternalException

deleteVPNGateway

public void deleteVPNGateway(String providerVPNGatewayId)
                      throws CloudException,
                             InternalException
Specified by:
deleteVPNGateway in interface VPNSupport
Throws:
CloudException
InternalException

detachFromVLAN

public void detachFromVLAN(String providerVpnId,
                           String providerVlanId)
                    throws CloudException,
                           InternalException
Specified by:
detachFromVLAN in interface VPNSupport
Throws:
CloudException
InternalException

disconnectFromGateway

public void disconnectFromGateway(String providerVpnId,
                                  String fromGatewayId)
                           throws CloudException,
                                  InternalException
Specified by:
disconnectFromGateway in interface VPNSupport
Throws:
CloudException
InternalException

getGateway

public VPNGateway getGateway(String gatewayId)
                      throws CloudException,
                             InternalException
Specified by:
getGateway in interface VPNSupport
Throws:
CloudException
InternalException

getVPN

public VPN getVPN(String providerVpnId)
           throws CloudException,
                  InternalException
Specified by:
getVPN in interface VPNSupport
Throws:
CloudException
InternalException

getVPNDataCenterConstraint

public Requirement getVPNDataCenterConstraint()
                                       throws CloudException,
                                              InternalException
Specified by:
getVPNDataCenterConstraint in interface VPNSupport
Throws:
CloudException
InternalException

listGatewayConnections

public Iterable<VPNConnection> listGatewayConnections(String toGatewayId)
                                               throws CloudException,
                                                      InternalException
Specified by:
listGatewayConnections in interface VPNSupport
Throws:
CloudException
InternalException

listGatewayStatus

@Nonnull
public Iterable<ResourceStatus> listGatewayStatus()
                                           throws CloudException,
                                                  InternalException
Specified by:
listGatewayStatus in interface VPNSupport
Throws:
CloudException
InternalException

listGateways

public Iterable<VPNGateway> listGateways()
                                  throws CloudException,
                                         InternalException
Specified by:
listGateways in interface VPNSupport
Throws:
CloudException
InternalException

listGatewaysWithBgpAsn

public Iterable<VPNGateway> listGatewaysWithBgpAsn(String bgpAsn)
                                            throws CloudException,
                                                   InternalException
Specified by:
listGatewaysWithBgpAsn in interface VPNSupport
Throws:
CloudException
InternalException

listVPNConnections

public Iterable<VPNConnection> listVPNConnections(String toVpnId)
                                           throws CloudException,
                                                  InternalException
Specified by:
listVPNConnections in interface VPNSupport
Throws:
CloudException
InternalException

listVPNStatus

@Nonnull
public Iterable<ResourceStatus> listVPNStatus()
                                       throws CloudException,
                                              InternalException
Specified by:
listVPNStatus in interface VPNSupport
Throws:
CloudException
InternalException

listVPNs

public Iterable<VPN> listVPNs()
                       throws CloudException,
                              InternalException
Specified by:
listVPNs in interface VPNSupport
Throws:
CloudException
InternalException

listSupportedVPNProtocols

public Iterable<VPNProtocol> listSupportedVPNProtocols()
                                                throws CloudException,
                                                       InternalException
Specified by:
listSupportedVPNProtocols in interface VPNSupport
Throws:
CloudException
InternalException

isSubscribed

public boolean isSubscribed()
                     throws CloudException,
                            InternalException
Specified by:
isSubscribed in interface VPNSupport
Throws:
CloudException
InternalException


Copyright © 2013 enStratus Networks Inc. All Rights Reserved.