Class NovaSecurityGroupExtension
java.lang.Object
org.jclouds.openstack.nova.v2_0.compute.extensions.NovaSecurityGroupExtension
- All Implemented Interfaces:
SecurityGroupExtension
An extension to compute service to allow for the manipulation of
SecurityGroups. Implementation
is optional by providers.-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final NovaApiprotected final com.google.common.base.Function<SecurityGroupInRegion,SecurityGroup> protected final com.google.common.cache.LoadingCache<RegionAndName,SecurityGroup> protected final GroupNamingConvention.Factoryprotected final com.google.common.util.concurrent.ListeningExecutorService -
Constructor Summary
ConstructorsConstructorDescriptionNovaSecurityGroupExtension(NovaApi api, com.google.common.util.concurrent.ListeningExecutorService userExecutor, com.google.common.base.Supplier<Set<String>> regionIds, com.google.common.base.Function<SecurityGroupInRegion, SecurityGroup> groupConverter, com.google.common.cache.LoadingCache<RegionAndName, SecurityGroup> groupCreator, GroupNamingConvention.Factory namingConvention) -
Method Summary
Modifier and TypeMethodDescriptionaddIpPermission(IpPermission ipPermission, SecurityGroup group) addIpPermission(IpProtocol protocol, int startPort, int endPort, com.google.common.collect.Multimap<String, String> tenantIdGroupNamePairs, Iterable<String> ipRanges, Iterable<String> groupIds, SecurityGroup group) protected com.google.common.base.Function<String,Set<? extends SecurityGroupInRegion>> createSecurityGroup(String name, String region) createSecurityGroup(String name, org.jclouds.domain.Location location) protected com.google.common.base.Function<SecurityGroup,SecurityGroupInRegion> groupToGroupInRegion(Iterable<SecurityGroup> allGroups, String region) listSecurityGroupsInLocation(String region) listSecurityGroupsInLocation(org.jclouds.domain.Location location) protected Iterable<? extends SecurityGroupInRegion>protected Iterable<? extends SecurityGroupInRegion>pollSecurityGroupsByRegion(String region) removeIpPermission(IpPermission ipPermission, SecurityGroup group) removeIpPermission(IpProtocol protocol, int startPort, int endPort, com.google.common.collect.Multimap<String, String> tenantIdGroupNamePairs, Iterable<String> ipRanges, Iterable<String> groupIds, SecurityGroup group) booleanbooleanbooleanbooleanbooleanboolean
-
Field Details
-
api
-
userExecutor
protected final com.google.common.util.concurrent.ListeningExecutorService userExecutor -
regionIds
-
groupConverter
-
groupCreator
-
namingConvention
-
-
Constructor Details
-
NovaSecurityGroupExtension
@Inject public NovaSecurityGroupExtension(NovaApi api, @Named("jclouds.user-threads") com.google.common.util.concurrent.ListeningExecutorService userExecutor, com.google.common.base.Supplier<Set<String>> regionIds, com.google.common.base.Function<SecurityGroupInRegion, SecurityGroup> groupConverter, com.google.common.cache.LoadingCache<RegionAndName, SecurityGroup> groupCreator, GroupNamingConvention.Factory namingConvention)
-
-
Method Details
-
listSecurityGroups
- Specified by:
listSecurityGroupsin interfaceSecurityGroupExtension
-
listSecurityGroupsInLocation
- Specified by:
listSecurityGroupsInLocationin interfaceSecurityGroupExtension
-
listSecurityGroupsInLocation
-
listSecurityGroupsForNode
- Specified by:
listSecurityGroupsForNodein interfaceSecurityGroupExtension
-
getSecurityGroupById
- Specified by:
getSecurityGroupByIdin interfaceSecurityGroupExtension
-
createSecurityGroup
- Specified by:
createSecurityGroupin interfaceSecurityGroupExtension
-
createSecurityGroup
-
removeSecurityGroup
- Specified by:
removeSecurityGroupin interfaceSecurityGroupExtension
-
addIpPermission
- Specified by:
addIpPermissionin interfaceSecurityGroupExtension
-
addIpPermission
public SecurityGroup addIpPermission(IpProtocol protocol, int startPort, int endPort, com.google.common.collect.Multimap<String, String> tenantIdGroupNamePairs, Iterable<String> ipRanges, Iterable<String> groupIds, SecurityGroup group) - Specified by:
addIpPermissionin interfaceSecurityGroupExtension
-
removeIpPermission
- Specified by:
removeIpPermissionin interfaceSecurityGroupExtension
-
removeIpPermission
public SecurityGroup removeIpPermission(IpProtocol protocol, int startPort, int endPort, com.google.common.collect.Multimap<String, String> tenantIdGroupNamePairs, Iterable<String> ipRanges, Iterable<String> groupIds, SecurityGroup group) - Specified by:
removeIpPermissionin interfaceSecurityGroupExtension
-
supportsTenantIdGroupNamePairs
public boolean supportsTenantIdGroupNamePairs()- Specified by:
supportsTenantIdGroupNamePairsin interfaceSecurityGroupExtension
-
supportsTenantIdGroupIdPairs
public boolean supportsTenantIdGroupIdPairs()- Specified by:
supportsTenantIdGroupIdPairsin interfaceSecurityGroupExtension
-
supportsGroupIds
public boolean supportsGroupIds()- Specified by:
supportsGroupIdsin interfaceSecurityGroupExtension
-
supportsPortRangesForGroups
public boolean supportsPortRangesForGroups()- Specified by:
supportsPortRangesForGroupsin interfaceSecurityGroupExtension
-
supportsExclusionCidrBlocks
public boolean supportsExclusionCidrBlocks()- Specified by:
supportsExclusionCidrBlocksin interfaceSecurityGroupExtension
-
pollSecurityGroups
-
pollSecurityGroupsByRegion
-
allSecurityGroupsInRegion
protected com.google.common.base.Function<String,Set<? extends SecurityGroupInRegion>> allSecurityGroupsInRegion() -
groupToGroupInRegion
protected com.google.common.base.Function<SecurityGroup,SecurityGroupInRegion> groupToGroupInRegion(Iterable<SecurityGroup> allGroups, String region)
-