@Override public org.jclouds.compute.domain.Image apply(Image image) { ImageBuilder builder = new ImageBuilder() .id(image.selfLink().toString()) .providerId(image.id()) .name(image.name()) .providerId(image.id()) .description(image.description()) .status(Status.AVAILABLE) .uri(image.selfLink()); if (image.deprecated() != null) { builder.userMetadata(ImmutableMap.of("deprecatedState", image.deprecated().state().name())); if (image.deprecated().state() == State.DELETED){ builder.status(Status.DELETED); } } builder.version(image.name().substring(image.name().lastIndexOf('-') + 1)); builder.operatingSystem(nameToOperatingSystem.apply(image.name())); return builder.build(); } }
@Override public org.jclouds.compute.domain.Image apply(Image image) { ImageBuilder builder = new ImageBuilder() .id(image.selfLink().toString()) .providerId(image.id()) .name(image.name()) .providerId(image.id()) .description(image.description()) .status(Status.AVAILABLE) .uri(image.selfLink()); if (image.deprecated() != null) { builder.userMetadata(ImmutableMap.of("deprecatedState", image.deprecated().state().name())); if (image.deprecated().state() == State.DELETED){ builder.status(Status.DELETED); } } builder.version(image.name().substring(image.name().lastIndexOf('-') + 1)); builder.operatingSystem(nameToOperatingSystem.apply(image.name())); return builder.build(); } }
@Override public org.jclouds.compute.domain.Image apply(Image image) { ImageBuilder builder = new ImageBuilder() .id(image.selfLink().toString()) .providerId(image.id()) .name(image.name()) .providerId(image.id()) .description(image.description()) .status(Status.AVAILABLE) .uri(image.selfLink()); if (image.deprecated() != null) { builder.userMetadata(ImmutableMap.of("deprecatedState", image.deprecated().state().name())); if (image.deprecated().state() == State.DELETED){ builder.status(Status.DELETED); } } builder.version(image.name().substring(image.name().lastIndexOf('-') + 1)); builder.operatingSystem(nameToOperatingSystem.apply(image.name())); return builder.build(); } }
@Override public org.jclouds.compute.domain.Image apply(Image image) { ImageBuilder builder = new ImageBuilder() .id(image.selfLink().toString()) .providerId(image.id()) .name(image.name()) .providerId(image.id()) .description(image.description()) .status(Status.AVAILABLE) .uri(image.selfLink()); if (image.deprecated() != null) { builder.userMetadata(ImmutableMap.of("deprecatedState", image.deprecated().state().name())); if (image.deprecated().state() == State.DELETED){ builder.status(Status.DELETED); } } builder.version(image.name().substring(image.name().lastIndexOf('-') + 1)); builder.operatingSystem(nameToOperatingSystem.apply(image.name())); return builder.build(); } }
public void testWellFormedImageName() { GoogleComputeEngineImageToImage imageToImage = new GoogleComputeEngineImageToImage(new ImageNameToOperatingSystem()); Image image = image("ubuntu-12-04-v123123", null); org.jclouds.compute.domain.Image transformed = imageToImage.apply(image); assertEquals(transformed.getName(), image.name()); assertEquals(transformed.getId(), image.selfLink().toString()); assertEquals(transformed.getProviderId(), image.id()); assertSame(transformed.getOperatingSystem().getFamily(), OsFamily.UBUNTU); assertEquals(transformed.getOperatingSystem().getVersion(), "12.04"); }
public void testArbitraryImageName() { GoogleComputeEngineImageToImage imageToImage = new GoogleComputeEngineImageToImage(new ImageNameToOperatingSystem()); Image image = image("arbitratyname", null); org.jclouds.compute.domain.Image transformed = imageToImage.apply(image); assertEquals(transformed.getName(), image.name()); assertEquals(transformed.getId(), image.selfLink().toString()); assertEquals(transformed.getProviderId(), image.id()); assertSame(transformed.getOperatingSystem().getFamily(), OsFamily.LINUX); }
public void testDeleted(){ GoogleComputeEngineImageToImage imageToImage = new GoogleComputeEngineImageToImage(new ImageNameToOperatingSystem()); Deprecated deprecated = Deprecated.create( State.DELETED, // state URI.create("http://baseurl/projects/centos-cloud/global/images/centos-6-2-v20120326test"), // replacement "2014-07-16T22:16:13.468Z", // deprecated "2015-07-16T22:16:13.468Z", // obsolete "2016-07-16T22:16:13.468Z"); // deleted Image image = image("test-deprecated", deprecated); org.jclouds.compute.domain.Image transformed = imageToImage.apply(image); assertEquals(transformed.getName(), image.name()); assertEquals(transformed.getId(), image.selfLink().toString()); assertEquals(transformed.getProviderId(), image.id()); assertSame(transformed.getOperatingSystem().getFamily(), OsFamily.LINUX); assertEquals(transformed.getUserMetadata().get("deprecatedState"), image.deprecated().state().name()); assertEquals(transformed.getStatus(), Status.DELETED); }