public Deprecated build() { return new Deprecated(state, replacement, deprecated, obsolete, deleted); }
public Builder toBuilder() { return builder().fromDeprecated(this); }
public Builder fromDeprecated(Deprecated in) { return new Builder().state(in.getState().orNull()) .replacement(in.getReplacement().orNull()) .deprecated(in.getDeprecated().orNull()) .obsolete(in.getObsolete().orNull()) .deleted(in.getDeleted().orNull()); } }
@Override public boolean apply(Image input) { // filter out all deprecated images return !(input.deprecated() != null && input.deprecated().state() != null); } })
@Test(groups = "live", dependsOnMethods = "testGetCreatedImage") public void testDeprecateImage(){ Image image = api().get(IMAGE_NAME); assertNull(image.deprecated()); String deprecated = "2015-07-16T22:16:13.468Z"; String obsolete = "2016-10-16T22:16:13.468Z"; String deleted = "2017-01-16T22:16:13.468Z"; URI replacement = URI.create("https://www.googleapis.com/compute/v1/projects/centos-cloud/global/images/centos-6-2-v20120326test"); DeprecateOptions deprecateOptions = new DeprecateOptions.Builder().state(State.DEPRECATED) .replacement(replacement) .deprecated(new SimpleDateFormatDateService().iso8601DateParse(deprecated)) .obsolete(new SimpleDateFormatDateService().iso8601DateParse(obsolete)) .deleted(new SimpleDateFormatDateService().iso8601DateParse(deleted)) .build(); assertOperationDoneSuccessfully(api().deprecate(IMAGE_NAME, deprecateOptions)); image = api().get(IMAGE_NAME); assertEquals(image.deprecated().state(), State.DEPRECATED); assertEquals(image.deprecated().replacement(), replacement); assertEquals(image.deprecated().deprecated(), deprecated); assertEquals(image.deprecated().obsolete(), obsolete); assertEquals(image.deprecated().deleted(), deleted); }
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); }
/** * {@inheritDoc} */ @Override public String toString() { return string().toString(); }
@Override public org.jclouds.compute.domain.Image apply(Image image) { ImageBuilder builder = new ImageBuilder() .id(image.getName()) .name(image.getName()) .providerId(image.getId()) .description(image.getDescription().orNull()) .status(Status.AVAILABLE) .uri(image.getSelfLink()); List<String> splits = Lists.newArrayList(image.getName().split("-")); OperatingSystem.Builder osBuilder = defaultOperatingSystem(image); if (splits == null || splits.size() == 0 || splits.size() < 3) { return builder.operatingSystem(osBuilder.build()).build(); } OsFamily family = OsFamily.fromValue(splits.get(0)); if (family != OsFamily.UNRECOGNIZED) { osBuilder.family(family); } String version = on(".").join(limit(skip(splits, 1), splits.size() - 2)); osBuilder.version(version); if (image.getDeprecated().isPresent()) { builder.userMetadata(ImmutableMap.of("deprecatedState", image.getDeprecated().get().getState().orNull())); } builder.version(getLast(splits)); return builder.operatingSystem(osBuilder.build()).build(); }
@Override public boolean apply(Image input) { // filter out all deprecated images return !(input.deprecated() != null && input.deprecated().state() != null); } })
/** * {@inheritDoc} */ @Override public String toString() { return string().toString(); }
@Override public org.jclouds.compute.domain.Image apply(Image image) { ImageBuilder builder = new ImageBuilder() .id(image.getName()) .name(image.getName()) .providerId(image.getId()) .description(image.getDescription().orNull()) .status(Status.AVAILABLE) .uri(image.getSelfLink()); List<String> splits = Lists.newArrayList(image.getName().split("-")); OperatingSystem.Builder osBuilder = defaultOperatingSystem(image); if (splits == null || splits.size() == 0 || splits.size() < 3) { return builder.operatingSystem(osBuilder.build()).build(); } OsFamily family = OsFamily.fromValue(splits.get(0)); if (family != OsFamily.UNRECOGNIZED) { osBuilder.family(family); } String version = on(".").join(limit(skip(splits, 1), splits.size() - 2)); osBuilder.version(version); if (image.getDeprecated().isPresent()) { builder.userMetadata(ImmutableMap.of("deprecatedState", image.getDeprecated().get().getState().orNull())); } builder.version(getLast(splits)); return builder.operatingSystem(osBuilder.build()).build(); }
public Builder fromDeprecated(Deprecated in) { return new Builder().state(in.getState().orNull()) .replacement(in.getReplacement().orNull()) .deprecated(in.getDeprecated().orNull()) .obsolete(in.getObsolete().orNull()) .deleted(in.getDeleted().orNull()); } }
@Override public boolean apply(Image input) { // filter out all deprecated images return !(input.deprecated() != null && input.deprecated().state() != null); } })
public Deprecated build() { return new Deprecated(state, replacement, deprecated, obsolete, deleted); }
public Builder toBuilder() { return builder().fromDeprecated(this); }
@Override public boolean apply(Image input) { // filter out all deprecated images return !(input.deprecated() != null && input.deprecated().state() != null); } })
@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(); } }