@Override public boolean apply(Image input) { boolean returnVal = true; if (imageVersion != null) { if (input.getVersion() == null) returnVal = false; else returnVal = input.getVersion().contains(imageVersion) || input.getVersion().matches(imageVersion); } return returnVal; }
@Override public boolean apply(Image input) { boolean returnVal = true; if (imageVersion != null) { if (input.getVersion() == null) returnVal = false; else returnVal = input.getVersion().contains(imageVersion) || input.getVersion().matches(imageVersion); } return returnVal; }
@Override public boolean apply(Image input) { boolean returnVal = true; if (imageVersion != null) { if (input.getVersion() == null) returnVal = false; else returnVal = input.getVersion().contains(imageVersion) || input.getVersion().matches(imageVersion); } return returnVal; }
@Override public boolean apply(Image input) { boolean returnVal = true; if (imageVersion != null) { if (input.getVersion() == null) returnVal = false; else returnVal = input.getVersion().contains(imageVersion) || input.getVersion().matches(imageVersion); } return returnVal; }
Image img; // ... ImageMsg.Builder msg = ImageMsg.newBuilder(); msg.setVersion(img.getVersion()); msg.setImageData(img.getImageData()); // The output stream could point to a file, socket, pipe or something else. msg.writeTo(someOutputStream);
public int compare(Image left, Image right) { return ComparisonChain.start() .compare(left.getName(), right.getName(), Ordering.<String> natural().nullsLast()) .compare(left.getVersion(), right.getVersion(), Ordering.<String> natural().nullsLast()) .compare(left.getDescription(), right.getDescription(), Ordering.<String> natural().nullsLast()) .compare(left.getOperatingSystem().getName(), right.getOperatingSystem().getName(),// Ordering.<String> natural().nullsLast()) .compare(left.getOperatingSystem().getVersion(), right.getOperatingSystem().getVersion(),// Ordering.<String> natural().nullsLast()) .compare(left.getOperatingSystem().getDescription(), right.getOperatingSystem().getDescription(),// Ordering.<String> natural().nullsLast()) .compare(left.getOperatingSystem().getArch(), right.getOperatingSystem().getArch(),// Ordering.<String> natural().nullsLast()).result(); } };
public int compare(Image left, Image right) { /* This currently, and for some time, has *preferred* images whose fields are null, * and prefers those which come last alphabetically. * It seems preferable to take images whose fields are *not* null, ie nullsFirst; * and to use something like the AlphaNum Algorithm then take the last * (so "Ubuntu 13.04" would be preferred over "Ubuntu 9.10"). * However not changing it now as people may be surprised if the images they get back start changing. */ return ComparisonChain.start() .compare(left.getName(), right.getName(), Ordering.<String> natural().nullsLast()) .compare(left.getVersion(), right.getVersion(), Ordering.<String> natural().nullsLast()) .compare(left.getDescription(), right.getDescription(), Ordering.<String> natural().nullsLast()) .compare(left.getOperatingSystem().getName(), right.getOperatingSystem().getName(), Ordering.<String> natural().nullsLast()) .compare(left.getOperatingSystem().getVersion(), right.getOperatingSystem().getVersion(), Ordering.<String> natural().nullsLast()) .compare(left.getOperatingSystem().getDescription(), right.getOperatingSystem().getDescription(), Ordering.<String> natural().nullsLast()) .compare(left.getOperatingSystem().getArch(), right.getOperatingSystem().getArch(), Ordering.<String> natural().nullsLast()).result(); } };
private void assertImageEquals(org.jclouds.compute.domain.Image actual, org.jclouds.compute.domain.Image expected) { // Note that ImageImpl.equals does not compare operating system etc; there's an explicit comment: // equals from super is sufficient to establish identity equivalence assertEquals(actual, expected); assertEquals(actual.getOperatingSystem(), expected.getOperatingSystem()); assertEquals(actual.getStatus(), expected.getStatus()); assertEquals(actual.getBackendStatus(), expected.getBackendStatus()); assertEquals(actual.getVersion(), expected.getVersion()); assertEquals(actual.getDescription(), expected.getDescription()); assertEquals(actual.getDefaultCredentials(), expected.getDefaultCredentials()); }
private void assertImageEquals(org.jclouds.compute.domain.Image actual, org.jclouds.compute.domain.Image expected) { // Note that ImageImpl.equals does not compare operating system etc; there's an explicit comment: // equals from super is sufficient to establish identity equivalence assertEquals(actual, expected); assertEquals(actual.getOperatingSystem(), expected.getOperatingSystem()); assertEquals(actual.getStatus(), expected.getStatus()); assertEquals(actual.getBackendStatus(), expected.getBackendStatus()); assertEquals(actual.getVersion(), expected.getVersion()); assertEquals(actual.getDescription(), expected.getDescription()); assertEquals(actual.getDefaultCredentials(), expected.getDefaultCredentials()); }
private void listImages(ComputeService computeService) { log("list images"); for (Image image : computeService.listImages()) {// TODO log(String.format(" image location=%s, id=%s, name=%s, version=%s, osArch=%s, osfam=%s, osdesc=%s, desc=%s", image.getLocation(), image.getProviderId(), image.getName(), image.getVersion(), image .getOperatingSystem().getArch(), image.getOperatingSystem().getFamily(), image .getOperatingSystem().getDescription(), image.getDescription())); } }
@Test public void testTemplateBuilderCanUseImageIdAndHardwareIdAndAZ() { Template template = view.getComputeService().templateBuilder().imageId("us-east-1/ami-ccb35ea5") .hardwareId(InstanceType.M2_2XLARGE).locationId("us-east-1b").build(); assert template.getImage().getProviderId().startsWith("ami-") : template; assertEquals(template.getImage().getOperatingSystem().getVersion(), "5.4"); assertEquals(template.getImage().getOperatingSystem().is64Bit(), true); assertEquals(template.getImage().getOperatingSystem().getFamily(), OsFamily.CENTOS); assertEquals(template.getImage().getVersion(), "4.4.10"); assertEquals(template.getImage().getUserMetadata().get("rootDeviceType"), "instance-store"); assertEquals(template.getLocation().getId(), "us-east-1b"); assertEquals(template.getImage().getLocation().getId(), "us-east-1"); assertEquals(getCores(template.getHardware()), 4.0d); assertEquals(template.getHardware().getId(), InstanceType.M2_2XLARGE); assertEquals(template.getImage().getOperatingSystem().getArch(), "paravirtual"); }
@Override public Image apply(@Nullable org.jclouds.compute.domain.Image input) { if (input == null) { return null; } return Image.builder().id(input.getId()).name(input.getName()).status(input.getStatus().name()) .tags(input.getTags()).version(input.getVersion()).description(input.getDescription()) .operatingSystem(ToOperatingSystem.INSTANCE.apply(input.getOperatingSystem())) .defaultCredentials(ToLoginCredentials.INSTANCE.apply(input.getDefaultCredentials())).build(); } }
@Test public void testNewWindowsName() throws Exception { ReviseParsedImage rpi = new AWSEC2ReviseParsedImage(osVersionMap); Image from = newImage("amazon", "Windows_Server-2008-R2_SP1-English-64Bit-Base-2012.03.13"); OperatingSystem.Builder osBuilder = OperatingSystem.builder().description("test"); ImageBuilder builder = new ImageBuilder().id("1").operatingSystem(osBuilder.build()).status( org.jclouds.compute.domain.Image.Status.AVAILABLE).description("test"); OsFamily family = OsFamily.WINDOWS; rpi.reviseParsedImage(from, builder, family, osBuilder); OperatingSystem os = osBuilder.build(); assertEquals(os.getFamily(), OsFamily.WINDOWS); assertEquals(os.getVersion(), "2008"); assertEquals(builder.build().getVersion(), "2012.03.13"); }
@Test public void testOldWindowsName() throws Exception { ReviseParsedImage rpi = new AWSEC2ReviseParsedImage(osVersionMap); Image from = newImage("amazon", "Windows-2008R2-SP1-English-Base-2012.01.12"); OperatingSystem.Builder osBuilder = OperatingSystem.builder().description("test"); ImageBuilder builder = new ImageBuilder().id("1").operatingSystem(osBuilder.build()).status( org.jclouds.compute.domain.Image.Status.AVAILABLE).description("test"); OsFamily family = OsFamily.WINDOWS; rpi.reviseParsedImage(from, builder, family, osBuilder); OperatingSystem os = osBuilder.build(); assertEquals(os.getFamily(), OsFamily.WINDOWS); assertEquals(os.getVersion(), "2008"); assertEquals(builder.build().getVersion(), "2012.01.12"); }
private ImageReference createImageReference(Image image) { return isCustom(image.getId()) ? ImageReference.builder().customImageId(image.getProviderId()).build() : ImageReference .builder().publisher(image.getProviderId()).offer(image.getName()).sku(image.getVersion()) .version("latest").build(); }
private ImageReference createImageReference(Image image) { return isCustom(image.getId()) ? ImageReference.builder().customImageId(image.getProviderId()).build() : ImageReference .builder().publisher(image.getProviderId()).offer(image.getName()).sku(image.getVersion()) .version("latest").build(); }
public static ImageBuilder fromImage(Image image) { return new ImageBuilder().providerId(image.getProviderId()).name(image.getName()).id(image.getId()).location( image.getLocation()).uri(image.getUri()).userMetadata(image.getUserMetadata()).tags(image.getTags()) .version(image.getVersion()).description(image.getDescription()).operatingSystem( image.getOperatingSystem()).status(image.getStatus()).backendStatus(image.getBackendStatus()) .defaultCredentials(image.getDefaultCredentials()); }
public static ImageBuilder fromImage(Image image) { return new ImageBuilder().providerId(image.getProviderId()).name(image.getName()).id(image.getId()).location( image.getLocation()).uri(image.getUri()).userMetadata(image.getUserMetadata()).tags(image.getTags()) .version(image.getVersion()).description(image.getDescription()).operatingSystem( image.getOperatingSystem()).status(image.getStatus()).backendStatus(image.getBackendStatus()) .defaultCredentials(image.getDefaultCredentials()); }
public static ImageBuilder fromImage(Image image) { return new ImageBuilder().providerId(image.getProviderId()).name(image.getName()).id(image.getId()).location( image.getLocation()).uri(image.getUri()).userMetadata(image.getUserMetadata()).tags(image.getTags()) .version(image.getVersion()).description(image.getDescription()).operatingSystem( image.getOperatingSystem()).status(image.getStatus()).backendStatus(image.getBackendStatus()) .defaultCredentials(image.getDefaultCredentials()); }
public static ImageBuilder fromImage(Image image) { return new ImageBuilder().providerId(image.getProviderId()).name(image.getName()).id(image.getId()).location( image.getLocation()).uri(image.getUri()).userMetadata(image.getUserMetadata()).tags(image.getTags()) .version(image.getVersion()).description(image.getDescription()).operatingSystem( image.getOperatingSystem()).status(image.getStatus()).backendStatus(image.getBackendStatus()) .defaultCredentials(image.getDefaultCredentials()); }