org.jclouds.ec2.compute.extensions
Class EC2SecurityGroupExtension
java.lang.Object
org.jclouds.ec2.compute.extensions.EC2SecurityGroupExtension
- All Implemented Interfaces:
- org.jclouds.compute.extensions.SecurityGroupExtension
public class EC2SecurityGroupExtension
- extends Object
- implements org.jclouds.compute.extensions.SecurityGroupExtension
An extension to compute service to allow for the manipulation of SecurityGroups. Implementation
is optional by providers.
|
Constructor Summary |
EC2SecurityGroupExtension(EC2Api client,
com.google.common.util.concurrent.ListeningExecutorService userExecutor,
com.google.common.base.Supplier<Set<String>> regions,
com.google.common.base.Function<SecurityGroup,org.jclouds.compute.domain.SecurityGroup> groupConverter,
com.google.common.base.Supplier<Set<? extends org.jclouds.domain.Location>> locations,
com.google.common.cache.LoadingCache<RegionAndName,String> groupCreator,
org.jclouds.compute.functions.GroupNamingConvention.Factory namingConvention)
|
|
Method Summary |
org.jclouds.compute.domain.SecurityGroup |
addIpPermission(org.jclouds.net.domain.IpPermission ipPermission,
org.jclouds.compute.domain.SecurityGroup group)
|
org.jclouds.compute.domain.SecurityGroup |
addIpPermission(org.jclouds.net.domain.IpProtocol protocol,
int startPort,
int endPort,
com.google.common.collect.Multimap<String,String> tenantIdGroupNamePairs,
Iterable<String> ipRanges,
Iterable<String> groupIds,
org.jclouds.compute.domain.SecurityGroup group)
|
protected com.google.common.base.Function<String,Set<? extends SecurityGroup>> |
allSecurityGroupsInRegion()
|
org.jclouds.compute.domain.SecurityGroup |
createSecurityGroup(String name,
org.jclouds.domain.Location location)
|
org.jclouds.compute.domain.SecurityGroup |
createSecurityGroup(String name,
String region)
|
protected org.jclouds.domain.Location |
findLocationWithId(String locationId)
|
org.jclouds.compute.domain.SecurityGroup |
getSecurityGroupById(String id)
|
Set<org.jclouds.compute.domain.SecurityGroup> |
listSecurityGroups()
|
Set<org.jclouds.compute.domain.SecurityGroup> |
listSecurityGroupsForNode(String id)
|
Set<org.jclouds.compute.domain.SecurityGroup> |
listSecurityGroupsInLocation(org.jclouds.domain.Location location)
|
Set<org.jclouds.compute.domain.SecurityGroup> |
listSecurityGroupsInLocation(String region)
|
protected Iterable<? extends SecurityGroup> |
pollSecurityGroups()
|
protected Iterable<? extends SecurityGroup> |
pollSecurityGroupsByRegion(String region)
|
org.jclouds.compute.domain.SecurityGroup |
removeIpPermission(org.jclouds.net.domain.IpPermission ipPermission,
org.jclouds.compute.domain.SecurityGroup group)
|
org.jclouds.compute.domain.SecurityGroup |
removeIpPermission(org.jclouds.net.domain.IpProtocol protocol,
int startPort,
int endPort,
com.google.common.collect.Multimap<String,String> tenantIdGroupNamePairs,
Iterable<String> ipRanges,
Iterable<String> groupIds,
org.jclouds.compute.domain.SecurityGroup group)
|
boolean |
removeSecurityGroup(String id)
|
boolean |
supportsGroupIds()
|
boolean |
supportsPortRangesForGroups()
|
boolean |
supportsTenantIdGroupIdPairs()
|
boolean |
supportsTenantIdGroupNamePairs()
|
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
client
protected final EC2Api client
userExecutor
protected final com.google.common.util.concurrent.ListeningExecutorService userExecutor
regions
protected final com.google.common.base.Supplier<Set<String>> regions
groupConverter
protected final com.google.common.base.Function<SecurityGroup,org.jclouds.compute.domain.SecurityGroup> groupConverter
locations
protected final com.google.common.base.Supplier<Set<? extends org.jclouds.domain.Location>> locations
groupCreator
protected final com.google.common.cache.LoadingCache<RegionAndName,String> groupCreator
namingConvention
protected final org.jclouds.compute.functions.GroupNamingConvention.Factory namingConvention
EC2SecurityGroupExtension
@Inject
public EC2SecurityGroupExtension(EC2Api client,
@Named(value="jclouds.user-threads")
com.google.common.util.concurrent.ListeningExecutorService userExecutor,
com.google.common.base.Supplier<Set<String>> regions,
com.google.common.base.Function<SecurityGroup,org.jclouds.compute.domain.SecurityGroup> groupConverter,
com.google.common.base.Supplier<Set<? extends org.jclouds.domain.Location>> locations,
@Named(value="SECURITY")
com.google.common.cache.LoadingCache<RegionAndName,String> groupCreator,
org.jclouds.compute.functions.GroupNamingConvention.Factory namingConvention)
listSecurityGroups
public Set<org.jclouds.compute.domain.SecurityGroup> listSecurityGroups()
- Specified by:
listSecurityGroups in interface org.jclouds.compute.extensions.SecurityGroupExtension
listSecurityGroupsInLocation
public Set<org.jclouds.compute.domain.SecurityGroup> listSecurityGroupsInLocation(org.jclouds.domain.Location location)
- Specified by:
listSecurityGroupsInLocation in interface org.jclouds.compute.extensions.SecurityGroupExtension
listSecurityGroupsInLocation
public Set<org.jclouds.compute.domain.SecurityGroup> listSecurityGroupsInLocation(String region)
listSecurityGroupsForNode
public Set<org.jclouds.compute.domain.SecurityGroup> listSecurityGroupsForNode(String id)
- Specified by:
listSecurityGroupsForNode in interface org.jclouds.compute.extensions.SecurityGroupExtension
getSecurityGroupById
public org.jclouds.compute.domain.SecurityGroup getSecurityGroupById(String id)
- Specified by:
getSecurityGroupById in interface org.jclouds.compute.extensions.SecurityGroupExtension
createSecurityGroup
public org.jclouds.compute.domain.SecurityGroup createSecurityGroup(String name,
org.jclouds.domain.Location location)
- Specified by:
createSecurityGroup in interface org.jclouds.compute.extensions.SecurityGroupExtension
createSecurityGroup
public org.jclouds.compute.domain.SecurityGroup createSecurityGroup(String name,
String region)
removeSecurityGroup
public boolean removeSecurityGroup(String id)
- Specified by:
removeSecurityGroup in interface org.jclouds.compute.extensions.SecurityGroupExtension
addIpPermission
public org.jclouds.compute.domain.SecurityGroup addIpPermission(org.jclouds.net.domain.IpPermission ipPermission,
org.jclouds.compute.domain.SecurityGroup group)
- Specified by:
addIpPermission in interface org.jclouds.compute.extensions.SecurityGroupExtension
addIpPermission
public org.jclouds.compute.domain.SecurityGroup addIpPermission(org.jclouds.net.domain.IpProtocol protocol,
int startPort,
int endPort,
com.google.common.collect.Multimap<String,String> tenantIdGroupNamePairs,
Iterable<String> ipRanges,
Iterable<String> groupIds,
org.jclouds.compute.domain.SecurityGroup group)
- Specified by:
addIpPermission in interface org.jclouds.compute.extensions.SecurityGroupExtension
removeIpPermission
public org.jclouds.compute.domain.SecurityGroup removeIpPermission(org.jclouds.net.domain.IpPermission ipPermission,
org.jclouds.compute.domain.SecurityGroup group)
- Specified by:
removeIpPermission in interface org.jclouds.compute.extensions.SecurityGroupExtension
removeIpPermission
public org.jclouds.compute.domain.SecurityGroup removeIpPermission(org.jclouds.net.domain.IpProtocol protocol,
int startPort,
int endPort,
com.google.common.collect.Multimap<String,String> tenantIdGroupNamePairs,
Iterable<String> ipRanges,
Iterable<String> groupIds,
org.jclouds.compute.domain.SecurityGroup group)
- Specified by:
removeIpPermission in interface org.jclouds.compute.extensions.SecurityGroupExtension
supportsTenantIdGroupNamePairs
public boolean supportsTenantIdGroupNamePairs()
- Specified by:
supportsTenantIdGroupNamePairs in interface org.jclouds.compute.extensions.SecurityGroupExtension
supportsTenantIdGroupIdPairs
public boolean supportsTenantIdGroupIdPairs()
- Specified by:
supportsTenantIdGroupIdPairs in interface org.jclouds.compute.extensions.SecurityGroupExtension
supportsGroupIds
public boolean supportsGroupIds()
- Specified by:
supportsGroupIds in interface org.jclouds.compute.extensions.SecurityGroupExtension
supportsPortRangesForGroups
public boolean supportsPortRangesForGroups()
- Specified by:
supportsPortRangesForGroups in interface org.jclouds.compute.extensions.SecurityGroupExtension
pollSecurityGroups
protected Iterable<? extends SecurityGroup> pollSecurityGroups()
pollSecurityGroupsByRegion
protected Iterable<? extends SecurityGroup> pollSecurityGroupsByRegion(String region)
allSecurityGroupsInRegion
protected com.google.common.base.Function<String,Set<? extends SecurityGroup>> allSecurityGroupsInRegion()
findLocationWithId
protected org.jclouds.domain.Location findLocationWithId(String locationId)
Copyright © 2009-2014 The Apache Software Foundation. All Rights Reserved.