class LaunchableMesosWorker implements LaunchableTask {

	static Set<String> extractPortKeys(Configuration config) {
		final LinkedHashSet<String> tmPortKeys = new LinkedHashSet<>(TM_PORT_KEYS);

		final String portKeys = config.getString(PORT_ASSIGNMENTS);

		if (portKeys != null) {
			Arrays.stream(portKeys.split(","))
				.map(String::trim)
				.peek(key -> LOG.debug("Adding port key {} to mesos request"))
				.forEach(tmPortKeys::add);
		}

		return Collections.unmodifiableSet(tmPortKeys);
	}

	public  LaunchableMesosWorker(
			MesosArtifactResolver resolver,
			MesosTaskManagerParameters params,
			ContainerSpecification containerSpec,
			Protos.TaskID taskID,
			MesosConfiguration mesosConfiguration);

}