public class EC2SecurityGroupExtension extends Object implements SecurityGroupExtension
SecurityGroups. Implementation
is optional by providers.| Modifier and Type | Field and Description |
|---|---|
protected EC2Api |
client |
protected com.google.common.base.Function<SecurityGroup,SecurityGroup> |
groupConverter |
protected com.google.common.cache.LoadingCache<RegionAndName,String> |
groupCreator |
protected com.google.common.base.Supplier<Set<? extends org.jclouds.domain.Location>> |
locations |
protected GroupNamingConvention.Factory |
namingConvention |
protected com.google.common.base.Supplier<Set<String>> |
regions |
protected com.google.common.util.concurrent.ListeningExecutorService |
userExecutor |
| Constructor and Description |
|---|
EC2SecurityGroupExtension(EC2Api client,
com.google.common.util.concurrent.ListeningExecutorService userExecutor,
com.google.common.base.Supplier<Set<String>> regions,
com.google.common.base.Function<SecurityGroup,SecurityGroup> groupConverter,
com.google.common.base.Supplier<Set<? extends org.jclouds.domain.Location>> locations,
com.google.common.cache.LoadingCache<RegionAndName,String> groupCreator,
GroupNamingConvention.Factory namingConvention) |
protected final EC2Api client
protected final com.google.common.util.concurrent.ListeningExecutorService userExecutor
protected final com.google.common.base.Function<SecurityGroup,SecurityGroup> groupConverter
protected final com.google.common.base.Supplier<Set<? extends org.jclouds.domain.Location>> locations
protected final com.google.common.cache.LoadingCache<RegionAndName,String> groupCreator
protected final GroupNamingConvention.Factory namingConvention
@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,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, GroupNamingConvention.Factory namingConvention)
public Set<SecurityGroup> listSecurityGroups()
listSecurityGroups in interface SecurityGroupExtensionpublic Set<SecurityGroup> listSecurityGroupsInLocation(org.jclouds.domain.Location location)
listSecurityGroupsInLocation in interface SecurityGroupExtensionpublic Set<SecurityGroup> listSecurityGroupsInLocation(String region)
public Set<SecurityGroup> listSecurityGroupsForNode(String id)
listSecurityGroupsForNode in interface SecurityGroupExtensionpublic SecurityGroup getSecurityGroupById(String id)
getSecurityGroupById in interface SecurityGroupExtensionpublic SecurityGroup createSecurityGroup(String name, org.jclouds.domain.Location location)
createSecurityGroup in interface SecurityGroupExtensionpublic SecurityGroup createSecurityGroup(String name, String region)
public boolean removeSecurityGroup(String id)
removeSecurityGroup in interface SecurityGroupExtensionpublic SecurityGroup addIpPermission(IpPermission ipPermission, SecurityGroup group)
addIpPermission in interface SecurityGroupExtensionpublic SecurityGroup addIpPermission(IpProtocol protocol, int startPort, int endPort, com.google.common.collect.Multimap<String,String> tenantIdGroupNamePairs, Iterable<String> ipRanges, Iterable<String> groupIds, SecurityGroup group)
addIpPermission in interface SecurityGroupExtensionpublic SecurityGroup removeIpPermission(IpPermission ipPermission, SecurityGroup group)
removeIpPermission in interface SecurityGroupExtensionpublic SecurityGroup removeIpPermission(IpProtocol protocol, int startPort, int endPort, com.google.common.collect.Multimap<String,String> tenantIdGroupNamePairs, Iterable<String> ipRanges, Iterable<String> groupIds, SecurityGroup group)
removeIpPermission in interface SecurityGroupExtensionpublic boolean supportsTenantIdGroupNamePairs()
supportsTenantIdGroupNamePairs in interface SecurityGroupExtensionpublic boolean supportsTenantIdGroupIdPairs()
supportsTenantIdGroupIdPairs in interface SecurityGroupExtensionpublic boolean supportsGroupIds()
supportsGroupIds in interface SecurityGroupExtensionpublic boolean supportsPortRangesForGroups()
supportsPortRangesForGroups in interface SecurityGroupExtensionpublic boolean supportsExclusionCidrBlocks()
supportsExclusionCidrBlocks in interface SecurityGroupExtensionprotected Iterable<? extends SecurityGroup> pollSecurityGroups()
protected Iterable<? extends SecurityGroup> pollSecurityGroupsByRegion(String region)
protected com.google.common.base.Function<String,Set<? extends SecurityGroup>> allSecurityGroupsInRegion()
protected org.jclouds.domain.Location findLocationWithId(String locationId)
Copyright © 2009–2021 The Apache Software Foundation. All rights reserved.