private AssociationMetadata associationMetadataFromPortMapping(PortMapping portMapping) { String publicIpId = portMapping.getPublicEndpoint().getHostText(); HostAndPort publicEndpoint = portMapping.getPublicEndpoint(); Location location = portMapping.getTarget(); int privatePort = portMapping.getPrivatePort(); return new AssociationMetadata(publicIpId, publicEndpoint, location, privatePort); }
@Override public PortMapping getPortMappingWithPrivateSide(Location l, int privatePort) { synchronized (mutex) { for (PortMapping m : mappings.values()) if (l.equals(m.getTarget()) && privatePort == m.privatePort) return m; } return null; }
/** returns the subset of port mappings associated with a given location */ @Override public Collection<PortMapping> getLocationPublicIpIds(Location l) { List<PortMapping> result = new ArrayList<PortMapping>(); synchronized (mutex) { for (PortMapping m : mappings.values()) if (l.equals(m.getTarget())) result.add(m); } return result; }