org.dasein.cloud.azure.network
Class AzureVlanSupport

java.lang.Object
  extended by org.dasein.cloud.network.AbstractVLANSupport
      extended by org.dasein.cloud.azure.network.AzureVlanSupport
All Implemented Interfaces:
AccessControlledService, VLANSupport

public class AzureVlanSupport
extends AbstractVLANSupport


Field Summary
 
Fields inherited from interface org.dasein.cloud.network.VLANSupport
ADD_ROUTE, ANY, ASSIGN_ROUTE_TO_SUBNET, ASSIGN_ROUTE_TO_VLAN, ATTACH_INTERNET_GATEWAY, ATTACH_NIC, CREATE_INTERNET_GATEWAY, CREATE_NIC, CREATE_ROUTING_TABLE, CREATE_SUBNET, CREATE_VLAN, DETACH_NIC, GET_NIC, GET_ROUTING_TABLE, GET_SUBNET, GET_VLAN, LIST_NIC, LIST_ROUTING_TABLE, LIST_SUBNET, LIST_VLAN, REMOVE_INTERNET_GATEWAY, REMOVE_NIC, REMOVE_ROUTE, REMOVE_ROUTING_TABLE, REMOVE_SUBNET, REMOVE_VLAN
 
Constructor Summary
AzureVlanSupport(Azure provider)
           
 
Method Summary
 void addRouteToAddress(String toRoutingTableId, IPVersion version, String destinationCidr, String address)
           
 void addRouteToGateway(String toRoutingTableId, IPVersion version, String destinationCidr, String gatewayId)
           
 void addRouteToNetworkInterface(String toRoutingTableId, IPVersion version, String destinationCidr, String nicId)
           
 void addRouteToVirtualMachine(String toRoutingTableId, IPVersion version, String destinationCidr, String vmId)
           
 boolean allowsMultipleTrafficTypesOverSubnet()
           
 boolean allowsMultipleTrafficTypesOverVlan()
           
 boolean allowsNewNetworkInterfaceCreation()
           
 boolean allowsNewSubnetCreation()
           
 boolean allowsNewVlanCreation()
           
 void assignRoutingTableToSubnet(String subnetId, String routingTableId)
           
 void assignRoutingTableToVlan(String vlanId, String routingTableId)
           
 void attachNetworkInterface(String nicId, String vmId, int index)
           
 String createInternetGateway(String forVlanId)
           
 NetworkInterface createNetworkInterface(NICCreateOptions options)
           
 String createRoutingTable(String forVlanId, String name, String description)
           
 Subnet createSubnet(SubnetCreateOptions subnetCreateOptions)
           
 VLAN createVlan(String cidr, String name, String description, String domainName, String[] dnsServers, String[] ntpServers)
           
 void detachNetworkInterface(String nicId)
           
 int getMaxNetworkInterfaceCount()
           
 int getMaxVlanCount()
           
 NetworkInterface getNetworkInterface(String nicId)
           
 String getProviderTermForNetworkInterface(Locale locale)
           
 String getProviderTermForSubnet(Locale locale)
           
 String getProviderTermForVlan(Locale locale)
           
 RoutingTable getRoutingTableForSubnet(String subnetId)
           
 RoutingTable getRoutingTableForVlan(String vlanId)
           
 Requirement getRoutingTableSupport()
           
 Subnet getSubnet(String subnetId)
           
 Requirement getSubnetSupport()
           
 VLAN getVlan(String vlanId)
           
 boolean isConnectedViaInternetGateway(String s)
           
 boolean isNetworkInterfaceSupportEnabled()
           
 boolean isSubnetDataCenterConstrained()
           
 boolean isSubscribed()
           
 boolean isVlanDataCenterConstrained()
           
 Collection<String> listFirewallIdsForNIC(String nicId)
           
 Iterable<NetworkInterface> listNetworkInterfaces()
           
 Iterable<NetworkInterface> listNetworkInterfacesForVM(String forVmId)
           
 Iterable<NetworkInterface> listNetworkInterfacesInSubnet(String subnetId)
           
 Iterable<NetworkInterface> listNetworkInterfacesInVLAN(String vlanId)
           
 Iterable<ResourceStatus> listNetworkInterfaceStatus()
           
 Iterable<Networkable> listResources(String inVlanId)
           
 Iterable<RoutingTable> listRoutingTables(String inVlanId)
           
 Iterable<Subnet> listSubnets(String inVlanId)
           
 Iterable<IPVersion> listSupportedIPVersions()
           
 Iterable<VLAN> listVlans()
           
 Iterable<ResourceStatus> listVlanStatus()
           
 String[] mapServiceAction(ServiceAction action)
           
 void removeInternetGateway(String forVlanId)
           
 void removeNetworkInterface(String nicId)
           
 void removeRoute(String inRoutingTableId, String destinationCidr)
           
 void removeRoutingTable(String routingTableId)
           
 void removeSubnet(String providerSubnetId)
           
 void removeVlan(String vlanId)
           
 void removeVLANTags(String[] strings, Tag... tags)
           
 void removeVLANTags(String s, Tag... tags)
           
 boolean supportsInternetGatewayCreation()
           
 boolean supportsRawAddressRouting()
           
 void updateVLANTags(String[] strings, Tag... tags)
           
 void updateVLANTags(String s, Tag... tags)
           
 
