|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.jclouds.compute.stub.extensions.StubSecurityGroupExtension
public class StubSecurityGroupExtension
An extension to compute service to allow for the manipulation of SecurityGroups. Implementation
is optional by providers.
| Constructor Summary | |
|---|---|
StubSecurityGroupExtension(ConcurrentMap<String,SecurityGroup> groups,
com.google.common.util.concurrent.ListeningExecutorService ioExecutor,
com.google.common.base.Supplier<org.jclouds.domain.Location> location,
javax.inject.Provider<Integer> groupIdProvider,
org.jclouds.location.suppliers.all.JustProvider locationSupplier,
com.google.common.collect.Multimap<String,SecurityGroup> groupsForNodes)
|
|
| Method Summary | |
|---|---|
SecurityGroup |
addIpPermission(IpPermission ipPermission,
SecurityGroup group)
Add a @{link IpPermission} to an existing @{link SecurityGroup}. |
SecurityGroup |
addIpPermission(IpProtocol protocol,
int startPort,
int endPort,
com.google.common.collect.Multimap<String,String> tenantIdGroupNamePairs,
Iterable<String> ipRanges,
Iterable<String> groupIds,
SecurityGroup group)
Add a @{link IpPermission} to an existing @{link SecurityGroup}, based on the parameters given. |
SecurityGroup |
createSecurityGroup(String name,
org.jclouds.domain.Location location)
Create a new @{link SecurityGroup} from the parameters given. |
SecurityGroup |
getSecurityGroupById(String id)
Get a security group by id. |
Set<SecurityGroup> |
listSecurityGroups()
List security groups. |
Set<SecurityGroup> |
listSecurityGroupsForNode(String nodeId)
List security groups for a given instance given the instance's ID. |
Set<SecurityGroup> |
listSecurityGroupsInLocation(org.jclouds.domain.Location location)
List security groups in a given @{link Location}. |
SecurityGroup |
removeIpPermission(IpPermission ipPermission,
SecurityGroup group)
Remove a @{link IpPermission} from an existing @{link SecurityGroup}. |
SecurityGroup |
removeIpPermission(IpProtocol protocol,
int startPort,
int endPort,
com.google.common.collect.Multimap<String,String> tenantIdGroupNamePairs,
Iterable<String> ipRanges,
Iterable<String> groupIds,
SecurityGroup group)
Remove a @{link IpPermission} from an existing @{link SecurityGroup}, based on the parameters given. |
boolean |
removeSecurityGroup(String id)
Remove an existing @{link SecurityGroup}, and its permissions. |
boolean |
supportsGroupIds()
Returns true if this SecurityGroupExtension supports group IDs. |
boolean |
supportsPortRangesForGroups()
Returns true if this SecurityGroupExtension supports port ranges for group authorization. |
boolean |
supportsTenantIdGroupIdPairs()
Returns true if this SecurityGroupExtension supports tenant ID + group ID pairs. |
boolean |
supportsTenantIdGroupNamePairs()
Returns true if this SecurityGroupExtension supports tenant ID + group name pairs. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
@Inject
public StubSecurityGroupExtension(ConcurrentMap<String,SecurityGroup> groups,
@Named(value="jclouds.io-worker-threads")
com.google.common.util.concurrent.ListeningExecutorService ioExecutor,
com.google.common.base.Supplier<org.jclouds.domain.Location> location,
@Named(value="GROUP_ID")
javax.inject.Provider<Integer> groupIdProvider,
org.jclouds.location.suppliers.all.JustProvider locationSupplier,
com.google.common.collect.Multimap<String,SecurityGroup> groupsForNodes)
| Method Detail |
|---|
public Set<SecurityGroup> listSecurityGroups()
SecurityGroupExtension
listSecurityGroups in interface SecurityGroupExtensionpublic Set<SecurityGroup> listSecurityGroupsInLocation(org.jclouds.domain.Location location)
SecurityGroupExtension
listSecurityGroupsInLocation in interface SecurityGroupExtensionpublic Set<SecurityGroup> listSecurityGroupsForNode(String nodeId)
SecurityGroupExtension
listSecurityGroupsForNode in interface SecurityGroupExtensionpublic SecurityGroup getSecurityGroupById(String id)
SecurityGroupExtension
getSecurityGroupById in interface SecurityGroupExtension
public SecurityGroup createSecurityGroup(String name,
org.jclouds.domain.Location location)
SecurityGroupExtension
createSecurityGroup in interface SecurityGroupExtensionname - The name of the security grouplocation - The @{link Location} of the security group
public boolean removeSecurityGroup(String id)
SecurityGroupExtension
removeSecurityGroup in interface SecurityGroupExtensionid - The id of the SecurityGroup to delete.
public SecurityGroup addIpPermission(IpPermission ipPermission,
SecurityGroup group)
SecurityGroupExtension
addIpPermission in interface SecurityGroupExtensiongroup - The SecurityGroup to add the permission to.
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)
SecurityGroupExtension
addIpPermission in interface SecurityGroupExtensionprotocol - The @{link IpProtocol} for the permission.startPort - The first port in the range to be opened, or -1 for ICMP.endPort - The last port in the range to be opened, or -1 for ICMP.tenantIdGroupNamePairs - source of traffic allowed is on basis of another group in a tenant, as opposed to by cidripRanges - An Iterable of Strings representing the IP range(s) the permission should allow.groupIds - An Iterable of @{link SecurityGroup} IDs this permission should allow.group - The SecurityGroup to add the permission to.
public SecurityGroup removeIpPermission(IpPermission ipPermission,
SecurityGroup group)
SecurityGroupExtension
removeIpPermission in interface SecurityGroupExtensiongroup - The SecurityGroup to remove the permission from.
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)
SecurityGroupExtension
removeIpPermission in interface SecurityGroupExtensionprotocol - The @{link IpProtocol} for the permission.startPort - The first port in the range to be opened, or -1 for ICMP.endPort - The last port in the range to be opened, or -1 for ICMP.tenantIdGroupNamePairs - source of traffic allowed is on basis of another group in a tenant, as opposed to by cidripRanges - An Iterable of Strings representing the IP range(s) the permission should allow.groupIds - An Iterable of @{link SecurityGroup} IDs this permission should allow.group - The SecurityGroup to remove the permission from.
public boolean supportsTenantIdGroupNamePairs()
SecurityGroupExtension
supportsTenantIdGroupNamePairs in interface SecurityGroupExtensionpublic boolean supportsTenantIdGroupIdPairs()
SecurityGroupExtension
supportsTenantIdGroupIdPairs in interface SecurityGroupExtensionpublic boolean supportsGroupIds()
SecurityGroupExtension
supportsGroupIds in interface SecurityGroupExtensionpublic boolean supportsPortRangesForGroups()
SecurityGroupExtension
supportsPortRangesForGroups in interface SecurityGroupExtension
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||