diff --git a/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/adapter/webservice/AudienceRegistry.java b/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/adapter/webservice/AudienceRegistry.java index 05a70e687dd300b691d5da96fc296e03f276d982..0c41aa00159f149cf9f75b1069ab963a3508bce4 100644 --- a/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/adapter/webservice/AudienceRegistry.java +++ b/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/adapter/webservice/AudienceRegistry.java @@ -2,8 +2,16 @@ package net.ihe.gazelle.app.accesstokenproviderapi.adapter.webservice; import net.ihe.gazelle.app.accesstokenproviderapi.business.Credential; +/** + * Interface to interact with the audience registry where is store all known audience with their credential + */ public interface AudienceRegistry { + /** + * Get credential's audience + * @param audienceId + * @return credential + */ Credential getAudienceCredentials(String audienceId); } diff --git a/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/adapter/webservice/DummyAuthzServer.java b/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/adapter/webservice/DummyAuthzServer.java index e457811515b8b87409b8c9a587583839c432f846..27f6de6fe11245f40135c2267f3e87bf140aea7f 100644 --- a/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/adapter/webservice/DummyAuthzServer.java +++ b/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/adapter/webservice/DummyAuthzServer.java @@ -1,7 +1,18 @@ package net.ihe.gazelle.app.accesstokenproviderapi.adapter.webservice; +/** + * For SoapUI integration need, a simplified Authorization Server (or IDP) is required. + */ public interface DummyAuthzServer { + /** + * get a dummy access token + * @param userId + * @param audienceId + * @param purposeOfUser + * @param resourceId + * @return an access token + */ byte[] getAccessToken(String userId, String audienceId, String purposeOfUser, String resourceId); } diff --git a/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/adapter/webservice/TestUserRegistry.java b/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/adapter/webservice/TestUserRegistry.java index 94e0de2072e0a9bff872a176c367625fb0610099..3477a8885364822bcbf6b2953573e34ad925886d 100644 --- a/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/adapter/webservice/TestUserRegistry.java +++ b/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/adapter/webservice/TestUserRegistry.java @@ -2,8 +2,15 @@ package net.ihe.gazelle.app.accesstokenproviderapi.adapter.webservice; import net.ihe.gazelle.app.accesstokenproviderapi.business.testuser.TestUser; +/** + * Interface to interact with the test-users’ database for authentication step and token content + */ public interface TestUserRegistry { + /** + * @param userId + * @return TestUser + */ TestUser getTestUser(String userId); } diff --git a/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/adapter/webservice/TokenGenerator.java b/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/adapter/webservice/TokenGenerator.java index d597ea6e5100f6bee78344373a2796b26788b005..0be087f904facb15eb002cce87222927b6eb8f70 100644 --- a/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/adapter/webservice/TokenGenerator.java +++ b/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/adapter/webservice/TokenGenerator.java @@ -3,8 +3,16 @@ package net.ihe.gazelle.app.accesstokenproviderapi.adapter.webservice; import net.ihe.gazelle.app.accesstokenproviderapi.business.AccessTokenRequest; import net.ihe.gazelle.sb.iua.business.EncodedIUAToken; +/** + * Interface to interact with the access token generator + */ public interface TokenGenerator { + /** + * generate an access token from an access token request + * @param accessTokenRequest + * @return EncodedIUAToken + */ EncodedIUAToken generateAccessToken(AccessTokenRequest accessTokenRequest); } diff --git a/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/business/AccessTokenExtension.java b/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/business/AccessTokenExtension.java index f38b23dc277fa983e1df8f67f6f88170004538a3..cd92b50c67f8c55d80175dad59ebba560cb60c1e 100644 --- a/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/business/AccessTokenExtension.java +++ b/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/business/AccessTokenExtension.java @@ -3,6 +3,9 @@ package net.ihe.gazelle.app.accesstokenproviderapi.business; import java.util.ArrayList; import java.util.List; +/** + * Extensions for the Access Token + */ public class AccessTokenExtension { private String subjectId; @@ -208,6 +211,9 @@ public class AccessTokenExtension { } @Override + /** + * {@inheritDoc} + */ public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; @@ -231,6 +237,9 @@ public class AccessTokenExtension { } @Override + /** + * {@inheritDoc} + */ public int hashCode() { int result = subjectId != null ? subjectId.hashCode() : 0; result = 31 * result + (subjectOrganizations != null ? subjectOrganizations.hashCode() : 0); diff --git a/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/business/AccessTokenRequest.java b/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/business/AccessTokenRequest.java index 596a1ac572f5da81f362881391375e75e784132b..d1dfad1ed718c4a314453a92814d3f0d84e246b3 100644 --- a/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/business/AccessTokenRequest.java +++ b/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/business/AccessTokenRequest.java @@ -4,6 +4,9 @@ import net.ihe.gazelle.sb.iua.business.TokenType; import java.time.Duration; +/** + * The Access Token request + */ public class AccessTokenRequest { private String issuer; @@ -107,6 +110,9 @@ public class AccessTokenRequest { } @Override + /** + * {@inheritDoc} + */ public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; @@ -123,6 +129,9 @@ public class AccessTokenRequest { } @Override + /** + * {@inheritDoc} + */ public int hashCode() { int result = issuer.hashCode(); result = 31 * result + subject.hashCode(); diff --git a/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/business/AsymmetricSignature.java b/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/business/AsymmetricSignature.java index 616fa0aabc15a0e44f408ee3984202de21188492..d3f30203de4c1cf83289bcdfe54a85e6d096ea76 100644 --- a/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/business/AsymmetricSignature.java +++ b/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/business/AsymmetricSignature.java @@ -2,6 +2,9 @@ package net.ihe.gazelle.app.accesstokenproviderapi.business; import java.util.Arrays; +/** + * Asymmetric signature information of the access token + */ public class AsymmetricSignature extends Signature { private byte[] privateKey; @@ -33,6 +36,9 @@ public class AsymmetricSignature extends Signature { } @Override + /** + * {@inheritDoc} + */ public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; @@ -45,6 +51,9 @@ public class AsymmetricSignature extends Signature { } @Override + /** + * {@inheritDoc} + */ public int hashCode() { int result = Arrays.hashCode(privateKey); result = 31 * result + privateKeyPassword.hashCode(); diff --git a/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/business/CodedValue.java b/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/business/CodedValue.java index fa429f69e3ae7485d96965e754c4b10b86687743..ebd7e365c497b4eab5b7444c4af6ff0fd195e9bc 100644 --- a/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/business/CodedValue.java +++ b/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/business/CodedValue.java @@ -1,5 +1,8 @@ package net.ihe.gazelle.app.accesstokenproviderapi.business; +/** + * A Coded value + */ public class CodedValue { private String code; diff --git a/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/business/Credential.java b/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/business/Credential.java index 7014be5df9a808ee88a40513f9e9079d7cb5a938..cb7789cee54d0df2909d9073df1444858d5739f6 100644 --- a/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/business/Credential.java +++ b/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/business/Credential.java @@ -1,4 +1,7 @@ package net.ihe.gazelle.app.accesstokenproviderapi.business; +/** + * Credential for an audience + */ public abstract class Credential { } diff --git a/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/business/Password.java b/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/business/Password.java index 4265f783f5e9e86d9b03c09ea28af176ef1fb169..7123a182d92aebecfc6f86fc9bd5f78b599c7656 100644 --- a/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/business/Password.java +++ b/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/business/Password.java @@ -2,6 +2,9 @@ package net.ihe.gazelle.app.accesstokenproviderapi.business; import java.util.Arrays; +/** + * A password + */ public class Password extends Credential { private byte[] value; @@ -22,6 +25,9 @@ public class Password extends Credential { } @Override + /** + * {@inheritDoc} + */ public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; @@ -32,6 +38,9 @@ public class Password extends Credential { } @Override + /** + * {@inheritDoc} + */ public int hashCode() { return Arrays.hashCode(value); } diff --git a/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/business/PublicKey.java b/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/business/PublicKey.java index c39edfd001f36d0746d7957fb9406ec2947b6066..2803b5b9cbe33305368cc87a7cb00e0ec4ff7bbe 100644 --- a/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/business/PublicKey.java +++ b/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/business/PublicKey.java @@ -2,6 +2,9 @@ package net.ihe.gazelle.app.accesstokenproviderapi.business; import java.util.Arrays; +/** + * A public key + */ public class PublicKey extends Credential { private byte[] key; @@ -21,6 +24,9 @@ public class PublicKey extends Credential { } @Override + /** + * {@inheritDoc} + */ public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; @@ -31,6 +37,9 @@ public class PublicKey extends Credential { } @Override + /** + * {@inheritDoc} + */ public int hashCode() { return Arrays.hashCode(key); } diff --git a/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/business/Signature.java b/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/business/Signature.java index 50515e6a6061581ec2380f0515276b5c2d7fdc30..ec065fc59c883571956776052d626bda93d4663f 100644 --- a/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/business/Signature.java +++ b/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/business/Signature.java @@ -1,5 +1,9 @@ package net.ihe.gazelle.app.accesstokenproviderapi.business; + +/** + * Signature information of the access token + */ public abstract class Signature { private String algorithm; @@ -20,6 +24,9 @@ public abstract class Signature { } @Override + /** + * {@inheritDoc} + */ public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; @@ -30,6 +37,9 @@ public abstract class Signature { } @Override + /** + * {@inheritDoc} + */ public int hashCode() { return algorithm.hashCode(); } diff --git a/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/business/SymmetricSignature.java b/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/business/SymmetricSignature.java index 7e8c8117fb120c216f5b6890b72e5d71c6466afe..31628baae5de12ccbdcb0762a2f4e4f778af00db 100644 --- a/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/business/SymmetricSignature.java +++ b/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/business/SymmetricSignature.java @@ -1,5 +1,8 @@ package net.ihe.gazelle.app.accesstokenproviderapi.business; +/** + * Symmetric signature information of the access token + */ public class SymmetricSignature extends Signature { private String secret; @@ -21,6 +24,9 @@ public class SymmetricSignature extends Signature { } @Override + /** + * {@inheritDoc} + */ public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; @@ -32,6 +38,9 @@ public class SymmetricSignature extends Signature { } @Override + /** + * {@inheritDoc} + */ public int hashCode() { return secret.hashCode(); } diff --git a/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/business/testuser/TestUser.java b/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/business/testuser/TestUser.java index 9b5d454e3cad4ca64b1004feb50f3667f53401f1..321d4eada01514f6fd4fad131b567e52ca20d602 100644 --- a/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/business/testuser/TestUser.java +++ b/access-token-provider-api/src/main/java/net/ihe/gazelle/app/accesstokenproviderapi/business/testuser/TestUser.java @@ -6,6 +6,9 @@ import java.util.HashMap; import java.util.List; import java.util.Map; +/** + * Test user used for authentication and token content + */ public class TestUser { private String userId; @@ -15,6 +18,9 @@ public class TestUser { private String gender; //fixme String ? private Map<String, String> extensions = new HashMap<>(); + /** + * Constructor + */ public TestUser(String userId, List<String> givenNames, String lastName) { this.userId = userId; this.givenNames = givenNames; @@ -105,6 +111,9 @@ public class TestUser { } @Override + /** + * {@inheritDoc} + */ public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; @@ -120,6 +129,9 @@ public class TestUser { } @Override + /** + * {@inheritDoc} + */ public int hashCode() { int result = userId.hashCode(); result = 31 * result + givenNames.hashCode();