From 50b7dbe7b296818e2ee6e504aa7daa008dd1a7d6 Mon Sep 17 00:00:00 2001 From: Guus der Kinderen Date: Tue, 10 Jan 2017 16:53:49 +0100 Subject: [PATCH 1/3] API documentation: Update dependencies. --- services/pom.xml | 36 ++++++++++++++++++++---------------- 1 file changed, 20 insertions(+), 16 deletions(-) diff --git a/services/pom.xml b/services/pom.xml index 5be02015c2..cfcb26b8bd 100755 --- a/services/pom.xml +++ b/services/pom.xml @@ -31,7 +31,7 @@ - 1.0.5 + 1.1.2 1.8 1.8 @@ -205,6 +205,16 @@ http://jcenter.bintray.com + + + + false + + central + bintray + http://jcenter.bintray.com + + @@ -244,29 +254,23 @@ - com.redowlanalytics + io.github.swagger2markup swagger2markup-maven-plugin - 0.7.1 - - - - io.github.robwin - swagger2markup - 0.7.1 - - + 1.1.0 gen-asciidoc process-resources - process-swagger + convertSwagger2markup - ${project.basedir}/target/apidocs-rest/swagger/apidocs - ${project.basedir}/target/apidocs-rest/asciidoc - asciidoc + ${project.build.directory}/apidocs-rest/swagger/apidocs/service.json + ${project.build.directory}/apidocs-rest/asciidoc/ + + ASCIIDOC + @@ -275,7 +279,7 @@ org.asciidoctor asciidoctor-maven-plugin - 1.5.2 + 1.5.3 generate-docs From 45f5fa6a74389873dea2c56b31149bf83449c1bc Mon Sep 17 00:00:00 2001 From: Guus der Kinderen Date: Tue, 10 Jan 2017 16:56:03 +0100 Subject: [PATCH 2/3] API documentation: Introduce and group by tags. This commit introduces grouping of the documented REST resources. The grouping is based on a free-form name of a resource (a 'tag' in Swagger terminology), which is introduced by adding a @resource javadoc tag to every Resource class. --- services/pom.xml | 1 + .../services/resources/admin/AttackDetectionResource.java | 1 + .../resources/admin/AuthenticationManagementResource.java | 1 + .../resources/admin/ClientAttributeCertificateResource.java | 1 + .../services/resources/admin/ClientInitialAccessResource.java | 1 + .../resources/admin/ClientRegistrationPolicyResource.java | 1 + .../org/keycloak/services/resources/admin/ClientResource.java | 1 + .../services/resources/admin/ClientRoleMappingsResource.java | 1 + .../services/resources/admin/ClientTemplateResource.java | 1 + .../services/resources/admin/ClientTemplatesResource.java | 1 + .../org/keycloak/services/resources/admin/ClientsResource.java | 1 + .../org/keycloak/services/resources/admin/ComponentResource.java | 1 + .../org/keycloak/services/resources/admin/GroupResource.java | 1 + .../org/keycloak/services/resources/admin/GroupsResource.java | 1 + .../services/resources/admin/IdentityProviderResource.java | 1 + .../services/resources/admin/IdentityProvidersResource.java | 1 + .../java/org/keycloak/services/resources/admin/KeyResource.java | 1 + .../services/resources/admin/ProtocolMappersResource.java | 1 + .../keycloak/services/resources/admin/RealmAdminResource.java | 1 + .../keycloak/services/resources/admin/RealmsAdminResource.java | 1 + .../org/keycloak/services/resources/admin/RoleByIdResource.java | 1 + .../keycloak/services/resources/admin/RoleContainerResource.java | 1 + .../keycloak/services/resources/admin/RoleMapperResource.java | 1 + .../java/org/keycloak/services/resources/admin/RoleResource.java | 1 + .../services/resources/admin/ScopeMappedClientResource.java | 1 + .../keycloak/services/resources/admin/ScopeMappedResource.java | 1 + .../services/resources/admin/UserStorageProviderResource.java | 1 + .../org/keycloak/services/resources/admin/UsersResource.java | 1 + 28 files changed, 28 insertions(+) diff --git a/services/pom.xml b/services/pom.xml index cfcb26b8bd..c771187a93 100755 --- a/services/pom.xml +++ b/services/pom.xml @@ -270,6 +270,7 @@ ${project.build.directory}/apidocs-rest/asciidoc/ ASCIIDOC + TAGS diff --git a/services/src/main/java/org/keycloak/services/resources/admin/AttackDetectionResource.java b/services/src/main/java/org/keycloak/services/resources/admin/AttackDetectionResource.java index a76783394b..5ac7593e1c 100755 --- a/services/src/main/java/org/keycloak/services/resources/admin/AttackDetectionResource.java +++ b/services/src/main/java/org/keycloak/services/resources/admin/AttackDetectionResource.java @@ -42,6 +42,7 @@ import java.util.Map; /** * Base resource class for the admin REST api of one realm * + * @resource Attack Detection * @author Bill Burke * @version $Revision: 1 $ */ diff --git a/services/src/main/java/org/keycloak/services/resources/admin/AuthenticationManagementResource.java b/services/src/main/java/org/keycloak/services/resources/admin/AuthenticationManagementResource.java index 69179537f6..daffd90086 100755 --- a/services/src/main/java/org/keycloak/services/resources/admin/AuthenticationManagementResource.java +++ b/services/src/main/java/org/keycloak/services/resources/admin/AuthenticationManagementResource.java @@ -73,6 +73,7 @@ import java.util.Map; import static javax.ws.rs.core.Response.Status.NOT_FOUND; /** + * @resource Authentication Management * @author Bill Burke */ public class AuthenticationManagementResource { diff --git a/services/src/main/java/org/keycloak/services/resources/admin/ClientAttributeCertificateResource.java b/services/src/main/java/org/keycloak/services/resources/admin/ClientAttributeCertificateResource.java index f386b64a13..1f4277b424 100755 --- a/services/src/main/java/org/keycloak/services/resources/admin/ClientAttributeCertificateResource.java +++ b/services/src/main/java/org/keycloak/services/resources/admin/ClientAttributeCertificateResource.java @@ -62,6 +62,7 @@ import java.util.List; import java.util.Map; /** + * @resource Client Attribute Certificate * @author Bill Burke * @version $Revision: 1 $ */ diff --git a/services/src/main/java/org/keycloak/services/resources/admin/ClientInitialAccessResource.java b/services/src/main/java/org/keycloak/services/resources/admin/ClientInitialAccessResource.java index 1bc6411902..dfd28cc1c3 100644 --- a/services/src/main/java/org/keycloak/services/resources/admin/ClientInitialAccessResource.java +++ b/services/src/main/java/org/keycloak/services/resources/admin/ClientInitialAccessResource.java @@ -43,6 +43,7 @@ import java.util.LinkedList; import java.util.List; /** + * @resource Client Initial Access * @author Stian Thorgersen */ public class ClientInitialAccessResource { diff --git a/services/src/main/java/org/keycloak/services/resources/admin/ClientRegistrationPolicyResource.java b/services/src/main/java/org/keycloak/services/resources/admin/ClientRegistrationPolicyResource.java index a052deba34..f8c57e259c 100644 --- a/services/src/main/java/org/keycloak/services/resources/admin/ClientRegistrationPolicyResource.java +++ b/services/src/main/java/org/keycloak/services/resources/admin/ClientRegistrationPolicyResource.java @@ -39,6 +39,7 @@ import org.keycloak.services.clientregistration.policy.ClientRegistrationPolicy; import org.keycloak.services.clientregistration.policy.ClientRegistrationPolicyFactory; /** + * @resource Client Registration Policy * @author Marek Posolda */ public class ClientRegistrationPolicyResource { diff --git a/services/src/main/java/org/keycloak/services/resources/admin/ClientResource.java b/services/src/main/java/org/keycloak/services/resources/admin/ClientResource.java index 7c1139c4a2..89b0a3317c 100755 --- a/services/src/main/java/org/keycloak/services/resources/admin/ClientResource.java +++ b/services/src/main/java/org/keycloak/services/resources/admin/ClientResource.java @@ -82,6 +82,7 @@ import static java.lang.Boolean.TRUE; /** * Base resource class for managing one particular client of a realm. * + * @resource Clients * @author Bill Burke * @version $Revision: 1 $ */ diff --git a/services/src/main/java/org/keycloak/services/resources/admin/ClientRoleMappingsResource.java b/services/src/main/java/org/keycloak/services/resources/admin/ClientRoleMappingsResource.java index 7bdeccded2..3d7d4cd173 100755 --- a/services/src/main/java/org/keycloak/services/resources/admin/ClientRoleMappingsResource.java +++ b/services/src/main/java/org/keycloak/services/resources/admin/ClientRoleMappingsResource.java @@ -49,6 +49,7 @@ import java.util.Properties; import java.util.Set; /** + * @resource Client Role Mappings * @author Bill Burke * @version $Revision: 1 $ */ diff --git a/services/src/main/java/org/keycloak/services/resources/admin/ClientTemplateResource.java b/services/src/main/java/org/keycloak/services/resources/admin/ClientTemplateResource.java index 19b5e7d34b..5ab1781f1a 100644 --- a/services/src/main/java/org/keycloak/services/resources/admin/ClientTemplateResource.java +++ b/services/src/main/java/org/keycloak/services/resources/admin/ClientTemplateResource.java @@ -47,6 +47,7 @@ import javax.ws.rs.core.UriInfo; /** * Base resource class for managing one particular client of a realm. * + * @resource Client Templates * @author Bill Burke * @version $Revision: 1 $ */ diff --git a/services/src/main/java/org/keycloak/services/resources/admin/ClientTemplatesResource.java b/services/src/main/java/org/keycloak/services/resources/admin/ClientTemplatesResource.java index d327fc3941..5e27712846 100755 --- a/services/src/main/java/org/keycloak/services/resources/admin/ClientTemplatesResource.java +++ b/services/src/main/java/org/keycloak/services/resources/admin/ClientTemplatesResource.java @@ -46,6 +46,7 @@ import java.util.List; /** * Base resource class for managing a realm's client templates. * + * @resource Client Templates * @author Bill Burke * @version $Revision: 1 $ */ diff --git a/services/src/main/java/org/keycloak/services/resources/admin/ClientsResource.java b/services/src/main/java/org/keycloak/services/resources/admin/ClientsResource.java index 77e0d6bbae..3fa3c75158 100755 --- a/services/src/main/java/org/keycloak/services/resources/admin/ClientsResource.java +++ b/services/src/main/java/org/keycloak/services/resources/admin/ClientsResource.java @@ -58,6 +58,7 @@ import java.util.Properties; /** * Base resource class for managing a realm's clients. * + * @resource Clients * @author Bill Burke * @version $Revision: 1 $ */ diff --git a/services/src/main/java/org/keycloak/services/resources/admin/ComponentResource.java b/services/src/main/java/org/keycloak/services/resources/admin/ComponentResource.java index 9bb56546da..c5e1edbe00 100644 --- a/services/src/main/java/org/keycloak/services/resources/admin/ComponentResource.java +++ b/services/src/main/java/org/keycloak/services/resources/admin/ComponentResource.java @@ -65,6 +65,7 @@ import java.util.Properties; import java.util.stream.Collectors; /** + * @resource Component * @author Bill Burke * @version $Revision: 1 $ */ diff --git a/services/src/main/java/org/keycloak/services/resources/admin/GroupResource.java b/services/src/main/java/org/keycloak/services/resources/admin/GroupResource.java index 398e03615d..c9fe194f94 100755 --- a/services/src/main/java/org/keycloak/services/resources/admin/GroupResource.java +++ b/services/src/main/java/org/keycloak/services/resources/admin/GroupResource.java @@ -51,6 +51,7 @@ import java.util.Set; import org.keycloak.services.ErrorResponse; /** + * @resource Groups * @author Bill Burke */ public class GroupResource { diff --git a/services/src/main/java/org/keycloak/services/resources/admin/GroupsResource.java b/services/src/main/java/org/keycloak/services/resources/admin/GroupsResource.java index 9d01f35ab1..5be1c0d958 100755 --- a/services/src/main/java/org/keycloak/services/resources/admin/GroupsResource.java +++ b/services/src/main/java/org/keycloak/services/resources/admin/GroupsResource.java @@ -42,6 +42,7 @@ import java.util.List; import org.keycloak.services.ErrorResponse; /** + * @resource Groups * @author Bill Burke */ public class GroupsResource { diff --git a/services/src/main/java/org/keycloak/services/resources/admin/IdentityProviderResource.java b/services/src/main/java/org/keycloak/services/resources/admin/IdentityProviderResource.java index af1a1eccaa..285f36153f 100644 --- a/services/src/main/java/org/keycloak/services/resources/admin/IdentityProviderResource.java +++ b/services/src/main/java/org/keycloak/services/resources/admin/IdentityProviderResource.java @@ -65,6 +65,7 @@ import java.util.List; import java.util.Map; /** + * @resource Identity Providers * @author Pedro Igor */ public class IdentityProviderResource { diff --git a/services/src/main/java/org/keycloak/services/resources/admin/IdentityProvidersResource.java b/services/src/main/java/org/keycloak/services/resources/admin/IdentityProvidersResource.java index 60e10759ed..c5250ac35f 100755 --- a/services/src/main/java/org/keycloak/services/resources/admin/IdentityProvidersResource.java +++ b/services/src/main/java/org/keycloak/services/resources/admin/IdentityProvidersResource.java @@ -58,6 +58,7 @@ import java.util.Map; import static javax.ws.rs.core.Response.Status.BAD_REQUEST; /** + * @resource Identity Providers * @author Pedro Igor */ public class IdentityProvidersResource { diff --git a/services/src/main/java/org/keycloak/services/resources/admin/KeyResource.java b/services/src/main/java/org/keycloak/services/resources/admin/KeyResource.java index 45d644f48a..f2c94015cd 100644 --- a/services/src/main/java/org/keycloak/services/resources/admin/KeyResource.java +++ b/services/src/main/java/org/keycloak/services/resources/admin/KeyResource.java @@ -36,6 +36,7 @@ import java.util.List; import java.util.Map; /** + * @resource Key * @author Stian Thorgersen */ public class KeyResource { diff --git a/services/src/main/java/org/keycloak/services/resources/admin/ProtocolMappersResource.java b/services/src/main/java/org/keycloak/services/resources/admin/ProtocolMappersResource.java index e3765c9c5e..ad473b9072 100755 --- a/services/src/main/java/org/keycloak/services/resources/admin/ProtocolMappersResource.java +++ b/services/src/main/java/org/keycloak/services/resources/admin/ProtocolMappersResource.java @@ -55,6 +55,7 @@ import java.util.Properties; /** * Base resource for managing users * + * @resource Protocol Mappers * @author Bill Burke * @version $Revision: 1 $ */ diff --git a/services/src/main/java/org/keycloak/services/resources/admin/RealmAdminResource.java b/services/src/main/java/org/keycloak/services/resources/admin/RealmAdminResource.java index 133a903ad1..146ef865f4 100644 --- a/services/src/main/java/org/keycloak/services/resources/admin/RealmAdminResource.java +++ b/services/src/main/java/org/keycloak/services/resources/admin/RealmAdminResource.java @@ -102,6 +102,7 @@ import java.util.regex.PatternSyntaxException; /** * Base resource class for the admin REST api of one realm * + * @resource Realms Admin * @author Bill Burke * @version $Revision: 1 $ */ diff --git a/services/src/main/java/org/keycloak/services/resources/admin/RealmsAdminResource.java b/services/src/main/java/org/keycloak/services/resources/admin/RealmsAdminResource.java index ef72fa7662..7a948d9768 100755 --- a/services/src/main/java/org/keycloak/services/resources/admin/RealmsAdminResource.java +++ b/services/src/main/java/org/keycloak/services/resources/admin/RealmsAdminResource.java @@ -54,6 +54,7 @@ import java.util.List; /** * Top level resource for Admin REST API * + * @resource Realms Admin * @author Bill Burke * @version $Revision: 1 $ */ diff --git a/services/src/main/java/org/keycloak/services/resources/admin/RoleByIdResource.java b/services/src/main/java/org/keycloak/services/resources/admin/RoleByIdResource.java index 1b489331a0..1f19b64eb4 100755 --- a/services/src/main/java/org/keycloak/services/resources/admin/RoleByIdResource.java +++ b/services/src/main/java/org/keycloak/services/resources/admin/RoleByIdResource.java @@ -45,6 +45,7 @@ import java.util.Set; /** * Sometimes its easier to just interact with roles by their ID instead of container/role-name * + * @resource Roles (by ID) * @author Bill Burke * @version $Revision: 1 $ */ diff --git a/services/src/main/java/org/keycloak/services/resources/admin/RoleContainerResource.java b/services/src/main/java/org/keycloak/services/resources/admin/RoleContainerResource.java index 9e93488920..47f9c6420a 100755 --- a/services/src/main/java/org/keycloak/services/resources/admin/RoleContainerResource.java +++ b/services/src/main/java/org/keycloak/services/resources/admin/RoleContainerResource.java @@ -48,6 +48,7 @@ import java.util.List; import java.util.Set; /** + * @resource Roles * @author Bill Burke * @version $Revision: 1 $ */ diff --git a/services/src/main/java/org/keycloak/services/resources/admin/RoleMapperResource.java b/services/src/main/java/org/keycloak/services/resources/admin/RoleMapperResource.java index 28985c2c38..5b7af1fd3c 100644 --- a/services/src/main/java/org/keycloak/services/resources/admin/RoleMapperResource.java +++ b/services/src/main/java/org/keycloak/services/resources/admin/RoleMapperResource.java @@ -59,6 +59,7 @@ import java.util.Set; /** * Base resource for managing users * + * @resource Role Mapper * @author Bill Burke * @version $Revision: 1 $ */ diff --git a/services/src/main/java/org/keycloak/services/resources/admin/RoleResource.java b/services/src/main/java/org/keycloak/services/resources/admin/RoleResource.java index 6e65c3346f..5fb1d3423b 100755 --- a/services/src/main/java/org/keycloak/services/resources/admin/RoleResource.java +++ b/services/src/main/java/org/keycloak/services/resources/admin/RoleResource.java @@ -33,6 +33,7 @@ import java.util.List; import java.util.Set; /** + * @resource Roles * @author Bill Burke * @version $Revision: 1 $ */ diff --git a/services/src/main/java/org/keycloak/services/resources/admin/ScopeMappedClientResource.java b/services/src/main/java/org/keycloak/services/resources/admin/ScopeMappedClientResource.java index d7aa5da07b..431e97cc98 100755 --- a/services/src/main/java/org/keycloak/services/resources/admin/ScopeMappedClientResource.java +++ b/services/src/main/java/org/keycloak/services/resources/admin/ScopeMappedClientResource.java @@ -43,6 +43,7 @@ import java.util.List; import java.util.Set; /** + * @resource Scope Mappings * @author Bill Burke * @version $Revision: 1 $ */ diff --git a/services/src/main/java/org/keycloak/services/resources/admin/ScopeMappedResource.java b/services/src/main/java/org/keycloak/services/resources/admin/ScopeMappedResource.java index 1b4ad585eb..19a32f9de7 100755 --- a/services/src/main/java/org/keycloak/services/resources/admin/ScopeMappedResource.java +++ b/services/src/main/java/org/keycloak/services/resources/admin/ScopeMappedResource.java @@ -50,6 +50,7 @@ import java.util.Set; /** * Base class for managing the scope mappings of a specific client. * + * @resource Scope Mappings * @author Bill Burke * @version $Revision: 1 $ */ diff --git a/services/src/main/java/org/keycloak/services/resources/admin/UserStorageProviderResource.java b/services/src/main/java/org/keycloak/services/resources/admin/UserStorageProviderResource.java index 4f12322160..cd2858f798 100644 --- a/services/src/main/java/org/keycloak/services/resources/admin/UserStorageProviderResource.java +++ b/services/src/main/java/org/keycloak/services/resources/admin/UserStorageProviderResource.java @@ -48,6 +48,7 @@ import java.util.HashMap; import java.util.Map; /** + * @resource User Storage Provider * @author Bill Burke * @version $Revision: 1 $ */ diff --git a/services/src/main/java/org/keycloak/services/resources/admin/UsersResource.java b/services/src/main/java/org/keycloak/services/resources/admin/UsersResource.java index 83265cbca4..b904a07e45 100755 --- a/services/src/main/java/org/keycloak/services/resources/admin/UsersResource.java +++ b/services/src/main/java/org/keycloak/services/resources/admin/UsersResource.java @@ -106,6 +106,7 @@ import java.util.concurrent.TimeUnit; /** * Base resource for managing users * + * @resource Users * @author Bill Burke * @version $Revision: 1 $ */ From ba73ab1c2ad76988c6d63687fce53c4a8140615e Mon Sep 17 00:00:00 2001 From: Guus der Kinderen Date: Tue, 10 Jan 2017 17:00:07 +0100 Subject: [PATCH 3/3] API documentation: Overview to left-hand side --- services/pom.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/services/pom.xml b/services/pom.xml index c771187a93..add08144ee 100755 --- a/services/pom.xml +++ b/services/pom.xml @@ -298,6 +298,7 @@ https://github.com/asciidoctor/asciidoctorj/blob/master/asciidoctorj-core/src/main/java/org/asciidoctor/Attributes.java --> + left ${project.basedir}/target/apidocs-rest/asciidoc