Methods inherited from class org.dasein.cloud.network.AbstractVLANSupport
createSubnet, createVlan, getContext, getProvider, identifySubnetDCRequirement
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AzureVlanSupport

public AzureVlanSupport(Azure provider)
Method Detail

mapServiceAction

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

addRouteToAddress

public void addRouteToAddress(String toRoutingTableId,
                              IPVersion version,
                              String destinationCidr,
                              String address)
                       throws CloudException,
                              InternalException
Specified by:
addRouteToAddress in interface VLANSupport
Overrides:
addRouteToAddress in class AbstractVLANSupport
Throws:
CloudException
InternalException

addRouteToGateway

public void addRouteToGateway(String toRoutingTableId,
                              IPVersion version,
                              String destinationCidr,
                              String gatewayId)
                       throws CloudException,
                              InternalException
Specified by:
addRouteToGateway in interface VLANSupport
Overrides:
addRouteToGateway in class AbstractVLANSupport
Throws:
CloudException
InternalException

addRouteToNetworkInterface

public void addRouteToNetworkInterface(String toRoutingTableId,
                                       IPVersion version,
                                       String destinationCidr,
                                       String nicId)
                                throws CloudException,
                                       InternalException
Specified by:
addRouteToNetworkInterface in interface VLANSupport
Overrides:
addRouteToNetworkInterface in class AbstractVLANSupport
Throws:
CloudException
InternalException

addRouteToVirtualMachine

public void addRouteToVirtualMachine(String toRoutingTableId,
                                     IPVersion version,
                                     String destinationCidr,
                                     String vmId)
                              throws CloudException,
                                     InternalException
Specified by:
addRouteToVirtualMachine in interface VLANSupport
Overrides:
addRouteToVirtualMachine in class AbstractVLANSupport
Throws:
CloudException
InternalException

allowsNewNetworkInterfaceCreation

public boolean allowsNewNetworkInterfaceCreation()
                                          throws CloudException,
                                                 InternalException
Specified by:
allowsNewNetworkInterfaceCreation in interface VLANSupport
Overrides:
allowsNewNetworkInterfaceCreation in class AbstractVLANSupport
Throws:
CloudException
InternalException

allowsNewVlanCreation

public boolean allowsNewVlanCreation()
                              throws CloudException,
                                     InternalException
Specified by:
allowsNewVlanCreation in interface VLANSupport
Overrides:
allowsNewVlanCreation in class AbstractVLANSupport
Throws:
CloudException
InternalException

allowsNewSubnetCreation

public boolean allowsNewSubnetCreation()
                                throws CloudException,
                                       InternalException
