public SecurityGroupInRegion(SecurityGroup securityGroup, String regionId, Iterable<SecurityGroup> allGroupsInRegion) { super(regionId, checkNotNull(securityGroup, "securityGroup").getName()); this.securityGroup = securityGroup; this.groupsByName = HashMultimap.create(); for (SecurityGroup groupInRegion : allGroupsInRegion) { final TenantIdAndName tenantIdAndName = TenantIdAndName.builder() .tenantId(groupInRegion.getTenantId()) .name(groupInRegion.getName()) .build(); this.groupsByName.put(tenantIdAndName, groupInRegion); } }
public SecurityGroupInRegion(SecurityGroup securityGroup, String regionId, Iterable<SecurityGroup> allGroupsInRegion) { super(regionId, checkNotNull(securityGroup, "securityGroup").getName()); this.securityGroup = securityGroup; this.groupsByName = HashMultimap.create(); for (SecurityGroup groupInRegion : allGroupsInRegion) { final TenantIdAndName tenantIdAndName = TenantIdAndName.builder() .tenantId(groupInRegion.getTenantId()) .name(groupInRegion.getName()) .build(); this.groupsByName.put(tenantIdAndName, groupInRegion); } }
@Override public SecurityGroup apply(final SecurityGroupInRegion groupInRegion) { SecurityGroupBuilder builder = new SecurityGroupBuilder(); final org.jclouds.openstack.nova.v2_0.domain.SecurityGroup group = groupInRegion.getSecurityGroup(); builder.id(group.getId()); builder.providerId(group.getId()); builder.ownerId(group.getTenantId()); builder.name(group.getName()); if (group.getRules() != null) { builder.ipPermissions(filter(transform(group.getRules(), new Function<SecurityGroupRule, IpPermission>() { @Override public IpPermission apply(SecurityGroupRule input) { return securityGroupRuleToIpPermission(groupInRegion, input); } }), Predicates.notNull())); } final String regionId = groupInRegion.getRegion(); Location region = locationIndex.get().get(regionId); checkState(region != null, "location %s not in locationIndex: %s", regionId, locationIndex.get()); builder.location(region); builder.id(regionId + "/" + group.getId()); return builder.build(); }
@Override public SecurityGroup apply(final SecurityGroupInRegion groupInRegion) { SecurityGroupBuilder builder = new SecurityGroupBuilder(); final org.jclouds.openstack.nova.v2_0.domain.SecurityGroup group = groupInRegion.getSecurityGroup(); builder.id(group.getId()); builder.providerId(group.getId()); builder.ownerId(group.getTenantId()); builder.name(group.getName()); if (group.getRules() != null) { builder.ipPermissions(filter(transform(group.getRules(), new Function<SecurityGroupRule, IpPermission>() { @Override public IpPermission apply(SecurityGroupRule input) { return securityGroupRuleToIpPermission(groupInRegion, input); } }), Predicates.notNull())); } final String regionId = groupInRegion.getRegion(); Location region = locationIndex.get().get(regionId); checkState(region != null, "location %s not in locationIndex: %s", regionId, locationIndex.get()); builder.location(region); builder.id(regionId + "/" + group.getId()); return builder.build(); }
@Override public SecurityGroup apply(@Nullable org.jclouds.openstack.nova.v2_0.domain.SecurityGroup group) { SecurityGroupBuilder builder = new SecurityGroupBuilder(); builder.providerId(group.getId()); builder.ownerId(group.getTenantId()); builder.name(group.getName()); final String regionId = location.getId(); builder.location(location); builder.id(regionId + "/" + group.getId()); if (group.getRules() != null) { builder.ipPermissions(filter(transform(group.getRules(), new Function<SecurityGroupRule, IpPermission>() { @Override public IpPermission apply(SecurityGroupRule input) { return securityGroupRuleToIpPermission(input); } }), Predicates.notNull())); } return builder.build(); }
@Override public SecurityGroup apply(@Nullable org.jclouds.openstack.nova.v2_0.domain.SecurityGroup group) { SecurityGroupBuilder builder = new SecurityGroupBuilder(); builder.providerId(group.getId()); builder.ownerId(group.getTenantId()); builder.name(group.getName()); final String regionId = location.getId(); builder.location(location); builder.id(regionId + "/" + group.getId()); if (group.getRules() != null) { builder.ipPermissions(filter(transform(group.getRules(), new Function<SecurityGroupRule, IpPermission>() { @Override public IpPermission apply(SecurityGroupRule input) { return securityGroupRuleToIpPermission(input); } }), Predicates.notNull())); } return builder.build(); }
@Override public SecurityGroup apply(org.jclouds.openstack.nova.v2_0.domain.SecurityGroup group) { SecurityGroupBuilder builder = new SecurityGroupBuilder(); builder.id(group.getId()); builder.providerId(group.getId()); builder.ownerId(group.getTenantId()); builder.name(group.getName()); if (group.getRules() != null) { builder.ipPermissions(transform(group.getRules(), ruleToPermission)); } return builder.build(); } }
public T fromSecurityGroup(SecurityGroup in) { return this .id(in.getId()) .tenantId(in.getTenantId()) .name(in.getName()) .description(in.getDescription()) .rules(in.getRules()); } }
@Override public SecurityGroup apply(org.jclouds.openstack.nova.v2_0.domain.SecurityGroup group) { SecurityGroupBuilder builder = new SecurityGroupBuilder(); builder.id(group.getId()); builder.providerId(group.getId()); builder.ownerId(group.getTenantId()); builder.name(group.getName()); if (group.getRules() != null) { builder.ipPermissions(transform(group.getRules(), ruleToPermission)); } return builder.build(); } }
public T fromSecurityGroup(SecurityGroup in) { return this .id(in.getId()) .tenantId(in.getTenantId()) .name(in.getName()) .description(in.getDescription()) .rules(in.getRules()); } }
public T fromSecurityGroup(SecurityGroup in) { return this .id(in.getId()) .tenantId(in.getTenantId()) .name(in.getName()) .description(in.getDescription()) .rules(in.getRules()); } }
public T fromSecurityGroup(SecurityGroup in) { return this .id(in.getId()) .tenantId(in.getTenantId()) .name(in.getName()) .description(in.getDescription()) .rules(in.getRules()); } }
public T fromSecurityGroup(SecurityGroup in) { return this .id(in.getId()) .tenantId(in.getTenantId()) .name(in.getName()) .description(in.getDescription()) .rules(in.getRules()); } }
public T fromSecurityGroup(SecurityGroup in) { return this .id(in.getId()) .tenantId(in.getTenantId()) .name(in.getName()) .description(in.getDescription()) .rules(in.getRules()); } }
@Test public void testApplyWithCidr() { NovaSecurityGroupInRegionToSecurityGroup parser = createGroupParser(); SecurityGroupInRegion origGroup = new SecurityGroupInRegion(securityGroupWithCidr(), region.getId(), allGroups); SecurityGroup newGroup = parser.apply(origGroup); assertEquals(newGroup.getId(), origGroup.getRegion() + "/" + origGroup.getSecurityGroup().getId()); assertEquals(newGroup.getProviderId(), origGroup.getSecurityGroup().getId()); assertEquals(newGroup.getName(), origGroup.getSecurityGroup().getName()); assertEquals(newGroup.getOwnerId(), origGroup.getSecurityGroup().getTenantId()); final IpPermission permission = Iterables.getOnlyElement(newGroup.getIpPermissions()); assertEquals(permission.getFromPort(), 10); assertEquals(permission.getToPort(), 20); assertEquals(Iterables.getOnlyElement(permission.getCidrBlocks()), IP_RANGE); assertTrue(permission.getGroupIds().isEmpty()); assertEquals(newGroup.getLocation().getId(), origGroup.getRegion()); }
@Test public void testApplyWithGroup() { NovaSecurityGroupInRegionToSecurityGroup parser = createGroupParser(); final org.jclouds.openstack.nova.v2_0.domain.SecurityGroup otherGroup = securityGroupWithCidr(); SecurityGroupInRegion origGroup = new SecurityGroupInRegion(securityGroupWithGroup(), region.getId(), allGroups); SecurityGroup newGroup = parser.apply(origGroup); assertEquals(newGroup.getId(), origGroup.getRegion() + "/" + origGroup.getSecurityGroup().getId()); assertEquals(newGroup.getProviderId(), origGroup.getSecurityGroup().getId()); assertEquals(newGroup.getName(), origGroup.getSecurityGroup().getName()); assertEquals(newGroup.getOwnerId(), origGroup.getSecurityGroup().getTenantId()); final IpPermission permission = Iterables.getOnlyElement(newGroup.getIpPermissions()); assertEquals(Iterables.getOnlyElement(permission.getGroupIds()), region.getId() + "/" + otherGroup.getId()); assertEquals(permission.getFromPort(), 10); assertEquals(permission.getToPort(), 20); assertTrue(permission.getCidrBlocks().isEmpty()); assertEquals(newGroup.getLocation().getId(), origGroup.getRegion()); }