diff --git a/acme4j-client/src/main/java/org/shredzone/acme4j/OrderBuilder.java b/acme4j-client/src/main/java/org/shredzone/acme4j/OrderBuilder.java index 2996f635..8d8f5e80 100644 --- a/acme4j-client/src/main/java/org/shredzone/acme4j/OrderBuilder.java +++ b/acme4j-client/src/main/java/org/shredzone/acme4j/OrderBuilder.java @@ -343,6 +343,10 @@ public class OrderBuilder { throw new AcmeNotSupportedException("auto-renewal"); } + if (autoRenewalGet && !session.getMetadata().isAutoRenewalGetAllowed()) { + throw new AcmeNotSupportedException("auto-renewal-get"); + } + if (replaces != null && session.resourceUrlOptional(Resource.RENEWAL_INFO).isEmpty()) { throw new AcmeNotSupportedException("renewal-information"); } 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 ee7b9c51..41fa8956 100644 --- a/acme4j-client/src/test/java/org/shredzone/acme4j/OrderBuilderTest.java +++ b/acme4j-client/src/test/java/org/shredzone/acme4j/OrderBuilderTest.java @@ -156,7 +156,9 @@ public class OrderBuilderTest { var login = provider.createLogin(); - provider.putMetadata("auto-renewal", JSON.empty()); + provider.putMetadata("auto-renewal",JSON.parse( + "{\"allow-certificate-get\": true}" + ).toMap()); provider.putTestResource(Resource.NEW_ORDER, resourceUrl); var account = new Account(login);