Specified by:
allowsNewSubnetCreation in interface VLANSupport
Overrides:
allowsNewSubnetCreation in class AbstractVLANSupport
Throws:
CloudException
InternalException

allowsMultipleTrafficTypesOverSubnet

public boolean allowsMultipleTrafficTypesOverSubnet()
                                             throws CloudException,
                                                    InternalException
Specified by:
allowsMultipleTrafficTypesOverSubnet in interface VLANSupport
Overrides:
allowsMultipleTrafficTypesOverSubnet in class AbstractVLANSupport
Throws:
CloudException
InternalException

allowsMultipleTrafficTypesOverVlan

public boolean allowsMultipleTrafficTypesOverVlan()
                                           throws CloudException,
                                                  InternalException
Specified by:
allowsMultipleTrafficTypesOverVlan in interface VLANSupport
Overrides:
allowsMultipleTrafficTypesOverVlan in class AbstractVLANSupport
Throws:
CloudException
InternalException

assignRoutingTableToSubnet

public void assignRoutingTableToSubnet(String subnetId,
                                       String routingTableId)
                                throws CloudException,
                                       InternalException
Specified by:
assignRoutingTableToSubnet in interface VLANSupport
Overrides:
assignRoutingTableToSubnet in class AbstractVLANSupport
Throws:
CloudException
InternalException

assignRoutingTableToVlan

public void assignRoutingTableToVlan(String vlanId,
                                     String routingTableId)
                              throws CloudException,
                                     InternalException
Specified by:
assignRoutingTableToVlan in interface VLANSupport
Overrides:
assignRoutingTableToVlan in class AbstractVLANSupport
Throws:
CloudException
InternalException

attachNetworkInterface

public void attachNetworkInterface(String nicId,
                                   String vmId,
                                   int index)
                            throws CloudException,
                                   InternalException
Specified by:
attachNetworkInterface in interface VLANSupport
Overrides:
attachNetworkInterface in class AbstractVLANSupport
Throws:
CloudException
InternalException

createInternetGateway

public String createInternetGateway(String forVlanId)
                             throws CloudException,
                                    InternalException
Specified by:
createInternetGateway in interface VLANSupport
Overrides:
createInternetGateway in class AbstractVLANSupport
Throws:
CloudException
InternalException

createRoutingTable

public String createRoutingTable(String forVlanId,
                                 String name,
                                 String description)
                          throws CloudException,
                                 InternalException
Specified by:
createRoutingTable in interface VLANSupport
Overrides:
createRoutingTable in class AbstractVLANSupport
Throws:
CloudException
InternalException

createNetworkInterface

public NetworkInterface createNetworkInterface(NICCreateOptions options)
                                        throws CloudException,
                                               InternalException
Specified by:
createNetworkInterface in interface VLANSupport
Overrides:
createNetworkInterface in class AbstractVLANSupport
Throws:
CloudException
InternalException

createSubnet

@Nonnull
public Subnet createSubnet(@Nonnull
                                   SubnetCreateOptions subnetCreateOptions)
                    throws CloudException,
                           InternalException
Specified by:
createSubnet in interface VLANSupport
Overrides:
createSubnet in class AbstractVLANSupport
Throws:
CloudException
InternalException

createVlan

public VLAN createVlan(String cidr,
                       String name,
                       String description,
                       String domainName,
                       String[] dnsServers,
                       String[] ntpServers)
                throws CloudException,
                       InternalException
Specified by:
createVlan in interface VLANSupport
Overrides:
createVlan in class AbstractVLANSupport
Throws:
CloudException
InternalException

detachNetworkInterface

public void detachNetworkInterface(String nicId)
                            throws CloudException,
                                   InternalException
Specified by:
detachNetworkInterface in interface VLANSupport
Overrides:
detachNetworkInterface in class AbstractVLANSupport
Throws:
CloudException
InternalException

getMaxNetworkInterfaceCount

