From 7cc1e3bc5e218495ba187fe71b66696c96a49401 Mon Sep 17 00:00:00 2001 From: Matteo Giordano Date: Tue, 4 Aug 2020 11:31:42 +0200 Subject: [PATCH] Validate budget/order request --- .../apiclient/dto/model/dto/ProductDTO.java | 18 +++++++++++++++++- .../apiclient/api/BudgetEstimateApi.java | 3 +++ 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/cloudesire-api-client-dto/src/main/java/com/cloudesire/platform/apiclient/dto/model/dto/ProductDTO.java b/cloudesire-api-client-dto/src/main/java/com/cloudesire/platform/apiclient/dto/model/dto/ProductDTO.java index 1b346b2f6..4c742fe20 100644 --- a/cloudesire-api-client-dto/src/main/java/com/cloudesire/platform/apiclient/dto/model/dto/ProductDTO.java +++ b/cloudesire-api-client-dto/src/main/java/com/cloudesire/platform/apiclient/dto/model/dto/ProductDTO.java @@ -3,13 +3,14 @@ import com.cloudesire.platform.apiclient.dto.ApiVersion; import com.cloudesire.platform.apiclient.dto.annotations.FieldAPI; import com.cloudesire.platform.apiclient.dto.annotations.UnsupportedAPI; -import com.cloudesire.platform.apiclient.dto.model.enums.SubscriptionsPerProduct; import com.cloudesire.platform.apiclient.dto.model.enums.CspProductType; import com.cloudesire.platform.apiclient.dto.model.enums.ProductDestination; import com.cloudesire.platform.apiclient.dto.model.enums.ProductType; +import com.cloudesire.platform.apiclient.dto.model.enums.SubscriptionsPerProduct; import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonProperty; import io.swagger.annotations.ApiModelProperty; +import org.hibernate.validator.constraints.URL; import javax.validation.Valid; import javax.validation.constraints.Size; @@ -207,6 +208,11 @@ public class ProductDTO extends NamedEntityDTO implements ProductL10nDTO, Compar @ApiModelProperty( "Require approvation for customer subscriptions" ) private Boolean subscriptionApproval; + @ApiModelProperty( "URL to call for order validation" ) + @Size( max = 2000 ) + @URL + private String orderValidationUrl; + public ProductDTO( String name, String identifier, ProductType type, UrlEntityDTO company ) { this( name, identifier, type ); @@ -770,6 +776,16 @@ public void setSubscriptionApproval( Boolean subscriptionApproval ) this.subscriptionApproval = subscriptionApproval; } + public String getOrderValidationUrl() + { + return orderValidationUrl; + } + + public void setOrderValidationUrl( String orderValidationUrl ) + { + this.orderValidationUrl = orderValidationUrl; + } + @Override public boolean equals( Object o ) { diff --git a/cloudesire-api-client/src/main/java/com/cloudesire/platform/apiclient/api/BudgetEstimateApi.java b/cloudesire-api-client/src/main/java/com/cloudesire/platform/apiclient/api/BudgetEstimateApi.java index fd7e72de9..613407b68 100644 --- a/cloudesire-api-client/src/main/java/com/cloudesire/platform/apiclient/api/BudgetEstimateApi.java +++ b/cloudesire-api-client/src/main/java/com/cloudesire/platform/apiclient/api/BudgetEstimateApi.java @@ -16,4 +16,7 @@ public interface BudgetEstimateApi @POST( "budgetEstimate" ) Call request( @Body BudgetInputDTO input, @Header( MODE ) String environment ); + + @POST( "budgetEstimate/validate" ) + Call validate( @Body BudgetInputDTO input ); }