diff --git a/acme4j-client/src/main/java/org/shredzone/acme4j/Order.java b/acme4j-client/src/main/java/org/shredzone/acme4j/Order.java index d2b20399..5e04cc01 100644 --- a/acme4j-client/src/main/java/org/shredzone/acme4j/Order.java +++ b/acme4j-client/src/main/java/org/shredzone/acme4j/Order.java @@ -437,6 +437,16 @@ public class Order extends AcmeJsonResource implements PollableResource { } } + /** + * Returns the selected profile. + * + * @since 2.3 + * @throws AcmeNotSupportedException if profile is not supported + */ + public String getProfile() { + return getJSON().getFeature("profile").toString(); + } + @Override protected void invalidate() { super.invalidate(); diff --git a/acme4j-client/src/test/java/org/shredzone/acme4j/OrderBuilderTest.java b/acme4j-client/src/test/java/org/shredzone/acme4j/OrderBuilderTest.java index efcfc14d..dc803fe8 100644 --- a/acme4j-client/src/test/java/org/shredzone/acme4j/OrderBuilderTest.java +++ b/acme4j-client/src/test/java/org/shredzone/acme4j/OrderBuilderTest.java @@ -116,6 +116,8 @@ public class OrderBuilderTest { .isThrownBy(order::getAutoRenewalLifetimeAdjust); softly.assertThatExceptionOfType(AcmeNotSupportedException.class) .isThrownBy(order::isAutoRenewalGetEnabled); + softly.assertThatExceptionOfType(AcmeNotSupportedException.class) + .isThrownBy(order::getProfile); softly.assertThat(order.getLocation()).isEqualTo(locationUrl); softly.assertThat(order.getAuthorizations()).isNotNull(); softly.assertThat(order.getAuthorizations()).hasSize(2); @@ -369,11 +371,16 @@ public class OrderBuilderTest { provider.putTestResource(Resource.NEW_ORDER, resourceUrl); var account = new Account(login); - account.newOrder() + var order = account.newOrder() .domain("example.org") .profile("classic") .create(); + try (var softly = new AutoCloseableSoftAssertions()) { + softly.assertThat(order.getProfile()).isEqualTo("classic"); + } + + provider.close(); provider.close(); } diff --git a/acme4j-client/src/test/java/org/shredzone/acme4j/OrderTest.java b/acme4j-client/src/test/java/org/shredzone/acme4j/OrderTest.java index 5ed46550..eb600861 100644 --- a/acme4j-client/src/test/java/org/shredzone/acme4j/OrderTest.java +++ b/acme4j-client/src/test/java/org/shredzone/acme4j/OrderTest.java @@ -90,6 +90,8 @@ public class OrderTest { .isThrownBy(order::getAutoRenewalLifetimeAdjust); softly.assertThatExceptionOfType(AcmeNotSupportedException.class) .isThrownBy(order::isAutoRenewalGetEnabled); + softly.assertThatExceptionOfType(AcmeNotSupportedException.class) + .isThrownBy(order::getProfile); softly.assertThat(order.getError()).isNotEmpty(); softly.assertThat(order.getError().orElseThrow().getType())