public int getMaxNetworkInterfaceCount()
                                throws CloudException,
                                       InternalException
Specified by:
getMaxNetworkInterfaceCount in interface VLANSupport
Overrides:
getMaxNetworkInterfaceCount in class AbstractVLANSupport
Throws:
CloudException
InternalException

getMaxVlanCount

public int getMaxVlanCount()
                    throws CloudException,
                           InternalException
Specified by:
getMaxVlanCount in interface VLANSupport
Overrides:
getMaxVlanCount in class AbstractVLANSupport
Throws:
CloudException
InternalException

getProviderTermForNetworkInterface

public String getProviderTermForNetworkInterface(Locale locale)

getProviderTermForSubnet

public String getProviderTermForSubnet(Locale locale)

getProviderTermForVlan

public String getProviderTermForVlan(Locale locale)

getNetworkInterface

public NetworkInterface getNetworkInterface(String nicId)
                                     throws CloudException,
                                            InternalException
Specified by:
getNetworkInterface in interface VLANSupport
Overrides:
getNetworkInterface in class AbstractVLANSupport
Throws:
CloudException
InternalException

getRoutingTableForSubnet

public RoutingTable getRoutingTableForSubnet(String subnetId)
                                      throws CloudException,
                                             InternalException
Specified by:
getRoutingTableForSubnet in interface VLANSupport
Overrides:
getRoutingTableForSubnet in class AbstractVLANSupport
Throws:
CloudException
InternalException

getRoutingTableSupport

public Requirement getRoutingTableSupport()
                                   throws CloudException,
                                          InternalException
Specified by:
getRoutingTableSupport in interface VLANSupport
Overrides:
getRoutingTableSupport in class AbstractVLANSupport
Throws:
CloudException
InternalException

getRoutingTableForVlan

public RoutingTable getRoutingTableForVlan(String vlanId)
                                    throws CloudException,
                                           InternalException
Specified by:
getRoutingTableForVlan in interface VLANSupport
Overrides:
getRoutingTableForVlan in class AbstractVLANSupport
Throws:
CloudException
InternalException

getSubnet

public Subnet getSubnet(String subnetId)
                 throws CloudException,
                        InternalException
Specified by:
getSubnet in interface VLANSupport
Overrides:
getSubnet in class AbstractVLANSupport
Throws:
CloudException
InternalException

getSubnetSupport

public Requirement getSubnetSupport()
                             throws CloudException,
                                    InternalException
Specified by:
getSubnetSupport in interface VLANSupport
Overrides:
getSubnetSupport in class AbstractVLANSupport
Throws:
CloudException
InternalException

getVlan

public VLAN getVlan(String vlanId)
             throws CloudException,
                    InternalException
Specified by:
getVlan in interface VLANSupport
Overrides:
getVlan in class AbstractVLANSupport
Throws:
CloudException
InternalException

isConnectedViaInternetGateway

public boolean isConnectedViaInternetGateway(@Nonnull
                                             String s)
                                      throws CloudException,
                                             InternalException
Specified by:
isConnectedViaInternetGateway in interface VLANSupport
Overrides:
isConnectedViaInternetGateway in class AbstractVLANSupport
Throws:
CloudException
InternalException

isNetworkInterfaceSupportEnabled

public boolean isNetworkInterfaceSupportEnabled()
                                         throws CloudException,
                                                InternalException
Specified by:
isNetworkInterfaceSupportEnabled in interface VLANSupport
Overrides:
isNetworkInterfaceSupportEnabled in class AbstractVLANSupport
Throws:
CloudException
InternalException

isSubscribed

public boolean isSubscribed()
                     throws CloudException,
                            InternalException
Throws:
CloudException
InternalException

isSubnetDataCenterConstrained

public boolean isSubnetDataCenterConstrained()
                                      throws CloudException,
                                             InternalException
Specified by:
isSubnetDataCenterConstrained in interface VLANSupport
Overrides:
isSubnetDataCenterConstrained in class AbstractVLANSupport
Throws:
CloudException
InternalException

