aboutsummaryrefslogtreecommitdiffstats
path: root/athenz-identity-provider-service
diff options
context:
space:
mode:
authorBjørn Christian Seime <bjorncs@verizonmedia.com>2021-03-25 17:01:14 +0100
committerBjørn Christian Seime <bjorncs@verizonmedia.com>2021-03-26 13:49:39 +0100
commitc58704ff3dd6b204c4df28499e418bb8e77f72d2 (patch)
tree2bfab01b11d442b1aa37611c365f2c00fed7cced /athenz-identity-provider-service
parenta9c2fe028dbec15644923a9de800320c15b90579 (diff)
Optional inject request entity to handler for POST,PUT,PATCH
Diffstat (limited to 'athenz-identity-provider-service')
-rw-r--r--athenz-identity-provider-service/src/main/java/com/yahoo/vespa/hosted/athenz/instanceproviderservice/IdentityProviderRequestHandler.java13
-rw-r--r--athenz-identity-provider-service/src/main/java/com/yahoo/vespa/hosted/athenz/instanceproviderservice/InstanceConfirmation.java3
2 files changed, 8 insertions, 8 deletions
diff --git a/athenz-identity-provider-service/src/main/java/com/yahoo/vespa/hosted/athenz/instanceproviderservice/IdentityProviderRequestHandler.java b/athenz-identity-provider-service/src/main/java/com/yahoo/vespa/hosted/athenz/instanceproviderservice/IdentityProviderRequestHandler.java
index 8593401b887..fe6fa0baf2d 100644
--- a/athenz-identity-provider-service/src/main/java/com/yahoo/vespa/hosted/athenz/instanceproviderservice/IdentityProviderRequestHandler.java
+++ b/athenz-identity-provider-service/src/main/java/com/yahoo/vespa/hosted/athenz/instanceproviderservice/IdentityProviderRequestHandler.java
@@ -42,9 +42,12 @@ public class IdentityProviderRequestHandler extends RestApiRequestHandler<Identi
.addRoute(RestApi.route("/athenz/v1/provider/identity-document/tenant/{host}")
.get(self::getTenantIdentityDocument))
.addRoute(RestApi.route("/athenz/v1/provider/instance")
- .post(self::confirmInstance))
+ .post(InstanceConfirmation.class, self::confirmInstance))
.addRoute(RestApi.route("/athenz/v1/provider/refresh")
- .post(self::confirmInstanceRefresh))
+ .post(InstanceConfirmation.class, self::confirmInstanceRefresh))
+ .registerJacksonRequestEntity(InstanceConfirmation.class)
+ .registerJacksonResponseEntity(InstanceConfirmation.class)
+ .registerJacksonResponseEntity(SignedIdentityDocumentEntity.class)
// Overriding object mapper to change serialization of timestamps
.setObjectMapper(new ObjectMapper()
.registerModule(new JavaTimeModule())
@@ -63,8 +66,7 @@ public class IdentityProviderRequestHandler extends RestApiRequestHandler<Identi
return getIdentityDocument(host, IdentityType.TENANT);
}
- private InstanceConfirmation confirmInstance(RestApi.RequestContext context) {
- InstanceConfirmation instanceConfirmation = context.requestContentOrThrow().consumeJacksonEntity(InstanceConfirmation.class);
+ private InstanceConfirmation confirmInstance(RestApi.RequestContext context, InstanceConfirmation instanceConfirmation) {
log.log(Level.FINE, instanceConfirmation.toString());
if (!instanceValidator.isValidInstance(instanceConfirmation)) {
log.log(Level.SEVERE, "Invalid instance: " + instanceConfirmation);
@@ -73,8 +75,7 @@ public class IdentityProviderRequestHandler extends RestApiRequestHandler<Identi
return instanceConfirmation;
}
- private InstanceConfirmation confirmInstanceRefresh(RestApi.RequestContext context) {
- InstanceConfirmation instanceConfirmation = context.requestContentOrThrow().consumeJacksonEntity(InstanceConfirmation.class);
+ private InstanceConfirmation confirmInstanceRefresh(RestApi.RequestContext context, InstanceConfirmation instanceConfirmation) {
log.log(Level.FINE, instanceConfirmation.toString());
if (!instanceValidator.isValidRefresh(instanceConfirmation)) {
log.log(Level.SEVERE, "Invalid instance refresh: " + instanceConfirmation);
diff --git a/athenz-identity-provider-service/src/main/java/com/yahoo/vespa/hosted/athenz/instanceproviderservice/InstanceConfirmation.java b/athenz-identity-provider-service/src/main/java/com/yahoo/vespa/hosted/athenz/instanceproviderservice/InstanceConfirmation.java
index 27507c425cd..5641eb51668 100644
--- a/athenz-identity-provider-service/src/main/java/com/yahoo/vespa/hosted/athenz/instanceproviderservice/InstanceConfirmation.java
+++ b/athenz-identity-provider-service/src/main/java/com/yahoo/vespa/hosted/athenz/instanceproviderservice/InstanceConfirmation.java
@@ -13,7 +13,6 @@ import com.fasterxml.jackson.databind.JsonSerializer;
import com.fasterxml.jackson.databind.SerializerProvider;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
-import com.yahoo.restapi.RestApi;
import com.yahoo.vespa.athenz.identityprovider.api.bindings.SignedIdentityDocumentEntity;
import java.io.IOException;
@@ -26,7 +25,7 @@ import java.util.Objects;
*
* @author bjorncs
*/
-public class InstanceConfirmation implements RestApi.JacksonRequestEntity, RestApi.JacksonResponseEntity {
+public class InstanceConfirmation {
@JsonProperty("provider") public final String provider;
@JsonProperty("domain") public final String domain;