Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
package com.cloudesire.platform.apiclient.dto.model.dto;

abstract class BaseExternalOrderValidationDTO implements DTO
{
private Integer productId;

private String productIdentifier;

private Integer productVersionId;

private String productVersionIdentifier;

private String language;

public Integer getProductId()
{
return productId;
}

public void setProductId( Integer productId )
{
this.productId = productId;
}

public String getProductIdentifier()
{
return productIdentifier;
}

public void setProductIdentifier( String productIdentifier )
{
this.productIdentifier = productIdentifier;
}

public Integer getProductVersionId()
{
return productVersionId;
}

public void setProductVersionId( Integer productVersionId )
{
this.productVersionId = productVersionId;
}

public String getProductVersionIdentifier()
{
return productVersionIdentifier;
}

public void setProductVersionIdentifier( String productVersionIdentifier )
{
this.productVersionIdentifier = productVersionIdentifier;
}

public String getLanguage()
{
return language;
}

public void setLanguage( String language )
{
this.language = language;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
import com.liberologico.cloudesire.common.validators.RegExp;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import org.hibernate.validator.constraints.URL;

import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.Pattern;
Expand Down Expand Up @@ -33,6 +34,10 @@ public class ConfigurationParameterDTO extends NamedEntityDTO
@ApiModelProperty( "Possible labeled values for the parameter" )
private Map<String, String> acceptedValues;

@ApiModelProperty( "External endpoint to obtain possible values for the parameter" )
@URL
private String externalValuesUrl;

@ApiModelProperty( "Short description to help user compiling the correct value" )
private String hint;

Expand All @@ -57,7 +62,7 @@ public ConfigurationParameterDTO( String name, Map<String, String> acceptedValue
this.acceptedValues = acceptedValues;
}

private ConfigurationParameterDTO( String name, String description )
public ConfigurationParameterDTO( String name, String description )
{
super( name );
this.description = description;
Expand Down Expand Up @@ -111,6 +116,17 @@ public ConfigurationParameterDTO setAcceptedValues( Map<String, String> accepted
return this;
}

public String getExternalValuesUrl()
{
return externalValuesUrl;
}

public ConfigurationParameterDTO setExternalValuesUrl( String externalValuesUrl )
{
this.externalValuesUrl = externalValuesUrl;
return this;
}

public String getHint()
{
return hint;
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
package com.cloudesire.platform.apiclient.dto.model.dto;

import java.util.Objects;

public class ConfigurationParameterValueDTO implements DTO
{
private String value;

private String description;

public ConfigurationParameterValueDTO( String value, String description )
{
this.value = value;
this.description = description;
}

public ConfigurationParameterValueDTO()
{
}

public String getValue()
{
return value;
}

public void setValue( String value )
{
this.value = value;
}

public String getDescription()
{
return description;
}

public void setDescription( String description )
{
this.description = description;
}

@Override
public boolean equals( Object o )
{
if ( this == o ) return true;
if ( o == null || getClass() != o.getClass() ) return false;
ConfigurationParameterValueDTO that = (ConfigurationParameterValueDTO) o;
return Objects.equals( value, that.value ) && Objects.equals( description, that.description );
}

@Override
public int hashCode()
{
return Objects.hash( value, description );
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
package com.cloudesire.platform.apiclient.dto.model.dto;

public class ExternalConfigurationParameterValuesRequestDTO extends BaseExternalOrderValidationDTO
{
private String configurationParameter;

public String getConfigurationParameter()
{
return configurationParameter;
}

public void setConfigurationParameter( String configurationParameter )
{
this.configurationParameter = configurationParameter;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -4,16 +4,8 @@

import java.util.Map;

public class ExternalOrderValidationDTO implements DTO
public class ExternalOrderValidationDTO extends BaseExternalOrderValidationDTO
{
private Integer productId;

private String productIdentifier;

private Integer productVersionId;

private String productVersionIdentifier;

private Map<String, Integer> billingItems;

private Map<String, String> configurationParameters;
Expand All @@ -24,48 +16,6 @@ public class ExternalOrderValidationDTO implements DTO

private OrderType orderType;

private String language;

public Integer getProductId()
{
return productId;
}

public void setProductId( Integer productId )
{
this.productId = productId;
}

public String getProductIdentifier()
{
return productIdentifier;
}

public void setProductIdentifier( String productIdentifier )
{
this.productIdentifier = productIdentifier;
}

public Integer getProductVersionId()
{
return productVersionId;
}

public void setProductVersionId( Integer productVersionId )
{
this.productVersionId = productVersionId;
}

public String getProductVersionIdentifier()
{
return productVersionIdentifier;
}

public void setProductVersionIdentifier( String productVersionIdentifier )
{
this.productVersionIdentifier = productVersionIdentifier;
}

public Map<String, Integer> getBillingItems()
{
return billingItems;
Expand Down Expand Up @@ -115,14 +65,4 @@ public void setOrderType( OrderType orderType )
{
this.orderType = orderType;
}

public String getLanguage()
{
return language;
}

public void setLanguage( String language )
{
this.language = language;
}
}
Original file line number Diff line number Diff line change
@@ -1,12 +1,20 @@
package com.cloudesire.platform.apiclient.api;

import com.cloudesire.platform.apiclient.dto.model.dto.ConfigurationParameterDTO;
import com.cloudesire.platform.apiclient.dto.model.dto.ConfigurationParameterValueDTO;
import retrofit2.Call;
import retrofit2.http.GET;
import retrofit2.http.POST;
import retrofit2.http.Path;
import retrofit2.http.Query;

import java.util.List;

public interface ConfigurationParameterApi
{
@GET( "configurationParameter/{id}" )
Call<ConfigurationParameterDTO> get( @Path( "id" ) int id );

@POST( "configurationParameter/{id}/values" )
Call<List<ConfigurationParameterValueDTO>> getValues( @Path( "id" ) int id, @Query( "productVersionId" ) int productVersionId );
}