isVlanDataCenterConstrained

public boolean isVlanDataCenterConstrained()
                                    throws CloudException,
                                           InternalException
Specified by:
isVlanDataCenterConstrained in interface VLANSupport
Overrides:
isVlanDataCenterConstrained in class AbstractVLANSupport
Throws:
CloudException
InternalException

listFirewallIdsForNIC

public Collection<String> listFirewallIdsForNIC(String nicId)
                                         throws CloudException,
                                                InternalException
Specified by:
listFirewallIdsForNIC in interface VLANSupport
Overrides:
listFirewallIdsForNIC in class AbstractVLANSupport
Throws:
CloudException
InternalException

listNetworkInterfaceStatus

@Nonnull
public Iterable<ResourceStatus> listNetworkInterfaceStatus()
                                                    throws CloudException,
                                                           InternalException
Specified by:
listNetworkInterfaceStatus in interface VLANSupport
Overrides:
listNetworkInterfaceStatus in class AbstractVLANSupport
Throws:
CloudException
InternalException

listNetworkInterfaces

public Iterable<NetworkInterface> listNetworkInterfaces()
                                                 throws CloudException,
                                                        InternalException
Specified by:
listNetworkInterfaces in interface VLANSupport
Overrides:
listNetworkInterfaces in class AbstractVLANSupport
Throws:
CloudException
InternalException

listNetworkInterfacesForVM

public Iterable<NetworkInterface> listNetworkInterfacesForVM(String forVmId)
                                                      throws CloudException,
                                                             InternalException
Specified by:
listNetworkInterfacesForVM in interface VLANSupport
Overrides:
listNetworkInterfacesForVM in class AbstractVLANSupport
Throws:
CloudException
InternalException

listNetworkInterfacesInSubnet

public Iterable<NetworkInterface> listNetworkInterfacesInSubnet(String subnetId)
                                                         throws CloudException,
                                                                InternalException
Specified by:
listNetworkInterfacesInSubnet in interface VLANSupport
Overrides:
listNetworkInterfacesInSubnet in class AbstractVLANSupport
Throws:
CloudException
InternalException

listNetworkInterfacesInVLAN

public Iterable<NetworkInterface> listNetworkInterfacesInVLAN(String vlanId)
                                                       throws CloudException,
                                                              InternalException
Specified by:
listNetworkInterfacesInVLAN in interface VLANSupport
Overrides:
listNetworkInterfacesInVLAN in class AbstractVLANSupport
Throws:
CloudException
InternalException

listResources

@Nonnull
public Iterable<Networkable> listResources(@Nonnull
                                                   String inVlanId)
                                    throws CloudException,
                                           InternalException
Specified by:
listResources in interface VLANSupport
Overrides:
listResources in class AbstractVLANSupport
Throws:
CloudException
InternalException

listRoutingTables

public Iterable<RoutingTable> listRoutingTables(String inVlanId)
                                         throws CloudException,
                                                InternalException
Specified by:
listRoutingTables in interface VLANSupport
Overrides:
listRoutingTables in class AbstractVLANSupport
Throws:
CloudException
InternalException

listSubnets

public Iterable<Subnet> listSubnets(String inVlanId)
                             throws CloudException,
                                    InternalException
Specified by:
listSubnets in interface VLANSupport
Overrides:
listSubnets in class AbstractVLANSupport
Throws:
CloudException
InternalException

listSupportedIPVersions

public Iterable<IPVersion> listSupportedIPVersions()
                                            throws CloudException,
                                                   InternalException
Specified by:
listSupportedIPVersions in interface VLANSupport
Overrides:
listSupportedIPVersions in class AbstractVLANSupport
Throws:
CloudException
InternalException

listVlanStatus

@Nonnull
public Iterable<ResourceStatus> listVlanStatus()
                                        throws CloudException,
                                               InternalException
Specified by:
listVlanStatus in interface VLANSupport
Overrides:
listVlanStatus in class AbstractVLANSupport
Throws:
CloudException
InternalException

