public void merge(DockerCompositions otherContainers) { // merge networks for (Map.Entry<String, Network> thisNetwork : networks.entrySet()) { if (otherContainers.getNetwork(thisNetwork.getKey()) != null) { thisNetwork.getValue().merge(otherContainers.getNetwork(thisNetwork.getKey())); } } Map<String, Network> addAllNetworks = new HashMap<>(); for (Map.Entry<String, Network> otherNetwork : otherContainers.getNetworks().entrySet()) { if (getNetwork(otherNetwork.getKey()) == null) { addAllNetworks.put(otherNetwork.getKey(), otherNetwork.getValue()); } } networks.putAll(addAllNetworks); // merge containers for (Map.Entry<String, CubeContainer> thisContainer : containers.entrySet()) { if (otherContainers.get(thisContainer.getKey()) != null) { thisContainer.getValue().merge(otherContainers.get(thisContainer.getKey())); } } Map<String, CubeContainer> addAll = new HashMap<String, CubeContainer>(); for (Map.Entry<String, CubeContainer> otherContainer : otherContainers.getContainers().entrySet()) { if (get(otherContainer.getKey()) == null) { addAll.put(otherContainer.getKey(), otherContainer.getValue()); } } containers.putAll(addAll); }
@Test public void should_be_able_to_read_network_configuration() { String config = "networks:\n" + " mynetwork:\n " + " driver: bridge\n" + "tomcat6:\n" + " image: tutum/tomcat:6.0\n" + " exposedPorts: [8089/tcp]\n" + " await:\n" + " strategy: static\n" + " ip: localhost\n" + " ports: [8080, 8089]\n" + "tomcat7:\n" + " extends: tomcat6\n" + " image: tutum/tomcat:7.0\n"; Map<String, String> parameters = new HashMap<String, String>(); parameters.put("dockerContainers", config); parameters.put("definitionFormat", DefinitionFormat.CUBE.name()); CubeDockerConfiguration cubeConfiguration = CubeDockerConfiguration.fromMap(parameters, null); final Network mynetwork = cubeConfiguration.getDockerContainersContent().getNetwork("mynetwork"); assertThat(mynetwork, is(notNullValue())); assertThat(mynetwork.getDriver(), is("bridge")); }
public void merge(DockerCompositions otherContainers) { // merge networks for (Map.Entry<String, Network> thisNetwork : networks.entrySet()) { if (otherContainers.getNetwork(thisNetwork.getKey()) != null) { thisNetwork.getValue().merge(otherContainers.getNetwork(thisNetwork.getKey())); } } Map<String, Network> addAllNetworks = new HashMap<>(); for (Map.Entry<String, Network> otherNetwork : otherContainers.getNetworks().entrySet()) { if (getNetwork(otherNetwork.getKey()) == null) { addAllNetworks.put(otherNetwork.getKey(), otherNetwork.getValue()); } } networks.putAll(addAllNetworks); // merge containers for (Map.Entry<String, CubeContainer> thisContainer : containers.entrySet()) { if (otherContainers.get(thisContainer.getKey()) != null) { thisContainer.getValue().merge(otherContainers.get(thisContainer.getKey())); } } Map<String, CubeContainer> addAll = new HashMap<String, CubeContainer>(); for (Map.Entry<String, CubeContainer> otherContainer : otherContainers.getContainers().entrySet()) { if (get(otherContainer.getKey()) == null) { addAll.put(otherContainer.getKey(), otherContainer.getValue()); } } containers.putAll(addAll); }