package org.arquillian.cube.docker.impl.client; import java.util.Map; import org.arquillian.cube.docker.impl.client.config.CubeContainer; import org.arquillian.cube.docker.impl.client.config.DockerCompositions; import org.arquillian.cube.docker.impl.docker.DockerClientExecutor; import org.arquillian.cube.docker.impl.model.DockerCube; import org.arquillian.cube.spi.CubeRegistry; import org.jboss.arquillian.core.api.Injector; import org.jboss.arquillian.core.api.annotation.Observes; public class CubeDockerRegistrar { public void register(@Observes DockerClientExecutor executor, CubeDockerConfiguration configuration, Injector injector, CubeRegistry registry) { //TODO, add key here generation here DockerCompositions containerConfigurations = configuration.getDockerContainersContent(); for (Map.Entry<String, CubeContainer> containerConfiguration : containerConfigurations.getContainers() .entrySet()) { registry.addCube( injector.inject( new DockerCube( containerConfiguration.getKey(), containerConfiguration.getValue(), executor))); } } }