> +   @Override
> +   public ListenableFuture<Image> createImage(ImageTemplate template) {
> +      checkArgument(template instanceof CloneImageTemplate,
> +              " docker only currently supports creating images through 
> cloning.");
> +      CloneImageTemplate cloneTemplate = (CloneImageTemplate) template;
> +
> +      Container container = 
> api.getRemoteApi().inspectContainer(cloneTemplate.getSourceNodeId());
> +      CommitOptions options = 
> CommitOptions.Builder.containerId(container.getId()).tag(cloneTemplate.getName());
> +      org.jclouds.docker.domain.Image dockerImage = 
> api.getRemoteApi().commit(options);
> +
> +      dockerImage = 
> org.jclouds.docker.domain.Image.builder().fromImage(dockerImage)
> +              .repoTags(ImmutableList.of(cloneTemplate.getName() + 
> ":latest"))
> +              .build();
> +
> +      logger.info(">> Registered new image %s, waiting for it to become 
> available.", dockerImage.getId());
> +      final AtomicReference<Image> image = Atomics.newReference(new 
> ImageToImage().apply(dockerImage));

Inject the `ImageToImage` function in the constructor.

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/57/files#r12936696

Reply via email to