org.jclouds.cloudstack.compute.extensions
Class CloudStackSecurityGroupExtension
java.lang.Object
org.jclouds.cloudstack.compute.extensions.CloudStackSecurityGroupExtension
- All Implemented Interfaces:
- org.jclouds.compute.extensions.SecurityGroupExtension
public class CloudStackSecurityGroupExtension
- 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.
|
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)
|
org.jclouds.compute.domain.SecurityGroup |
createSecurityGroup(String name,
org.jclouds.domain.Location location)
|
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)
Note that for the time being, security groups are not scoped by location in
CloudStack, so this will simply return listSecurityGroups(). |
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 |
api
protected final CloudStackApi api
groupConverter
protected final com.google.common.base.Function<SecurityGroup,org.jclouds.compute.domain.SecurityGroup> groupConverter
groupCreator
protected final com.google.common.cache.LoadingCache<ZoneAndName,SecurityGroup> groupCreator
namingConvention
protected final org.jclouds.compute.functions.GroupNamingConvention.Factory namingConvention
locations
protected final com.google.common.base.Supplier<Set<? extends org.jclouds.domain.Location>> locations
blockUntilJobCompletesAndReturnResult
protected final BlockUntilJobCompletesAndReturnResult blockUntilJobCompletesAndReturnResult
jobComplete
protected final com.google.common.base.Predicate<String> jobComplete
CloudStackSecurityGroupExtension
@Inject
public CloudStackSecurityGroupExtension(CloudStackApi api,
com.google.common.base.Function<SecurityGroup,org.jclouds.compute.domain.SecurityGroup> groupConverter,
com.google.common.cache.LoadingCache<ZoneAndName,SecurityGroup> groupCreator,
org.jclouds.compute.functions.GroupNamingConvention.Factory namingConvention,
com.google.common.base.Supplier<Set<? extends org.jclouds.domain.Location>> locations,
BlockUntilJobCompletesAndReturnResult blockUntilJobCompletesAndReturnResult,
com.google.common.base.Predicate<String> jobComplete)
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)
- Note that for the time being, security groups are not scoped by location in
CloudStack, so this will simply return listSecurityGroups().
- Specified by:
listSecurityGroupsInLocation in interface org.jclouds.compute.extensions.SecurityGroupExtension
- Parameters:
location -
- Returns:
- security groups
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
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
Copyright © 2009-2014 The Apache Software Foundation. All Rights Reserved.