listVlans

public Iterable<VLAN> listVlans()
                         throws CloudException,
                                InternalException
Specified by:
listVlans in interface VLANSupport
Overrides:
listVlans in class AbstractVLANSupport
Throws:
CloudException
InternalException

removeInternetGateway

public void removeInternetGateway(String forVlanId)
                           throws CloudException,
                                  InternalException
Specified by:
removeInternetGateway in interface VLANSupport
Overrides:
removeInternetGateway in class AbstractVLANSupport
Throws:
CloudException
InternalException

removeNetworkInterface

public void removeNetworkInterface(String nicId)
                            throws CloudException,
                                   InternalException
Specified by:
removeNetworkInterface in interface VLANSupport
Overrides:
removeNetworkInterface in class AbstractVLANSupport
Throws:
CloudException
InternalException

removeRoute

public void removeRoute(String inRoutingTableId,
                        String destinationCidr)
                 throws CloudException,
                        InternalException
Specified by:
removeRoute in interface VLANSupport
Overrides:
removeRoute in class AbstractVLANSupport
Throws:
CloudException
InternalException

removeRoutingTable

public void removeRoutingTable(String routingTableId)
                        throws CloudException,
                               InternalException
Specified by:
removeRoutingTable in interface VLANSupport
Overrides:
removeRoutingTable in class AbstractVLANSupport
Throws:
CloudException
InternalException

removeSubnet

public void removeSubnet(String providerSubnetId)
                  throws CloudException,
                         InternalException
Specified by:
removeSubnet in interface VLANSupport
Overrides:
removeSubnet in class AbstractVLANSupport
Throws:
CloudException
InternalException

removeVlan

public void removeVlan(String vlanId)
                throws CloudException,
                       InternalException
Specified by:
removeVlan in interface VLANSupport
Overrides:
removeVlan in class AbstractVLANSupport
Throws:
CloudException
InternalException

removeVLANTags

public void removeVLANTags(@Nonnull
                           String s,
                           @Nonnull
                           Tag... tags)
                    throws CloudException,
                           InternalException
Specified by:
removeVLANTags in interface VLANSupport
Overrides:
removeVLANTags in class AbstractVLANSupport
Throws:
CloudException
InternalException

removeVLANTags

public void removeVLANTags(@Nonnull
                           String[] strings,
                           @Nonnull
                           Tag... tags)
                    throws CloudException,
                           InternalException
Specified by:
removeVLANTags in interface VLANSupport
Overrides:
removeVLANTags in class AbstractVLANSupport
Throws:
CloudException
InternalException

supportsInternetGatewayCreation

public boolean supportsInternetGatewayCreation()
                                        throws CloudException,
                                               InternalException
Specified by:
supportsInternetGatewayCreation in interface VLANSupport
Overrides:
supportsInternetGatewayCreation in class AbstractVLANSupport
Throws:
CloudException
InternalException

supportsRawAddressRouting

public boolean supportsRawAddressRouting()
                                  throws CloudException,
                                         InternalException
Specified by:
supportsRawAddressRouting in interface VLANSupport
Overrides:
supportsRawAddressRouting in class AbstractVLANSupport
Throws:
CloudException
InternalException

updateVLANTags

public void updateVLANTags(@Nonnull
                           String s,
                           @Nonnull
                           Tag... tags)
                    throws CloudException,
                           InternalException
Specified by:
updateVLANTags in interface VLANSupport
Overrides:
updateVLANTags in class AbstractVLANSupport
Throws:
CloudException
InternalException

updateVLANTags

public void updateVLANTags(@Nonnull
                           String[] strings,
                           @Nonnull
                           Tag... tags)
                    throws CloudException,
                           InternalException
Specified by:
updateVLANTags in interface VLANSupport
Overrides:
updateVLANTags in class AbstractVLANSupport
Throws:
CloudException
InternalException


Copyright © 2013 enStratus Networks Inc. All Rights Reserved.