added more mapping
This commit is contained in:
parent
baf047df00
commit
91186cef68
@ -5,6 +5,7 @@ import java.util.Arrays;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.UUID;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import com.fasterxml.jackson.core.type.TypeReference;
|
||||
@ -12,6 +13,7 @@ import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
|
||||
import cz.trask.migration.model.ApiDefinition32;
|
||||
import cz.trask.migration.model.ApiDefinition45;
|
||||
import cz.trask.migration.model.ApiDefinition45.ApiPolicies;
|
||||
|
||||
public class ApiDefinitionMapper {
|
||||
|
||||
@ -45,7 +47,8 @@ public class ApiDefinitionMapper {
|
||||
data.setVisibility(oldApi.getVisibility().toUpperCase());
|
||||
data.setVisibleRoles(Collections.emptyList());
|
||||
data.setVisibleTenants(Collections.emptyList());
|
||||
data.setAccessControl(oldApi.getAccessControl());
|
||||
data.setAccessControl("NONE");
|
||||
data.setAccessControlRoles(Collections.emptyList());
|
||||
data.setOrganizationPolicies(Collections.emptyList());
|
||||
data.setType(oldApi.getType());
|
||||
data.setAudiences(Arrays.asList("all"));
|
||||
@ -84,7 +87,7 @@ public class ApiDefinitionMapper {
|
||||
data.setEndpointImplementationType(oldApi.getImplementation());
|
||||
|
||||
// ---------- API policies ----------
|
||||
// data.setApiPolicies(mapApiPolicies(oldApi.getAvailableTiers()));
|
||||
data.setApiPolicies(mapApiPolicies(oldApi));
|
||||
|
||||
// ---------- key managers ----------
|
||||
data.setKeyManagers(oldApi.getKeyManagers());
|
||||
@ -96,16 +99,20 @@ public class ApiDefinitionMapper {
|
||||
ai.setVendor("WSO2");
|
||||
data.setAdvertiseInfo(ai);
|
||||
|
||||
data.setVisibleOrganizations(Arrays.asList("none"));
|
||||
|
||||
// ---------- gateway ----------
|
||||
data.setGatewayVendor("wso2");
|
||||
data.setGatewayType("wso2/synapse");
|
||||
|
||||
// ---------- business & monetization ----------
|
||||
data.setBusinessInformation(oldApi.getMonetizationProperties());
|
||||
data.setAdditionalProperties(Collections.emptyList());
|
||||
data.setAdditionalPropertiesMap(oldApi.getAdditionalProperties());
|
||||
|
||||
// ---------- subscription ----------
|
||||
data.setSubscriptionAvailability(oldApi.getSubscriptionAvailability());
|
||||
data.setSubscriptionAvailability(oldApi.getSubscriptionAvailability().toUpperCase());
|
||||
data.setSubscriptionAvailableTenants(Collections.emptyList());
|
||||
|
||||
// ---------- operations ----------
|
||||
data.setOperations(mapOperations(oldApi));
|
||||
@ -121,6 +128,45 @@ public class ApiDefinitionMapper {
|
||||
return newApi;
|
||||
}
|
||||
|
||||
private static ApiPolicies mapApiPolicies(ApiDefinition32 oldApi) {
|
||||
ApiDefinition45.ApiPolicies apiPolicies = new ApiDefinition45.ApiPolicies();
|
||||
// ---------- request policies ----------
|
||||
if (oldApi.getInSequence()!=null && !oldApi.getInSequence().isEmpty()) {
|
||||
ApiDefinition45.Policy requestPolicy = new ApiDefinition45.Policy();
|
||||
requestPolicy.setPolicyName(oldApi.getInSequence());
|
||||
requestPolicy.setPolicyType("common");
|
||||
requestPolicy.setPolicyVersion("v1");
|
||||
requestPolicy.setPolicyId(UUID.randomUUID().toString());
|
||||
requestPolicy.setParameters(Collections.emptyMap());
|
||||
apiPolicies.setRequest(List.of(requestPolicy));
|
||||
} else
|
||||
apiPolicies.setRequest(Collections.emptyList());
|
||||
// ---------- response policies ----------
|
||||
if (oldApi.getOutSequence()!=null && !oldApi.getOutSequence().isEmpty()) {
|
||||
ApiDefinition45.Policy requestPolicy = new ApiDefinition45.Policy();
|
||||
requestPolicy.setPolicyName(oldApi.getOutSequence());
|
||||
requestPolicy.setPolicyType("common");
|
||||
requestPolicy.setPolicyVersion("v1");
|
||||
requestPolicy.setPolicyId(UUID.randomUUID().toString());
|
||||
requestPolicy.setParameters(Collections.emptyMap());
|
||||
apiPolicies.setResponse(List.of(requestPolicy));
|
||||
} else
|
||||
apiPolicies.setResponse(Collections.emptyList());
|
||||
// ---------- fault policies ----------
|
||||
if (oldApi.getFaultSequence()!=null && !oldApi.getFaultSequence().isEmpty()) {
|
||||
ApiDefinition45.Policy requestPolicy = new ApiDefinition45.Policy();
|
||||
requestPolicy.setPolicyName(oldApi.getFaultSequence());
|
||||
requestPolicy.setPolicyType("common");
|
||||
requestPolicy.setPolicyVersion("v1");
|
||||
requestPolicy.setPolicyId(UUID.randomUUID().toString());
|
||||
requestPolicy.setParameters(Collections.emptyMap());
|
||||
apiPolicies.setFault(List.of(requestPolicy));
|
||||
} else
|
||||
apiPolicies.setFault(Collections.emptyList());
|
||||
|
||||
return apiPolicies;
|
||||
}
|
||||
|
||||
private static ApiDefinition45.CorsConfiguration mapCors(ApiDefinition32.CorsConfiguration oldCors) {
|
||||
if (oldCors == null)
|
||||
return null;
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user