diff --git a/README.md b/README.md index af8208aa..84ff9425 100644 --- a/README.md +++ b/README.md @@ -101,13 +101,13 @@ If you are using Maven, you need to add the following dependency: com.yoti yoti-sdk-api - 3.10.0-SNAPSHOT + 4.0.0-SNAPSHOT ``` If you are using Gradle, here is the dependency to add: -`compile group: 'com.yoti', name: 'yoti-sdk-api', version: '3.10.0-SNAPSHOT'` +`compile group: 'com.yoti', name: 'yoti-sdk-api', version: '4.0.0-SNAPSHOT'` You will find all classes packaged under `com.yoti.api` diff --git a/examples/doc-scan/pom.xml b/examples/doc-scan/pom.xml index 3b9d50d9..468e0e43 100644 --- a/examples/doc-scan/pom.xml +++ b/examples/doc-scan/pom.xml @@ -53,7 +53,7 @@ com.yoti yoti-sdk-api - 3.10.0-SNAPSHOT + 4.0.0-SNAPSHOT diff --git a/examples/doc-scan/src/main/resources/templates/success.html b/examples/doc-scan/src/main/resources/templates/success.html index 1d85831f..2ddeb6f4 100644 --- a/examples/doc-scan/src/main/resources/templates/success.html +++ b/examples/doc-scan/src/main/resources/templates/success.html @@ -965,6 +965,14 @@

Identity Profile

+ +
+ Generated Profile Media: + +
+
+
diff --git a/pom.xml b/pom.xml index dbdad87d..55891598 100644 --- a/pom.xml +++ b/pom.xml @@ -5,7 +5,7 @@ com.yoti yoti-sdk pom - 3.10.0-SNAPSHOT + 4.0.0-SNAPSHOT Yoti SDK Java SDK for simple integration with the Yoti platform https://github.com/getyoti/yoti-java-sdk diff --git a/yoti-sdk-api/pom.xml b/yoti-sdk-api/pom.xml index 6e69ea00..3909c6ad 100644 --- a/yoti-sdk-api/pom.xml +++ b/yoti-sdk-api/pom.xml @@ -11,7 +11,7 @@ com.yoti yoti-sdk-parent - 3.10.0-SNAPSHOT + 4.0.0-SNAPSHOT ../yoti-sdk-parent diff --git a/yoti-sdk-api/src/main/java/com/yoti/api/client/docs/session/create/IdentityProfileSubjectPayload.java b/yoti-sdk-api/src/main/java/com/yoti/api/client/docs/session/create/IdentityProfileSubjectPayload.java new file mode 100644 index 00000000..6eeceb9b --- /dev/null +++ b/yoti-sdk-api/src/main/java/com/yoti/api/client/docs/session/create/IdentityProfileSubjectPayload.java @@ -0,0 +1,45 @@ +package com.yoti.api.client.docs.session.create; + +import com.fasterxml.jackson.annotation.JsonProperty; + +public class IdentityProfileSubjectPayload { + + @JsonProperty("subject_id") + private final String subjectId; + + IdentityProfileSubjectPayload(String subjectId) { + this.subjectId = subjectId; + } + + public static Builder builder() { + return new Builder(); + } + + public String getSubjectId() { + return subjectId; + } + + public static class Builder { + + private String subjectId; + + Builder() {} + + /** + * Sets the subject ID for the Identity Profile requirement + * + * @param subjectId the subject ID + * @return the builder + */ + public Builder withSubjectId(String subjectId) { + this.subjectId = subjectId; + return this; + } + + public IdentityProfileSubjectPayload build() { + return new IdentityProfileSubjectPayload(subjectId); + } + + } + +} diff --git a/yoti-sdk-api/src/main/java/com/yoti/api/client/docs/session/create/SessionSpec.java b/yoti-sdk-api/src/main/java/com/yoti/api/client/docs/session/create/SessionSpec.java index b7a0a763..34318906 100644 --- a/yoti-sdk-api/src/main/java/com/yoti/api/client/docs/session/create/SessionSpec.java +++ b/yoti-sdk-api/src/main/java/com/yoti/api/client/docs/session/create/SessionSpec.java @@ -8,6 +8,7 @@ import com.yoti.api.client.docs.session.create.check.RequestedCheck; import com.yoti.api.client.docs.session.create.filters.RequiredDocument; import com.yoti.api.client.docs.session.create.identityprofile.advanced.AdvancedIdentityProfileRequirementsPayload; +import com.yoti.api.client.docs.session.create.identityprofile.simple.IdentityProfileRequirementsPayload; import com.yoti.api.client.docs.session.create.resources.ResourceCreationContainer; import com.yoti.api.client.docs.session.create.task.RequestedTask; @@ -55,13 +56,13 @@ public class SessionSpec { private final IbvOptions ibvOptions; @JsonProperty(Property.IDENTITY_PROFILE_REQUIREMENTS) - private final Map identityProfile; + private final IdentityProfileRequirementsPayload identityProfile; @JsonProperty(Property.ADVANCED_IDENTITY_PROFILE_REQUIREMENTS) private final AdvancedIdentityProfileRequirementsPayload advancedIdentityProfileRequirements; @JsonProperty(Property.SUBJECT) - private final Map subject; + private final IdentityProfileSubjectPayload subject; @JsonProperty(Property.RESOURCES) private final ResourceCreationContainer resources; @@ -81,8 +82,8 @@ public class SessionSpec { Boolean blockBiometricConsent, IbvOptions ibvOptions, ZonedDateTime sessionDeadline, - Map identityProfile, - Map subject, + IdentityProfileRequirementsPayload identityProfile, + IdentityProfileSubjectPayload subject, ResourceCreationContainer resources, Boolean createIdentityProfilePreview, AdvancedIdentityProfileRequirementsPayload advancedIdentityProfileRequirements) { @@ -223,7 +224,7 @@ public ZonedDateTime getSessionDeadline() { * * @return Identity Profile */ - public Object getIdentityProfile() { + public IdentityProfileRequirementsPayload getIdentityProfile() { return identityProfile; } @@ -232,7 +233,7 @@ public Object getIdentityProfile() { * * @return subject */ - public Map getSubject() { + public IdentityProfileSubjectPayload getSubject() { return subject; } @@ -277,9 +278,9 @@ public static class Builder { private Boolean blockBiometricConsent; private IbvOptions ibvOptions; private ZonedDateTime sessionDeadline; - private Map identityProfile; + private IdentityProfileRequirementsPayload identityProfile; private AdvancedIdentityProfileRequirementsPayload advancedIdentityProfileRequirementsPayload; - private Map subject; + private IdentityProfileSubjectPayload subject; private ResourceCreationContainer resources; private Boolean createIdentityProfilePreview; @@ -428,7 +429,7 @@ public Builder withSessionDeadline(ZonedDateTime sessionDeadline) { * @param identityProfile the Identity Profile * @return the Builder */ - public Builder withIdentityProfile(Map identityProfile) { + public Builder withIdentityProfile(IdentityProfileRequirementsPayload identityProfile) { this.identityProfile = identityProfile; return this; } @@ -439,7 +440,7 @@ public Builder withIdentityProfile(Map identityProfile) { * @param subject the subject * @return the Builder */ - public Builder withSubject(Map subject) { + public Builder withSubject(IdentityProfileSubjectPayload subject) { this.subject = subject; return this; } diff --git a/yoti-sdk-api/src/main/java/com/yoti/api/client/docs/session/create/identityprofile/simple/IdentityProfileRequirementsPayload.java b/yoti-sdk-api/src/main/java/com/yoti/api/client/docs/session/create/identityprofile/simple/IdentityProfileRequirementsPayload.java new file mode 100644 index 00000000..e75f454c --- /dev/null +++ b/yoti-sdk-api/src/main/java/com/yoti/api/client/docs/session/create/identityprofile/simple/IdentityProfileRequirementsPayload.java @@ -0,0 +1,67 @@ +package com.yoti.api.client.docs.session.create.identityprofile.simple; + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; + +@JsonInclude(JsonInclude.Include.NON_NULL) +public class IdentityProfileRequirementsPayload { + + @JsonProperty("trust_framework") + private final String trustFramework; + + @JsonProperty("scheme") + private final IdentityProfileSchemePayload scheme; + + IdentityProfileRequirementsPayload(String trustFramework, IdentityProfileSchemePayload scheme) { + this.trustFramework = trustFramework; + this.scheme = scheme; + } + + public static Builder builder() { + return new Builder(); + } + + public String getTrustFramework() { + return trustFramework; + } + + public IdentityProfileSchemePayload getScheme() { + return scheme; + } + + public static class Builder { + + private String trustFramework; + private IdentityProfileSchemePayload scheme; + + Builder() {} + + /** + * Sets the trust framework name for the Identity Profile requirement + * + * @param trustFramework the name of the trust framework + * @return the builder + */ + public Builder withTrustFramework(String trustFramework) { + this.trustFramework = trustFramework; + return this; + } + + /** + * Sets the scheme for the Identity Profile requirement + * + * @param scheme the scheme + * @return the builder + */ + public Builder withScheme(IdentityProfileSchemePayload scheme) { + this.scheme = scheme; + return this; + } + + public IdentityProfileRequirementsPayload build() { + return new IdentityProfileRequirementsPayload(trustFramework, scheme); + } + + } + +} diff --git a/yoti-sdk-api/src/main/java/com/yoti/api/client/docs/session/create/identityprofile/simple/IdentityProfileSchemePayload.java b/yoti-sdk-api/src/main/java/com/yoti/api/client/docs/session/create/identityprofile/simple/IdentityProfileSchemePayload.java new file mode 100644 index 00000000..228173b1 --- /dev/null +++ b/yoti-sdk-api/src/main/java/com/yoti/api/client/docs/session/create/identityprofile/simple/IdentityProfileSchemePayload.java @@ -0,0 +1,67 @@ +package com.yoti.api.client.docs.session.create.identityprofile.simple; + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; + +@JsonInclude(JsonInclude.Include.NON_NULL) +public class IdentityProfileSchemePayload { + + @JsonProperty("type") + private final String type; + + @JsonProperty("objective") + private final String objective; + + IdentityProfileSchemePayload(String type, String objective) { + this.type = type; + this.objective = objective; + } + + public static Builder builder() { + return new Builder(); + } + + public String getType() { + return type; + } + + public String getObjective() { + return objective; + } + + public static class Builder { + + private String type; + private String objective; + + Builder() {} + + /** + * Sets the type of the scheme for the Identity Profile + * + * @param type the type of scheme + * @return the builder + */ + public Builder withType(String type) { + this.type = type; + return this; + } + + /** + * Sets the objective of the scheme for the Identity Profile + * + * @param objective the objective of the scheme + * @return the builder + */ + public Builder withObjective(String objective) { + this.objective = objective; + return this; + } + + public IdentityProfileSchemePayload build() { + return new IdentityProfileSchemePayload(type, objective); + } + + } + +} diff --git a/yoti-sdk-api/src/main/java/com/yoti/api/client/docs/session/retrieve/IdentityProfileReportResponse.java b/yoti-sdk-api/src/main/java/com/yoti/api/client/docs/session/retrieve/IdentityProfileReportResponse.java new file mode 100644 index 00000000..99cfc60f --- /dev/null +++ b/yoti-sdk-api/src/main/java/com/yoti/api/client/docs/session/retrieve/IdentityProfileReportResponse.java @@ -0,0 +1,45 @@ +package com.yoti.api.client.docs.session.retrieve; + +import java.util.List; + +import com.fasterxml.jackson.annotation.JsonProperty; + +public class IdentityProfileReportResponse { + + @JsonProperty("trust_framework") + private String trustFramework; + + @JsonProperty("media") + private MediaResponse media; + + @JsonProperty("schemes_compliance") + private List schemesCompliance; + + /** + * The trust framework the report was generated for + * + * @return the trust framework + */ + public String getTrustFramework() { + return trustFramework; + } + + /** + * The media object containing the report + * + * @return the report media + */ + public MediaResponse getMedia() { + return media; + } + + /** + * The list of schemes used in the trust framework + * + * @return the list of schemes + */ + public List getSchemesCompliance() { + return schemesCompliance; + } + +} diff --git a/yoti-sdk-api/src/main/java/com/yoti/api/client/docs/session/retrieve/IdentityProfileResponse.java b/yoti-sdk-api/src/main/java/com/yoti/api/client/docs/session/retrieve/IdentityProfileResponse.java index 896e5622..ba4b09d7 100644 --- a/yoti-sdk-api/src/main/java/com/yoti/api/client/docs/session/retrieve/IdentityProfileResponse.java +++ b/yoti-sdk-api/src/main/java/com/yoti/api/client/docs/session/retrieve/IdentityProfileResponse.java @@ -1,7 +1,5 @@ package com.yoti.api.client.docs.session.retrieve; -import java.util.Map; - import com.fasterxml.jackson.annotation.JsonProperty; public class IdentityProfileResponse { @@ -16,7 +14,7 @@ public class IdentityProfileResponse { private IdentityProfileFailureResponse failureReason; @JsonProperty(Property.IDENTITY_PROFILE_REPORT) - private Map identityProfileReport; + private IdentityProfileReportResponse identityProfileReport; public String getSubjectId() { return subjectId; @@ -30,7 +28,7 @@ public IdentityProfileFailureResponse getFailureReason() { return failureReason; } - public Map getIdentityProfileReport() { + public IdentityProfileReportResponse getIdentityProfileReport() { return identityProfileReport; } diff --git a/yoti-sdk-api/src/main/java/com/yoti/api/client/docs/session/retrieve/IdentityProfileSchemeComplianceReportResponse.java b/yoti-sdk-api/src/main/java/com/yoti/api/client/docs/session/retrieve/IdentityProfileSchemeComplianceReportResponse.java new file mode 100644 index 00000000..646886c9 --- /dev/null +++ b/yoti-sdk-api/src/main/java/com/yoti/api/client/docs/session/retrieve/IdentityProfileSchemeComplianceReportResponse.java @@ -0,0 +1,43 @@ +package com.yoti.api.client.docs.session.retrieve; + +import com.fasterxml.jackson.annotation.JsonProperty; + +public class IdentityProfileSchemeComplianceReportResponse { + + @JsonProperty("scheme") + private IdentityProfileSchemeResponse scheme; + + @JsonProperty("requirements_met") + private Boolean requirementsMet; + + @JsonProperty("requirements_not_met_info") + private String requirementsNotMetInfo; + + /** + * The Identity Profile scheme + * + * @return the scheme + */ + public IdentityProfileSchemeResponse getScheme() { + return scheme; + } + + /** + * Whether or not the requirements for the scheme were met + * + * @return boolean + */ + public Boolean getRequirementsMet() { + return requirementsMet; + } + + /** + * Information about why the requirements for the scheme were not met + * + * @return string + */ + public String getRequirementsNotMetInfo() { + return requirementsNotMetInfo; + } + +} diff --git a/yoti-sdk-api/src/main/java/com/yoti/api/client/docs/session/retrieve/IdentityProfileSchemeResponse.java b/yoti-sdk-api/src/main/java/com/yoti/api/client/docs/session/retrieve/IdentityProfileSchemeResponse.java new file mode 100644 index 00000000..fe33fcee --- /dev/null +++ b/yoti-sdk-api/src/main/java/com/yoti/api/client/docs/session/retrieve/IdentityProfileSchemeResponse.java @@ -0,0 +1,31 @@ +package com.yoti.api.client.docs.session.retrieve; + +import com.fasterxml.jackson.annotation.JsonProperty; + +public class IdentityProfileSchemeResponse { + + @JsonProperty("type") + private String type; + + @JsonProperty("objective") + private String objective; + + /** + * The type of the scheme + * + * @return the type + */ + public String getType() { + return type; + } + + /** + * The objective of the scheme + * + * @return the objective + */ + public String getObjective() { + return objective; + } + +} diff --git a/yoti-sdk-api/src/main/java/com/yoti/api/client/spi/remote/call/YotiConstants.java b/yoti-sdk-api/src/main/java/com/yoti/api/client/spi/remote/call/YotiConstants.java index 19167112..ae1f6283 100644 --- a/yoti-sdk-api/src/main/java/com/yoti/api/client/spi/remote/call/YotiConstants.java +++ b/yoti-sdk-api/src/main/java/com/yoti/api/client/spi/remote/call/YotiConstants.java @@ -29,7 +29,7 @@ private YotiConstants() {} public static final String CONTENT_TYPE_JPEG = "image/jpeg"; public static final String JAVA = "Java"; - public static final String SDK_VERSION = JAVA + "-3.10.0-SNAPSHOT"; + public static final String SDK_VERSION = JAVA + "-4.0.0-SNAPSHOT"; public static final String SIGNATURE_ALGORITHM = "SHA256withRSA"; public static final String ASYMMETRIC_CIPHER = "RSA/NONE/PKCS1Padding"; public static final String SYMMETRIC_CIPHER = "AES/CBC/PKCS7Padding"; diff --git a/yoti-sdk-api/src/test/java/com/yoti/api/client/docs/session/create/SessionSpecTest.java b/yoti-sdk-api/src/test/java/com/yoti/api/client/docs/session/create/SessionSpecTest.java index d0bb1463..76d4bb39 100644 --- a/yoti-sdk-api/src/test/java/com/yoti/api/client/docs/session/create/SessionSpecTest.java +++ b/yoti-sdk-api/src/test/java/com/yoti/api/client/docs/session/create/SessionSpecTest.java @@ -1,10 +1,7 @@ package com.yoti.api.client.docs.session.create; -import static com.yoti.api.client.spi.remote.call.YotiConstants.DEFAULT_CHARSET; - import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.Matchers.contains; -import static org.hamcrest.Matchers.equalTo; import static org.hamcrest.Matchers.hasItems; import static org.hamcrest.Matchers.hasSize; import static org.hamcrest.Matchers.instanceOf; @@ -12,20 +9,15 @@ import static org.hamcrest.Matchers.notNullValue; import static org.hamcrest.Matchers.nullValue; -import java.io.IOException; import java.time.ZonedDateTime; -import java.util.HashMap; -import java.util.Map; import com.yoti.api.client.docs.session.create.check.RequestedDocumentAuthenticityCheck; import com.yoti.api.client.docs.session.create.check.RequestedLivenessCheck; import com.yoti.api.client.docs.session.create.filters.RequiredDocument; +import com.yoti.api.client.docs.session.create.identityprofile.simple.IdentityProfileRequirementsPayload; import com.yoti.api.client.docs.session.create.resources.ResourceCreationContainer; import com.yoti.api.client.docs.session.create.task.RequestedIdDocTextExtractionTask; -import com.fasterxml.jackson.databind.JsonNode; -import com.fasterxml.jackson.databind.ObjectMapper; -import org.hamcrest.Matchers; import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.Mock; @@ -50,13 +42,13 @@ public class SessionSpecTest { private static final String SOME_SDK_CONFIG_SUCCESS_URL = "https://yourdomain.com/some/success/endpoint"; private static final String SOME_SDK_CONFIG_ERROR_URL = "https://yourdomain.com/some/error/endpoint"; - private static final ObjectMapper MAPPER = new ObjectMapper(); - @Mock RequiredDocument requiredDocumentMock; @Mock IbvOptions ibvOptionsMock; @Mock ZonedDateTime sessionDeadlineMock; @Mock ResourceCreationContainer resourceCreationContainerMock; @Mock ImportTokenPayload importTokenMock; + @Mock IdentityProfileRequirementsPayload identityProfileRequirementsPayloadMock; + @Mock IdentityProfileSubjectPayload identityProfileSubjectPayloadMock; @Test public void shouldBuildWithMinimalConfiguration() { @@ -215,51 +207,21 @@ public void withSessionDeadline_shouldSetTheSessionDeadline() { } @Test - public void shouldBuildWithIdentityProfileRequirements() throws IOException { - Map scheme = new HashMap<>(); - scheme.put(IdentityProperty.TYPE, "A_TYPE"); - scheme.put(IdentityProperty.OBJECTIVE, "AN_OBJECTIVE"); - - Map identityProfile = new HashMap<>(); - identityProfile.put(IdentityProperty.TRUST_FRAMEWORK, "A_FRAMEWORK"); - identityProfile.put(IdentityProperty.SCHEME, scheme); - - JsonNode json = toSessionSpecJson(identityProfile); - - assertThat( - json.get(IdentityProperty.TRUST_FRAMEWORK).asText(), - is(equalTo(identityProfile.get(IdentityProperty.TRUST_FRAMEWORK))) - ); - - JsonNode schemeJsonNode = json.get(IdentityProperty.SCHEME); - assertThat(schemeJsonNode.get(IdentityProperty.TYPE).asText(), is(equalTo(scheme.get(IdentityProperty.TYPE)))); - assertThat(schemeJsonNode.get(IdentityProperty.OBJECTIVE).asText(), is(equalTo(scheme.get(IdentityProperty.OBJECTIVE)))); - } - - private static JsonNode toSessionSpecJson(Map obj) throws IOException { - SessionSpec session = SessionSpec.builder() - .withIdentityProfile(obj) + public void withIdentityProfile_shouldSetTheIdentityProfile() { + SessionSpec result = SessionSpec.builder() + .withIdentityProfile(identityProfileRequirementsPayloadMock) .build(); - return MAPPER.readTree(MAPPER.writeValueAsString(session.getIdentityProfile()).getBytes(DEFAULT_CHARSET)); + assertThat(result.getIdentityProfile(), is(identityProfileRequirementsPayloadMock)); } @Test - public void shouldBuildWithSubject() throws IOException { - Map subject = new HashMap<>(); - subject.put(SubjectProperty.SUBJECT_ID, "A_SUBJECT_ID"); - - SessionSpec session = SessionSpec.builder() - .withSubject(subject) + public void withSubject_shouldSetTheSubject() { + SessionSpec result = SessionSpec.builder() + .withSubject(identityProfileSubjectPayloadMock) .build(); - ObjectMapper mapper = new ObjectMapper(); - - JsonNode json = mapper.readTree( - mapper.writeValueAsString(session.getSubject()).getBytes(DEFAULT_CHARSET) - ); - - assertThat(json.get("subject_id").asText(), is(Matchers.equalTo(subject.get(SubjectProperty.SUBJECT_ID)))); + assertThat(result.getSubject(), is(identityProfileSubjectPayloadMock)); } @Test @@ -289,23 +251,4 @@ public void shouldBuildWithImportToken() { assertThat(sessionSpec.getImportToken(), is(importTokenMock)); } - private static final class IdentityProperty { - - private static final String TYPE = "type"; - private static final String SCHEME = "scheme"; - private static final String OBJECTIVE = "objective"; - private static final String TRUST_FRAMEWORK = "trust_framework"; - - private IdentityProperty() { } - - } - - private static final class SubjectProperty { - - private static final String SUBJECT_ID = "subject_id"; - - private SubjectProperty() {} - - } - } diff --git a/yoti-sdk-parent/pom.xml b/yoti-sdk-parent/pom.xml index 6964c01e..34ba1320 100644 --- a/yoti-sdk-parent/pom.xml +++ b/yoti-sdk-parent/pom.xml @@ -5,7 +5,7 @@ com.yoti yoti-sdk-parent pom - 3.10.0-SNAPSHOT + 4.0.0-SNAPSHOT Yoti SDK Parent Pom Parent pom for the Java SDK projects https://github.com/getyoti/yoti-java-sdk diff --git a/yoti-sdk-sandbox/pom.xml b/yoti-sdk-sandbox/pom.xml index 46d90c9e..078d0229 100644 --- a/yoti-sdk-sandbox/pom.xml +++ b/yoti-sdk-sandbox/pom.xml @@ -11,7 +11,7 @@ com.yoti yoti-sdk-parent - 3.10.0-SNAPSHOT + 4.0.0-SNAPSHOT ../yoti-sdk-parent diff --git a/yoti-sdk-spring-boot-auto-config/README.md b/yoti-sdk-spring-boot-auto-config/README.md index e5a9ea6f..2d7f8864 100644 --- a/yoti-sdk-spring-boot-auto-config/README.md +++ b/yoti-sdk-spring-boot-auto-config/README.md @@ -18,7 +18,7 @@ If you are using Maven, you need to add the following dependencies: com.yoti yoti-sdk-spring-boot-auto-config - 3.10.0-SNAPSHOT + 4.0.0-SNAPSHOT ``` @@ -26,7 +26,7 @@ If you are using Maven, you need to add the following dependencies: If you are using Gradle, here is the dependency to add: ``` -compile group: 'com.yoti', name: 'yoti-sdk-spring-boot-auto-config', version: '3.10.0-SNAPSHOT' +compile group: 'com.yoti', name: 'yoti-sdk-spring-boot-auto-config', version: '4.0.0-SNAPSHOT' ``` diff --git a/yoti-sdk-spring-boot-auto-config/pom.xml b/yoti-sdk-spring-boot-auto-config/pom.xml index 29e22ff8..afa28fb8 100644 --- a/yoti-sdk-spring-boot-auto-config/pom.xml +++ b/yoti-sdk-spring-boot-auto-config/pom.xml @@ -12,7 +12,7 @@ com.yoti yoti-sdk-parent - 3.10.0-SNAPSHOT + 4.0.0-SNAPSHOT ../yoti-sdk-parent diff --git a/yoti-sdk-spring-boot-example/README.md b/yoti-sdk-spring-boot-example/README.md index fe99f823..75ec851c 100644 --- a/yoti-sdk-spring-boot-example/README.md +++ b/yoti-sdk-spring-boot-example/README.md @@ -17,7 +17,7 @@ Note that: com.yoti yoti-sdk-api - 3.10.0-SNAPSHOT + 4.0.0-SNAPSHOT ``` diff --git a/yoti-sdk-spring-boot-example/pom.xml b/yoti-sdk-spring-boot-example/pom.xml index d55427eb..1364197b 100644 --- a/yoti-sdk-spring-boot-example/pom.xml +++ b/yoti-sdk-spring-boot-example/pom.xml @@ -6,7 +6,7 @@ com.yoti yoti-sdk-spring-boot-example Yoti Spring Boot Example - 3.10.0-SNAPSHOT + 4.0.0-SNAPSHOT org.springframework.boot diff --git a/yoti-sdk-spring-security/README.md b/yoti-sdk-spring-security/README.md index 41267adb..f6fe0ca0 100644 --- a/yoti-sdk-spring-security/README.md +++ b/yoti-sdk-spring-security/README.md @@ -25,14 +25,14 @@ If you are using Maven, you need to add the following dependencies: com.yoti yoti-sdk-spring-security - 3.10.0-SNAPSHOT + 4.0.0-SNAPSHOT ``` If you are using Gradle, here is the dependency to add: ``` -compile group: 'com.yoti', name: 'yoti-sdk-spring-security', version: '3.10.0-SNAPSHOT' +compile group: 'com.yoti', name: 'yoti-sdk-spring-security', version: '4.0.0-SNAPSHOT' ``` ### Provide a `YotiClient` instance diff --git a/yoti-sdk-spring-security/pom.xml b/yoti-sdk-spring-security/pom.xml index 3dd5979e..a902565b 100644 --- a/yoti-sdk-spring-security/pom.xml +++ b/yoti-sdk-spring-security/pom.xml @@ -12,7 +12,7 @@ com.yoti yoti-sdk-parent - 3.10.0-SNAPSHOT + 4.0.0-SNAPSHOT ../yoti-sdk-parent