@Override public String apply(final PortMapping input) { final StringBuilder builder = new StringBuilder(); if (input.getIp() != null) { builder.append(input.getIp()); } builder.append(":").append(input.getInternalPort()); if (input.getExternalPort() != null) { builder.append(":").append(input.getExternalPort()); } if (input.getProtocol() != null) { builder.append("/").append(input.getProtocol()); } return builder.toString(); } };
/** * Create container port exposure configuration for a job. * * @return The exposed ports. */ private Set<String> containerExposedPorts() { final Set<String> ports = Sets.newHashSet(); for (final Map.Entry<String, PortMapping> entry : job.getPorts().entrySet()) { final PortMapping mapping = entry.getValue(); ports.add(containerPort(mapping.getInternalPort(), mapping.getProtocol())); } return ports; }
/** * Create a port binding configuration for the job. * * @return The port bindings. */ private Map<String, List<PortBinding>> portBindings() { final Map<String, List<PortBinding>> bindings = Maps.newHashMap(); for (final Map.Entry<String, PortMapping> e : job.getPorts().entrySet()) { final PortMapping mapping = e.getValue(); final Integer jobDefinedExtPort = mapping.getExternalPort(); // If the job didn't specify an external port, use dynamically allocated ports final String externalPort = jobDefinedExtPort == null ? ports.get(e.getKey()).toString() : jobDefinedExtPort.toString(); final PortBinding binding = PortBinding.of(mapping.getIp(), externalPort); final String entry = containerPort(mapping.getInternalPort(), mapping.getProtocol()); bindings.put(entry, Collections.singletonList(binding)); } return bindings; }
final String name = entry.getKey(); final PortMapping mapping = entry.getValue(); if (!PORT_MAPPING_PROTO_PATTERN.matcher(mapping.getProtocol()).matches()) { errors.add(format("Invalid port mapping protocol: %s", mapping.getProtocol()));
@Override public String apply(final PortMapping input) { String s = String.valueOf(input.getInternalPort()); if (input.getExternalPort() != null) { s += ":" + input.getExternalPort(); } if (input.getProtocol() != null) { s += "/" + input.getProtocol(); } return s; } };
/** * Create container port exposure configuration for a job. * @return The exposed ports. */ private Set<String> containerExposedPorts() { final Set<String> ports = Sets.newHashSet(); for (final Map.Entry<String, PortMapping> entry : job.getPorts().entrySet()) { final PortMapping mapping = entry.getValue(); ports.add(containerPort(mapping.getInternalPort(), mapping.getProtocol())); } return ports; }
/** * Create a port binding configuration for the job. * @return The port bindings. */ private Map<String, List<PortBinding>> portBindings() { final Map<String, List<PortBinding>> bindings = Maps.newHashMap(); for (final Map.Entry<String, PortMapping> e : job.getPorts().entrySet()) { final PortMapping mapping = e.getValue(); final PortBinding binding = new PortBinding(); final Integer externalPort = mapping.getExternalPort(); if (externalPort == null) { binding.hostPort(ports.get(e.getKey()).toString()); } else { binding.hostPort(externalPort.toString()); } final String entry = containerPort(mapping.getInternalPort(), mapping.getProtocol()); bindings.put(entry, Collections.singletonList(binding)); } return bindings; }