Class NovaSecurityGroupExtension
java.lang.Object
org.jclouds.openstack.nova.v2_0.compute.extensions.NovaSecurityGroupExtension
- All Implemented Interfaces:
org.jclouds.compute.extensions.SecurityGroupExtension
public class NovaSecurityGroupExtension
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.-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final NovaApiprotected final com.google.common.base.Function<SecurityGroupInRegion,org.jclouds.compute.domain.SecurityGroup> protected final com.google.common.cache.LoadingCache<RegionAndName,org.jclouds.compute.domain.SecurityGroup> protected final org.jclouds.compute.functions.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, org.jclouds.compute.domain.SecurityGroup> groupConverter, com.google.common.cache.LoadingCache<RegionAndName, org.jclouds.compute.domain.SecurityGroup> groupCreator, org.jclouds.compute.functions.GroupNamingConvention.Factory namingConvention) -
Method Summary
Modifier and TypeMethodDescriptionorg.jclouds.compute.domain.SecurityGroupaddIpPermission(org.jclouds.net.domain.IpPermission ipPermission, org.jclouds.compute.domain.SecurityGroup group) org.jclouds.compute.domain.SecurityGroupaddIpPermission(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 SecurityGroupInRegion>> org.jclouds.compute.domain.SecurityGroupcreateSecurityGroup(String name, String region) org.jclouds.compute.domain.SecurityGroupcreateSecurityGroup(String name, org.jclouds.domain.Location location) org.jclouds.compute.domain.SecurityGroupprotected com.google.common.base.Function<SecurityGroup,SecurityGroupInRegion> groupToGroupInRegion(Iterable<SecurityGroup> allGroups, String region) Set<org.jclouds.compute.domain.SecurityGroup>Set<org.jclouds.compute.domain.SecurityGroup>Set<org.jclouds.compute.domain.SecurityGroup>listSecurityGroupsInLocation(String region) Set<org.jclouds.compute.domain.SecurityGroup>listSecurityGroupsInLocation(org.jclouds.domain.Location location) protected Iterable<? extends SecurityGroupInRegion>protected Iterable<? extends SecurityGroupInRegion>pollSecurityGroupsByRegion(String region) org.jclouds.compute.domain.SecurityGroupremoveIpPermission(org.jclouds.net.domain.IpPermission ipPermission, org.jclouds.compute.domain.SecurityGroup group) org.jclouds.compute.domain.SecurityGroupremoveIpPermission(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) booleanbooleanbooleanbooleanbooleanboolean
-
Field Details
-
api
-
userExecutor
protected final com.google.common.util.concurrent.ListeningExecutorService userExecutor -
regionIds
-
groupConverter
protected final com.google.common.base.Function<SecurityGroupInRegion,org.jclouds.compute.domain.SecurityGroup> groupConverter -
groupCreator
protected final com.google.common.cache.LoadingCache<RegionAndName,org.jclouds.compute.domain.SecurityGroup> groupCreator -
namingConvention
protected final org.jclouds.compute.functions.GroupNamingConvention.Factory 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, org.jclouds.compute.domain.SecurityGroup> groupConverter, com.google.common.cache.LoadingCache<RegionAndName, org.jclouds.compute.domain.SecurityGroup> groupCreator, org.jclouds.compute.functions.GroupNamingConvention.Factory namingConvention)
-
-
Method Details
-
listSecurityGroups
- Specified by:
listSecurityGroupsin interfaceorg.jclouds.compute.extensions.SecurityGroupExtension
-
listSecurityGroupsInLocation
public Set<org.jclouds.compute.domain.SecurityGroup> listSecurityGroupsInLocation(org.jclouds.domain.Location location) - Specified by:
listSecurityGroupsInLocationin interfaceorg.jclouds.compute.extensions.SecurityGroupExtension
-
listSecurityGroupsInLocation
-
listSecurityGroupsForNode
- Specified by:
listSecurityGroupsForNodein interfaceorg.jclouds.compute.extensions.SecurityGroupExtension
-
getSecurityGroupById
- Specified by:
getSecurityGroupByIdin interfaceorg.jclouds.compute.extensions.SecurityGroupExtension
-
createSecurityGroup
public org.jclouds.compute.domain.SecurityGroup createSecurityGroup(String name, org.jclouds.domain.Location location) - Specified by:
createSecurityGroupin interfaceorg.jclouds.compute.extensions.SecurityGroupExtension
-
createSecurityGroup
-
removeSecurityGroup
- Specified by:
removeSecurityGroupin interfaceorg.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:
addIpPermissionin interfaceorg.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:
addIpPermissionin interfaceorg.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:
removeIpPermissionin interfaceorg.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:
removeIpPermissionin interfaceorg.jclouds.compute.extensions.SecurityGroupExtension
-
supportsTenantIdGroupNamePairs
public boolean supportsTenantIdGroupNamePairs()- Specified by:
supportsTenantIdGroupNamePairsin interfaceorg.jclouds.compute.extensions.SecurityGroupExtension
-
supportsTenantIdGroupIdPairs
public boolean supportsTenantIdGroupIdPairs()- Specified by:
supportsTenantIdGroupIdPairsin interfaceorg.jclouds.compute.extensions.SecurityGroupExtension
-
supportsGroupIds
public boolean supportsGroupIds()- Specified by:
supportsGroupIdsin interfaceorg.jclouds.compute.extensions.SecurityGroupExtension
-
supportsPortRangesForGroups
public boolean supportsPortRangesForGroups()- Specified by:
supportsPortRangesForGroupsin interfaceorg.jclouds.compute.extensions.SecurityGroupExtension
-
supportsExclusionCidrBlocks
public boolean supportsExclusionCidrBlocks()- Specified by:
supportsExclusionCidrBlocksin interfaceorg.jclouds.compute.extensions.SecurityGroupExtension
-
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)
-