diff --git a/acme4j-it/src/main/java/module-info.java b/acme4j-it/src/main/java/module-info.java index 77f3c153..eda2402e 100644 --- a/acme4j-it/src/main/java/module-info.java +++ b/acme4j-it/src/main/java/module-info.java @@ -19,4 +19,6 @@ module org.shredzone.acme4j.it { requires com.github.spotbugs.annotations; requires org.apache.httpcomponents.httpclient; requires org.apache.httpcomponents.httpcore; + + exports org.shredzone.acme4j.it; } diff --git a/src/doc/docs/development/provider.md b/src/doc/docs/development/provider.md index cb87e4ef..9489eef7 100644 --- a/src/doc/docs/development/provider.md +++ b/src/doc/docs/development/provider.md @@ -18,7 +18,7 @@ Every CA that provides an ACME server should also have an own `AcmeProvider`, an However, it is also possible to adapt the behavior of wide parts of _acme4j_ to special characteristics of the CA, just by overriding methods and extending classes. -A client provider implements the [`AcmeProvider`](../apidocs/org/shredzone/acme4j/provider/AcmeProvider.html) interface, but usually it is easier to extend [`AbstractAcmeProvider`](../apidocs/org/shredzone/acme4j/provider/AbstractAcmeProvider.html) and implement only these two methods: +A client provider implements the [`AcmeProvider`](../acme4j-client/apidocs/org.shredzone.acme4j/org/shredzone/acme4j/provider/AcmeProvider.html) interface, but usually it is easier to extend [`AbstractAcmeProvider`](../acme4j-client/apidocs/org.shredzone.acme4j/org/shredzone/acme4j/provider/AbstractAcmeProvider.html) and implement only these two methods: * `accepts(URI)` checks if the client provider is accepting the provided URI. Usually it would be an URI like `acme://example.com`. Note that the `http` and `https` schemes are reserved for the generic provider and cannot be used by other providers. * `resolve(URI)` parses the URI and returns the corresponding URL of the directory service. diff --git a/src/doc/docs/index.md b/src/doc/docs/index.md index 2b72f46c..06868f95 100644 --- a/src/doc/docs/index.md +++ b/src/doc/docs/index.md @@ -60,7 +60,7 @@ acme4j-example : This module only contains [an example code](example.md) that demonstrates how to get a certificate with _acme4j_. It depends on `acme4j-client` and `acme4j-utils`. It is not useful as a dependency in other projects. acme4j-it -: [`acme4j-it`](https://mvnrepository.com/artifact/org.shredzone.acme4j/acme4j-it/latest) mainly serves as integration test suite for _acme4j_ itself. It is not really useful as a dependency in other projects. However if you write own integration tests using [pebble](https://github.com/letsencrypt/pebble) and [pebble-challtestsrv](https://hub.docker.com/r/letsencrypt/pebble-challtestsrv), you may find the [`challtestsrv` configuration client](https://shredzone.org/maven/acme4j/acme4j-it/apidocs/org/shredzone/acme4j/it/BammBammClient.html) useful in your project. +: [`acme4j-it`](https://mvnrepository.com/artifact/org.shredzone.acme4j/acme4j-it/latest) mainly serves as integration test suite for _acme4j_ itself. It is not really useful as a dependency in other projects. However if you write own integration tests using [pebble](https://github.com/letsencrypt/pebble) and [pebble-challtestsrv](https://hub.docker.com/r/letsencrypt/pebble-challtestsrv), you may find the [`challtestsrv` configuration client](acme4j-it/apidocs/org.shredzone.acme4j.it/org/shredzone/acme4j/it/BammBammClient.html) useful in your project. The Java module name is `org.shredzone.acme4j.it`. diff --git a/src/doc/docs/usage/order.md b/src/doc/docs/usage/order.md index f346c6f6..7a4d6906 100644 --- a/src/doc/docs/usage/order.md +++ b/src/doc/docs/usage/order.md @@ -77,7 +77,7 @@ The response you have set up before is not needed any more. You can (and should) After successfully completing all authorizations, the order needs to be finalized by providing PKCS#10 CSR file. A single domain may be set as _Common Name_. Multiple domains must be provided as _Subject Alternative Name_. You must provide exactly the domains that you had passed to the `order()` method above, otherwise the finalization will fail. It depends on the CA if other CSR properties (_Organization_, _Organization Unit_ etc.) are accepted. Some may require these properties to be set, while others may ignore them when generating the certificate. -CSR files can be generated with command line tools like `openssl`. Unfortunately the standard Java does not offer classes for that, so you'd have to resort to [Bouncy Castle](http://www.bouncycastle.org/java.html) if you want to create a CSR programmatically. In the `acme4j-utils` module, there is a [`CSRBuilder`](../apidocs/org/shredzone/acme4j/util/CSRBuilder.html) for your convenience. You can also use [`KeyPairUtils`](../apidocs/org/shredzone/acme4j/util/KeyPairUtils.html) for generating a new key pair for your domain. +CSR files can be generated with command line tools like `openssl`. Unfortunately the standard Java does not offer classes for that, so you'd have to resort to [Bouncy Castle](http://www.bouncycastle.org/java.html) if you want to create a CSR programmatically. In the `acme4j-utils` module, there is a [`CSRBuilder`](../acme4j-utils/apidocs/org.shredzone.acme4j.utils/org/shredzone/acme4j/util/CSRBuilder.html) for your convenience. You can also use [`KeyPairUtils`](../acme4j-utils/apidocs/org.shredzone.acme4j.utils/org/shredzone/acme4j/util/KeyPairUtils.html) for generating a new key pair for your domain. !!! tip Never use your account key pair as domain key pair, but always generate separate key pairs! diff --git a/src/doc/docs/usage/session.md b/src/doc/docs/usage/session.md index 485b549b..69be9fe5 100644 --- a/src/doc/docs/usage/session.md +++ b/src/doc/docs/usage/session.md @@ -1,6 +1,6 @@ # Creating a Session -Central part of the communication is a [`Session`](../apidocs/org/shredzone/acme4j/Session.html) object. A session is used to track the communication with the ACME server. +Central part of the communication is a [`Session`](../acme4j-client/apidocs/org.shredzone.acme4j/org/shredzone/acme4j/Session.html) object. A session is used to track the communication with the ACME server. The first step is to create a `Session` instance. The `Session` constructor expects the URI of the ACME server's directory service, as it is documented by the CA. For example, this is how to connect to the _Let's Encrypt_ staging server: diff --git a/src/doc/theme/main.html b/src/doc/theme/main.html index 84629cea..f24ff891 100644 --- a/src/doc/theme/main.html +++ b/src/doc/theme/main.html @@ -12,5 +12,5 @@ {% endblock %} {% block repo %} -API javadocs +API javadocs {% endblock %}