diff --git a/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/api/deser/ApiDeserializer.java b/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/api/deser/ApiDeserializer.java index e1f9398d64f..3fe37bf2f7f 100644 --- a/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/api/deser/ApiDeserializer.java +++ b/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/api/deser/ApiDeserializer.java @@ -20,6 +20,7 @@ import com.fasterxml.jackson.core.JsonParser; import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.databind.DeserializationContext; +import com.fasterxml.jackson.databind.JsonMappingException; import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.deser.std.StdScalarDeserializer; import io.gravitee.definition.model.*; @@ -57,14 +58,14 @@ public T deserialize(JsonParser jp, DeserializationContext ctxt) throws IOExcept public T deserialize(JsonParser jp, DeserializationContext ctxt, T api, JsonNode node) throws IOException { JsonNode idNode = node.get("id"); if (idNode == null) { - throw ctxt.mappingException("ID property is required"); + throw JsonMappingException.from(ctxt, "ID property is required"); } else { api.setId(idNode.asText()); } JsonNode nameNode = node.get("name"); if (nameNode == null) { - throw ctxt.mappingException("Name property is required"); + throw JsonMappingException.from(ctxt, "Name property is required"); } else { api.setName(nameNode.asText()); } @@ -82,7 +83,7 @@ public T deserialize(JsonParser jp, DeserializationContext ctxt, T api, JsonNode api.setProxy(proxyNode.traverse(jp.getCodec()).readValueAs(Proxy.class)); } else { logger.error("A proxy property is required for {}", api.getName()); - throw ctxt.mappingException("A proxy property is required for " + api.getName()); + throw JsonMappingException.from(ctxt, "A proxy property is required for " + api.getName()); } JsonNode servicesNode = node.get("services"); @@ -114,7 +115,7 @@ public T deserialize(JsonParser jp, DeserializationContext ctxt, T api, JsonNode if (!api.getResources().contains(resource)) { api.getResources().add(resource); } else { - throw ctxt.mappingException("A resource already exists with name " + resource.getName()); + throw JsonMappingException.from(ctxt, "A resource already exists with name " + resource.getName()); } } catch (IOException e) { logger.error("An error occurred during api deserialization", e); @@ -130,7 +131,7 @@ public T deserialize(JsonParser jp, DeserializationContext ctxt, T api, JsonNode if (api.getDefinitionVersion() == DefinitionVersion.V1) { if (node.get("flows") != null) { - throw ctxt.mappingException("Flows are only available for definition >= 2.x.x "); + throw JsonMappingException.from(ctxt, "Flows are only available for definition >= 2.x.x "); } JsonNode pathsNode = node.get("paths"); @@ -153,7 +154,7 @@ public T deserialize(JsonParser jp, DeserializationContext ctxt, T api, JsonNode if (api.getDefinitionVersion() == DefinitionVersion.V2) { if (node.get("paths") != null) { - throw ctxt.mappingException("Paths are only available for definition 1.x.x "); + throw JsonMappingException.from(ctxt, "Paths are only available for definition 1.x.x "); } JsonNode flowsNode = node.get("flows"); diff --git a/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/api/deser/ConsumerDeserializer.java b/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/api/deser/ConsumerDeserializer.java index f729e4684c5..c0a8104da6c 100644 --- a/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/api/deser/ConsumerDeserializer.java +++ b/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/api/deser/ConsumerDeserializer.java @@ -15,24 +15,14 @@ */ package io.gravitee.definition.jackson.datatype.api.deser; -import static java.util.Comparator.reverseOrder; - import com.fasterxml.jackson.core.JsonParser; -import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.databind.DeserializationContext; +import com.fasterxml.jackson.databind.JsonMappingException; import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.deser.std.StdScalarDeserializer; -import io.gravitee.definition.model.*; -import io.gravitee.definition.model.Properties; import io.gravitee.definition.model.flow.Consumer; import io.gravitee.definition.model.flow.ConsumerType; -import io.gravitee.definition.model.flow.Flow; -import io.gravitee.definition.model.plugins.resources.Resource; -import io.gravitee.definition.model.services.Services; -import io.gravitee.definition.model.services.discovery.EndpointDiscoveryService; import java.io.IOException; -import java.util.*; -import java.util.regex.Pattern; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -58,7 +48,7 @@ public Consumer deserialize(JsonParser jp, DeserializationContext ctxt) throws I JsonNode consumerIdNode = node.get("consumerId"); if (consumerIdNode == null) { - throw ctxt.mappingException("Consumer ID property is required"); + throw JsonMappingException.from(ctxt, "Consumer ID property is required"); } else { consumer.setConsumerId(consumerIdNode.asText()); } diff --git a/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/api/deser/DebugApiDeserializer.java b/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/api/deser/DebugApiDeserializer.java index 6ff51b56661..50c648893c2 100644 --- a/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/api/deser/DebugApiDeserializer.java +++ b/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/api/deser/DebugApiDeserializer.java @@ -19,6 +19,7 @@ import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.databind.DeserializationContext; +import com.fasterxml.jackson.databind.JsonMappingException; import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.deser.std.StdScalarDeserializer; import io.gravitee.definition.model.Api; @@ -45,7 +46,7 @@ public DebugApiDeserializer(Class vc) { } @Override - public DebugApi deserialize(JsonParser jp, DeserializationContext ctxt) throws IOException, JsonProcessingException { + public DebugApi deserialize(JsonParser jp, DeserializationContext ctxt) throws IOException { JsonNode node = jp.getCodec().readTree(jp); DebugApi debugApi = (DebugApi) this.base.deserialize(jp, ctxt, new DebugApi(), node); JsonNode requestNode = node.get("request"); @@ -53,7 +54,7 @@ public DebugApi deserialize(JsonParser jp, DeserializationContext ctxt) throws I debugApi.setRequest(requestNode.traverse(jp.getCodec()).readValueAs(HttpRequest.class)); } else { logger.error("A request property is required for {}", debugApi.getName()); - throw ctxt.mappingException("A request property is required for " + debugApi.getName()); + throw JsonMappingException.from(ctxt, "A request property is required for " + debugApi.getName()); } JsonNode responseNode = node.get("response"); diff --git a/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/api/deser/EndpointDeserializer.java b/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/api/deser/EndpointDeserializer.java index 5a98c51d31f..67367773809 100644 --- a/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/api/deser/EndpointDeserializer.java +++ b/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/api/deser/EndpointDeserializer.java @@ -18,17 +18,20 @@ import com.fasterxml.jackson.core.JsonParser; import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.databind.DeserializationContext; +import com.fasterxml.jackson.databind.JsonMappingException; import com.fasterxml.jackson.databind.JsonNode; -import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.deser.std.StdScalarDeserializer; import com.fasterxml.jackson.databind.jsontype.TypeDeserializer; import com.fasterxml.jackson.databind.node.ArrayNode; import com.fasterxml.jackson.databind.node.ObjectNode; import io.gravitee.definition.jackson.datatype.GraviteeMapper; import io.gravitee.definition.model.Endpoint; -import io.gravitee.definition.model.ssl.pem.PEMTrustStore; import java.io.IOException; -import java.util.*; +import java.util.ArrayList; +import java.util.Collections; +import java.util.HashMap; +import java.util.List; +import java.util.Map; /** * @author David BRASSELY (david.brassely at graviteesource.com) @@ -53,14 +56,14 @@ public Endpoint deserialize(JsonParser parser, DeserializationContext ctxt) thro if (nameNode != null) { name = nameNode.asText(); } else { - throw ctxt.mappingException("Endpoint name is required"); + throw JsonMappingException.from(ctxt, "Endpoint name is required"); } JsonNode targetNode = node.get("target"); if (targetNode != null) { target = targetNode.asText(); } else { - throw ctxt.mappingException("Endpoint target is required"); + throw JsonMappingException.from(ctxt, "Endpoint target is required"); } JsonNode typeNode = node.get("type"); diff --git a/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/api/deser/EndpointGroupDeserializer.java b/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/api/deser/EndpointGroupDeserializer.java index 4f89a414925..0f25530e6b1 100644 --- a/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/api/deser/EndpointGroupDeserializer.java +++ b/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/api/deser/EndpointGroupDeserializer.java @@ -16,17 +16,29 @@ package io.gravitee.definition.jackson.datatype.api.deser; import com.fasterxml.jackson.core.JsonParser; -import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.databind.DeserializationContext; +import com.fasterxml.jackson.databind.JsonMappingException; import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.deser.std.StdScalarDeserializer; import io.gravitee.common.http.HttpHeader; import io.gravitee.common.http.HttpHeaders; -import io.gravitee.definition.model.*; +import io.gravitee.definition.model.Endpoint; +import io.gravitee.definition.model.EndpointGroup; +import io.gravitee.definition.model.HttpClientOptions; +import io.gravitee.definition.model.HttpClientSslOptions; +import io.gravitee.definition.model.HttpProxy; +import io.gravitee.definition.model.LoadBalancer; import io.gravitee.definition.model.services.Services; import java.io.IOException; -import java.util.*; +import java.util.ArrayList; +import java.util.Collections; +import java.util.HashMap; +import java.util.LinkedHashSet; +import java.util.List; +import java.util.Map; +import java.util.Optional; +import java.util.Set; import java.util.stream.Collectors; /** @@ -42,7 +54,7 @@ public EndpointGroupDeserializer(Class vc) { } @Override - public EndpointGroup deserialize(JsonParser jp, DeserializationContext ctxt) throws IOException, JsonProcessingException { + public EndpointGroup deserialize(JsonParser jp, DeserializationContext ctxt) throws IOException { JsonNode node = jp.getCodec().readTree(jp); final EndpointGroup group = new EndpointGroup(); @@ -61,7 +73,7 @@ public EndpointGroup deserialize(JsonParser jp, DeserializationContext ctxt) thr if (endpoint != null) { boolean added = endpoints.add(endpoint); if (!added) { - throw ctxt.mappingException("[api] API endpoint names must be unique"); + throw JsonMappingException.from(ctxt, "[api] API endpoint names must be unique"); } } } diff --git a/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/api/deser/PropertyDeserializer.java b/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/api/deser/PropertyDeserializer.java index ec72c7bb758..98e499401df 100644 --- a/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/api/deser/PropertyDeserializer.java +++ b/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/api/deser/PropertyDeserializer.java @@ -17,6 +17,7 @@ import com.fasterxml.jackson.core.JsonParser; import com.fasterxml.jackson.databind.DeserializationContext; +import com.fasterxml.jackson.databind.JsonMappingException; import com.fasterxml.jackson.databind.JsonNode; import io.gravitee.definition.model.Property; import java.io.IOException; @@ -40,14 +41,14 @@ public Property deserialize(JsonParser jp, DeserializationContext ctxt) throws I JsonNode keyNode = node.get("key"); if (keyNode == null) { - throw ctxt.mappingException("Key property is required"); + throw JsonMappingException.from(ctxt, "Key property is required"); } else { key = keyNode.asText(); } JsonNode valueNode = node.get("value"); if (valueNode == null) { - throw ctxt.mappingException("Value property is required"); + throw JsonMappingException.from(ctxt, "Value property is required"); } else { value = valueNode.asText(); } diff --git a/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/plugins/resource/deser/ResourceDeserializer.java b/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/plugins/resource/deser/ResourceDeserializer.java index ece6f0265e9..7b1eeb3cd8d 100644 --- a/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/plugins/resource/deser/ResourceDeserializer.java +++ b/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/plugins/resource/deser/ResourceDeserializer.java @@ -17,6 +17,7 @@ import com.fasterxml.jackson.core.JsonParser; import com.fasterxml.jackson.databind.DeserializationContext; +import com.fasterxml.jackson.databind.JsonMappingException; import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.deser.std.StdScalarDeserializer; import io.gravitee.definition.model.plugins.resources.Resource; @@ -42,21 +43,21 @@ public Resource deserialize(JsonParser jp, DeserializationContext ctxt) throws I if (nameNode != null) { resource.setName(nameNode.asText()); } else { - throw ctxt.mappingException("[resource] Name is required"); + throw JsonMappingException.from(ctxt, "[resource] Name is required"); } final JsonNode typeNode = node.get("type"); if (typeNode != null) { resource.setType(typeNode.asText()); } else { - throw ctxt.mappingException("[resource] Type is required"); + throw JsonMappingException.from(ctxt, "[resource] Type is required"); } final JsonNode configurationNode = node.get("configuration"); if (configurationNode != null) { resource.setConfiguration(configurationNode.toString()); } else { - throw ctxt.mappingException("[resource] Configuration is required"); + throw JsonMappingException.from(ctxt, "[resource] Configuration is required"); } final JsonNode enabledNode = node.get("enabled"); diff --git a/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/services/core/deser/ScheduledServiceDeserializer.java b/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/services/core/deser/ScheduledServiceDeserializer.java index d884324f052..a79b270cc4a 100644 --- a/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/services/core/deser/ScheduledServiceDeserializer.java +++ b/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/services/core/deser/ScheduledServiceDeserializer.java @@ -18,6 +18,7 @@ import com.fasterxml.jackson.core.JsonParser; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.DeserializationContext; +import com.fasterxml.jackson.databind.JsonMappingException; import com.fasterxml.jackson.databind.JsonNode; import io.gravitee.definition.model.services.schedule.ScheduledService; import java.io.IOException; @@ -36,8 +37,7 @@ public ScheduledServiceDeserializer(Class vc) { } @Override - protected void deserialize(T service, JsonParser jsonParser, JsonNode node, DeserializationContext ctxt) - throws IOException, JsonProcessingException { + protected void deserialize(T service, JsonParser jsonParser, JsonNode node, DeserializationContext ctxt) throws IOException { super.deserialize(service, jsonParser, node, ctxt); final JsonNode scheduleNode = node.get("schedule"); @@ -54,14 +54,14 @@ protected void deserialize(T service, JsonParser jsonParser, JsonNode node, Dese if (rateNode != null) { rate = rateNode.asLong(); } else { - throw ctxt.mappingException("[scheduled-service] Rate is required"); + throw JsonMappingException.from(ctxt, "[scheduled-service] Rate is required"); } final JsonNode unitNode = triggerNode.get("unit"); if (unitNode != null) { unit = TimeUnit.valueOf(unitNode.asText().toUpperCase()); } else { - throw ctxt.mappingException("[scheduled-service] Unit is required"); + throw JsonMappingException.from(ctxt, "[scheduled-service] Unit is required"); } } else if (node.has("interval")) { // Ensure backward compatibility @@ -74,7 +74,7 @@ protected void deserialize(T service, JsonParser jsonParser, JsonNode node, Dese if (unitNode != null) { unit = TimeUnit.valueOf(unitNode.asText().toUpperCase()); } else { - throw ctxt.mappingException("[scheduled-service] Unit is required"); + throw JsonMappingException.from(ctxt, "[scheduled-service] Unit is required"); } } } diff --git a/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/services/core/deser/ServiceDeserializer.java b/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/services/core/deser/ServiceDeserializer.java index aa80a2f4156..ad9a898f124 100644 --- a/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/services/core/deser/ServiceDeserializer.java +++ b/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/services/core/deser/ServiceDeserializer.java @@ -18,6 +18,7 @@ import com.fasterxml.jackson.core.JsonParser; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.DeserializationContext; +import com.fasterxml.jackson.databind.JsonMappingException; import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.deser.std.StdScalarDeserializer; import io.gravitee.definition.model.Service; @@ -44,7 +45,7 @@ public T deserialize(JsonParser jsonParser, DeserializationContext deserializati return service; } catch (Exception ex) { - throw deserializationContext.mappingException(ex.getMessage()); + throw JsonMappingException.from(deserializationContext, ex.getMessage()); } } diff --git a/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/services/core/deser/ServicesDeserializer.java b/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/services/core/deser/ServicesDeserializer.java index adcb720e8b8..28541399a04 100644 --- a/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/services/core/deser/ServicesDeserializer.java +++ b/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/services/core/deser/ServicesDeserializer.java @@ -18,6 +18,7 @@ import com.fasterxml.jackson.core.JsonParser; import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.databind.DeserializationContext; +import com.fasterxml.jackson.databind.JsonMappingException; import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.deser.std.StdScalarDeserializer; import io.gravitee.definition.model.Service; @@ -27,7 +28,11 @@ import io.gravitee.definition.model.services.healthcheck.HealthCheckService; import java.io.IOException; import java.lang.reflect.Type; -import java.util.*; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Iterator; +import java.util.List; +import java.util.Map; /** * @author David BRASSELY (david.brassely at graviteesource.com) @@ -78,7 +83,7 @@ public Type getType() { } } } catch (IOException ioe) { - throw ctxt.mappingException(ioe.getMessage()); + throw JsonMappingException.from(ctxt, ioe.getMessage()); } } diff --git a/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/services/discovery/deser/EndpointDiscoveryDeserializer.java b/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/services/discovery/deser/EndpointDiscoveryDeserializer.java index f9d19472271..e2011f1e897 100644 --- a/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/services/discovery/deser/EndpointDiscoveryDeserializer.java +++ b/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/services/discovery/deser/EndpointDiscoveryDeserializer.java @@ -17,6 +17,7 @@ import com.fasterxml.jackson.core.JsonParser; import com.fasterxml.jackson.databind.DeserializationContext; +import com.fasterxml.jackson.databind.JsonMappingException; import com.fasterxml.jackson.databind.JsonNode; import io.gravitee.definition.jackson.datatype.services.core.deser.ServiceDeserializer; import io.gravitee.definition.jackson.datatype.services.discovery.EndpointDiscoveryProviderMapper; @@ -45,7 +46,7 @@ protected void deserialize(EndpointDiscoveryService service, JsonParser jsonPars String providerPlugin = EndpointDiscoveryProviderMapper.getProvider(provider); service.setProvider(providerPlugin); } else { - throw ctxt.mappingException("[endpoint-discovery] Provider is required"); + throw JsonMappingException.from(ctxt, "[endpoint-discovery] Provider is required"); } service.setConfiguration(node.get("configuration").toString()); diff --git a/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/services/dynamicproperty/deser/DynamicPropertyDeserializer.java b/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/services/dynamicproperty/deser/DynamicPropertyDeserializer.java index 5509db3ebf0..93d44c1cef4 100644 --- a/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/services/dynamicproperty/deser/DynamicPropertyDeserializer.java +++ b/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/services/dynamicproperty/deser/DynamicPropertyDeserializer.java @@ -16,8 +16,8 @@ package io.gravitee.definition.jackson.datatype.services.dynamicproperty.deser; import com.fasterxml.jackson.core.JsonParser; -import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.DeserializationContext; +import com.fasterxml.jackson.databind.JsonMappingException; import com.fasterxml.jackson.databind.JsonNode; import io.gravitee.definition.jackson.datatype.services.core.deser.ScheduledServiceDeserializer; import io.gravitee.definition.model.services.dynamicproperty.DynamicPropertyProvider; @@ -37,14 +37,14 @@ public DynamicPropertyDeserializer(Class vc) { @Override protected void deserialize(DynamicPropertyService service, JsonParser jsonParser, JsonNode node, DeserializationContext ctxt) - throws IOException, JsonProcessingException { + throws IOException { super.deserialize(service, jsonParser, node, ctxt); final JsonNode providerNode = node.get("provider"); if (providerNode != null) { service.setProvider(DynamicPropertyProvider.valueOf(providerNode.asText().toUpperCase())); } else { - throw ctxt.mappingException("[dynamic-property] Provider is required"); + throw JsonMappingException.from(ctxt, "[dynamic-property] Provider is required"); } final JsonNode configurationNode = node.get("configuration"); diff --git a/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/services/dynamicproperty/deser/http/HttpDynamicPropertyProviderConfigurationDeserializer.java b/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/services/dynamicproperty/deser/http/HttpDynamicPropertyProviderConfigurationDeserializer.java index a9966283c7f..fc815df7500 100644 --- a/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/services/dynamicproperty/deser/http/HttpDynamicPropertyProviderConfigurationDeserializer.java +++ b/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/services/dynamicproperty/deser/http/HttpDynamicPropertyProviderConfigurationDeserializer.java @@ -17,6 +17,7 @@ import com.fasterxml.jackson.core.JsonParser; import com.fasterxml.jackson.databind.DeserializationContext; +import com.fasterxml.jackson.databind.JsonMappingException; import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.deser.std.StdScalarDeserializer; import io.gravitee.common.http.HttpHeader; @@ -46,14 +47,14 @@ public HttpDynamicPropertyProviderConfiguration deserialize(JsonParser jp, Deser if (urlNode != null) { configuration.setUrl(urlNode.asText()); } else { - throw ctxt.mappingException("[dynamic-property] [HTTP] URL is required"); + throw JsonMappingException.from(ctxt, "[dynamic-property] [HTTP] URL is required"); } final JsonNode specificationNode = node.get("specification"); if (specificationNode != null) { configuration.setSpecification(specificationNode.asText()); } else { - throw ctxt.mappingException("[dynamic-property] [HTTP] Specification is required"); + throw JsonMappingException.from(ctxt, "[dynamic-property] [HTTP] Specification is required"); } final JsonNode useSystemProxy = node.get("useSystemProxy"); diff --git a/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/services/healthcheck/deser/HealthCheckDeserializer.java b/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/services/healthcheck/deser/HealthCheckDeserializer.java index 096a162515b..59286157554 100644 --- a/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/services/healthcheck/deser/HealthCheckDeserializer.java +++ b/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/services/healthcheck/deser/HealthCheckDeserializer.java @@ -16,8 +16,8 @@ package io.gravitee.definition.jackson.datatype.services.healthcheck.deser; import com.fasterxml.jackson.core.JsonParser; -import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.DeserializationContext; +import com.fasterxml.jackson.databind.JsonMappingException; import com.fasterxml.jackson.databind.JsonNode; import io.gravitee.definition.jackson.datatype.services.core.deser.ScheduledServiceDeserializer; import io.gravitee.definition.model.services.healthcheck.HealthCheckRequest; @@ -40,8 +40,7 @@ public HealthCheckDeserializer(Class vc) { } @Override - protected void deserialize(T service, JsonParser jsonParser, JsonNode node, DeserializationContext ctxt) - throws IOException, JsonProcessingException { + protected void deserialize(T service, JsonParser jsonParser, JsonNode node, DeserializationContext ctxt) throws IOException { super.deserialize(service, jsonParser, node, ctxt); if (service.isEnabled()) { @@ -64,7 +63,7 @@ protected void deserialize(T service, JsonParser jsonParser, JsonNode node, Dese if (requestNode != null) { step.setRequest(requestNode.traverse(jsonParser.getCodec()).readValueAs(HealthCheckRequest.class)); } else { - throw ctxt.mappingException("[health-check] Request is required"); + throw JsonMappingException.from(ctxt, "[health-check] Request is required"); } final JsonNode expectationNode = node.get("expectation"); diff --git a/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/services/healthcheck/deser/RequestDeserializer.java b/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/services/healthcheck/deser/RequestDeserializer.java index e572052a86a..1a696c8a6d2 100644 --- a/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/services/healthcheck/deser/RequestDeserializer.java +++ b/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/services/healthcheck/deser/RequestDeserializer.java @@ -17,6 +17,7 @@ import com.fasterxml.jackson.core.JsonParser; import com.fasterxml.jackson.databind.DeserializationContext; +import com.fasterxml.jackson.databind.JsonMappingException; import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.deser.std.StdScalarDeserializer; import io.gravitee.common.http.HttpHeader; @@ -51,7 +52,7 @@ public HealthCheckRequest deserialize(JsonParser jp, DeserializationContext ctxt if (uriNode != null) { request.setPath(uriNode.asText()); } else { - throw ctxt.mappingException("[healthcheck] URI is required"); + throw JsonMappingException.from(ctxt, "[healthcheck] URI is required"); } } @@ -59,7 +60,7 @@ public HealthCheckRequest deserialize(JsonParser jp, DeserializationContext ctxt if (methodNode != null) { request.setMethod(HttpMethod.valueOf(methodNode.asText().toUpperCase())); } else { - throw ctxt.mappingException("[healthcheck] Method is required"); + throw JsonMappingException.from(ctxt, "[healthcheck] Method is required"); } JsonNode bodyNode = node.get("body"); diff --git a/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/services/healthcheck/deser/StepDeserializer.java b/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/services/healthcheck/deser/StepDeserializer.java index 17b966f2102..617cdf1eb69 100644 --- a/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/services/healthcheck/deser/StepDeserializer.java +++ b/gravitee-apim-definition/gravitee-apim-definition-jackson/src/main/java/io/gravitee/definition/jackson/datatype/services/healthcheck/deser/StepDeserializer.java @@ -17,6 +17,7 @@ import com.fasterxml.jackson.core.JsonParser; import com.fasterxml.jackson.databind.DeserializationContext; +import com.fasterxml.jackson.databind.JsonMappingException; import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.deser.std.StdScalarDeserializer; import io.gravitee.definition.model.services.healthcheck.HealthCheckRequest; @@ -45,7 +46,7 @@ public HealthCheckStep deserialize(JsonParser jsonParser, DeserializationContext if (requestNode != null) { step.setRequest(requestNode.traverse(jsonParser.getCodec()).readValueAs(HealthCheckRequest.class)); } else { - throw ctxt.mappingException("[health-check] Step request is required"); + throw JsonMappingException.from(ctxt, "[health-check] Step request is required"); } final JsonNode responseNode = node.get("response"); diff --git a/gravitee-apim-repository/gravitee-apim-repository-mongodb/pom.xml b/gravitee-apim-repository/gravitee-apim-repository-mongodb/pom.xml index 3102ae8dced..206739a5873 100644 --- a/gravitee-apim-repository/gravitee-apim-repository-mongodb/pom.xml +++ b/gravitee-apim-repository/gravitee-apim-repository-mongodb/pom.xml @@ -58,11 +58,6 @@ - - com.fasterxml.jackson.core - jackson-databind - provided - org.apache.commons diff --git a/gravitee-apim-repository/gravitee-apim-repository-mongodb/src/main/java/io/gravitee/repository/mongodb/management/upgrade/upgrader/index/accesspoints/HostIndexUpgrader.java b/gravitee-apim-repository/gravitee-apim-repository-mongodb/src/main/java/io/gravitee/repository/mongodb/management/upgrade/upgrader/index/accesspoints/HostIndexUpgrader.java new file mode 100644 index 00000000000..5b7067a3607 --- /dev/null +++ b/gravitee-apim-repository/gravitee-apim-repository-mongodb/src/main/java/io/gravitee/repository/mongodb/management/upgrade/upgrader/index/accesspoints/HostIndexUpgrader.java @@ -0,0 +1,37 @@ +/* + * Copyright © 2015 The Gravitee team (http://gravitee.io) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.gravitee.repository.mongodb.management.upgrade.upgrader.index.accesspoints; + +import io.gravitee.repository.mongodb.management.upgrade.upgrader.index.Index; +import io.gravitee.repository.mongodb.management.upgrade.upgrader.index.IndexUpgrader; +import org.springframework.stereotype.Component; + +/** + * @author GraviteeSource Team + */ +@Component("AccessPointsHostIndexUpgrader") +public class HostIndexUpgrader extends IndexUpgrader { + + @Override + protected Index buildIndex() { + return Index + .builder() + .collection("access_points") + .name("h1") + .key("host", ascending()) + .build(); + } +} diff --git a/gravitee-apim-repository/gravitee-apim-repository-mongodb/src/main/java/io/gravitee/repository/mongodb/management/upgrade/upgrader/index/accesspoints/ReferenceIdReferenceTypeIndexUpgrader.java b/gravitee-apim-repository/gravitee-apim-repository-mongodb/src/main/java/io/gravitee/repository/mongodb/management/upgrade/upgrader/index/accesspoints/ReferenceIdReferenceTypeIndexUpgrader.java new file mode 100644 index 00000000000..cb0d52d72bf --- /dev/null +++ b/gravitee-apim-repository/gravitee-apim-repository-mongodb/src/main/java/io/gravitee/repository/mongodb/management/upgrade/upgrader/index/accesspoints/ReferenceIdReferenceTypeIndexUpgrader.java @@ -0,0 +1,38 @@ +/* + * Copyright © 2015 The Gravitee team (http://gravitee.io) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.gravitee.repository.mongodb.management.upgrade.upgrader.index.accesspoints; + +import io.gravitee.repository.mongodb.management.upgrade.upgrader.index.Index; +import io.gravitee.repository.mongodb.management.upgrade.upgrader.index.IndexUpgrader; +import org.springframework.stereotype.Component; + +/** + * @author GraviteeSource Team + */ +@Component("AccessPointsReferenceIdReferenceTypeIndexUpgrader") +public class ReferenceIdReferenceTypeIndexUpgrader extends IndexUpgrader { + + @Override + protected Index buildIndex() { + return Index + .builder() + .collection("access_points") + .name("rt_ri1") + .key("referenceType", ascending()) + .key("referenceId", ascending()) + .build(); + } +} diff --git a/gravitee-apim-repository/gravitee-apim-repository-mongodb/src/main/java/io/gravitee/repository/mongodb/management/upgrade/upgrader/index/accesspoints/ReferenceIdReferenceTypeTargetIndexUpgrader.java b/gravitee-apim-repository/gravitee-apim-repository-mongodb/src/main/java/io/gravitee/repository/mongodb/management/upgrade/upgrader/index/accesspoints/ReferenceIdReferenceTypeTargetIndexUpgrader.java new file mode 100644 index 00000000000..c7889b374c2 --- /dev/null +++ b/gravitee-apim-repository/gravitee-apim-repository-mongodb/src/main/java/io/gravitee/repository/mongodb/management/upgrade/upgrader/index/accesspoints/ReferenceIdReferenceTypeTargetIndexUpgrader.java @@ -0,0 +1,39 @@ +/* + * Copyright © 2015 The Gravitee team (http://gravitee.io) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.gravitee.repository.mongodb.management.upgrade.upgrader.index.accesspoints; + +import io.gravitee.repository.mongodb.management.upgrade.upgrader.index.Index; +import io.gravitee.repository.mongodb.management.upgrade.upgrader.index.IndexUpgrader; +import org.springframework.stereotype.Component; + +/** + * @author GraviteeSource Team + */ +@Component("AccessPointsReferenceIdReferenceTypeTargetIndexUpgrader") +public class ReferenceIdReferenceTypeTargetIndexUpgrader extends IndexUpgrader { + + @Override + protected Index buildIndex() { + return Index + .builder() + .collection("access_points") + .name("ri_rt_t1") + .key("referenceId", ascending()) + .key("referenceType", ascending()) + .key("target", ascending()) + .build(); + } +} diff --git a/gravitee-apim-repository/gravitee-apim-repository-mongodb/src/main/java/io/gravitee/repository/mongodb/management/upgrade/upgrader/index/accesspoints/TargetIndexUpgrader.java b/gravitee-apim-repository/gravitee-apim-repository-mongodb/src/main/java/io/gravitee/repository/mongodb/management/upgrade/upgrader/index/accesspoints/TargetIndexUpgrader.java new file mode 100644 index 00000000000..01258fda5c8 --- /dev/null +++ b/gravitee-apim-repository/gravitee-apim-repository-mongodb/src/main/java/io/gravitee/repository/mongodb/management/upgrade/upgrader/index/accesspoints/TargetIndexUpgrader.java @@ -0,0 +1,37 @@ +/* + * Copyright © 2015 The Gravitee team (http://gravitee.io) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.gravitee.repository.mongodb.management.upgrade.upgrader.index.accesspoints; + +import io.gravitee.repository.mongodb.management.upgrade.upgrader.index.Index; +import io.gravitee.repository.mongodb.management.upgrade.upgrader.index.IndexUpgrader; +import org.springframework.stereotype.Component; + +/** + * @author GraviteeSource Team + */ +@Component("AccessPointsTargetIndexUpgrader") +public class TargetIndexUpgrader extends IndexUpgrader { + + @Override + protected Index buildIndex() { + return Index + .builder() + .collection("access_points") + .name("t1") + .key("target", ascending()) + .build(); + } +} diff --git a/gravitee-apim-repository/gravitee-apim-repository-mongodb/src/main/java/io/gravitee/repository/mongodb/management/upgrade/upgrader/index/licenses/IdReferenceIdReferenceTypeIndexUpgrader.java b/gravitee-apim-repository/gravitee-apim-repository-mongodb/src/main/java/io/gravitee/repository/mongodb/management/upgrade/upgrader/index/licenses/IdReferenceIdReferenceTypeIndexUpgrader.java new file mode 100644 index 00000000000..01ecdd53683 --- /dev/null +++ b/gravitee-apim-repository/gravitee-apim-repository-mongodb/src/main/java/io/gravitee/repository/mongodb/management/upgrade/upgrader/index/licenses/IdReferenceIdReferenceTypeIndexUpgrader.java @@ -0,0 +1,38 @@ +/* + * Copyright © 2015 The Gravitee team (http://gravitee.io) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.gravitee.repository.mongodb.management.upgrade.upgrader.index.licenses; + +import io.gravitee.repository.mongodb.management.upgrade.upgrader.index.Index; +import io.gravitee.repository.mongodb.management.upgrade.upgrader.index.IndexUpgrader; +import org.springframework.stereotype.Component; + +/** + * @author GraviteeSource Team + */ +@Component("LicensesIdReferenceIdReferenceTypeIndexUpgrader") +public class IdReferenceIdReferenceTypeIndexUpgrader extends IndexUpgrader { + + @Override + protected Index buildIndex() { + return Index + .builder() + .collection("licenses") + .name("id_rt_ri1") + .key("_id.referenceType", ascending()) + .key("_id.referenceId", ascending()) + .build(); + } +} diff --git a/gravitee-apim-repository/gravitee-apim-repository-mongodb/src/main/java/io/gravitee/repository/mongodb/management/upgrade/upgrader/index/licenses/ReferenceIdReferenceTypeIndexUpgrader.java b/gravitee-apim-repository/gravitee-apim-repository-mongodb/src/main/java/io/gravitee/repository/mongodb/management/upgrade/upgrader/index/licenses/ReferenceIdReferenceTypeIndexUpgrader.java new file mode 100644 index 00000000000..5d33c38c772 --- /dev/null +++ b/gravitee-apim-repository/gravitee-apim-repository-mongodb/src/main/java/io/gravitee/repository/mongodb/management/upgrade/upgrader/index/licenses/ReferenceIdReferenceTypeIndexUpgrader.java @@ -0,0 +1,38 @@ +/* + * Copyright © 2015 The Gravitee team (http://gravitee.io) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.gravitee.repository.mongodb.management.upgrade.upgrader.index.licenses; + +import io.gravitee.repository.mongodb.management.upgrade.upgrader.index.Index; +import io.gravitee.repository.mongodb.management.upgrade.upgrader.index.IndexUpgrader; +import org.springframework.stereotype.Component; + +/** + * @author GraviteeSource Team + */ +@Component("LicensesReferenceIdReferenceTypeIndexUpgrader") +public class ReferenceIdReferenceTypeIndexUpgrader extends IndexUpgrader { + + @Override + protected Index buildIndex() { + return Index + .builder() + .collection("licenses") + .name("rt_ri1") + .key("referenceType", ascending()) + .key("referenceId", ascending()) + .build(); + } +} diff --git a/gravitee-apim-repository/gravitee-apim-repository-mongodb/src/main/java/io/gravitee/repository/mongodb/management/upgrade/upgrader/index/licenses/UpdatedAtIndexUpgrader.java b/gravitee-apim-repository/gravitee-apim-repository-mongodb/src/main/java/io/gravitee/repository/mongodb/management/upgrade/upgrader/index/licenses/UpdatedAtIndexUpgrader.java new file mode 100644 index 00000000000..ae4dd48758c --- /dev/null +++ b/gravitee-apim-repository/gravitee-apim-repository-mongodb/src/main/java/io/gravitee/repository/mongodb/management/upgrade/upgrader/index/licenses/UpdatedAtIndexUpgrader.java @@ -0,0 +1,37 @@ +/* + * Copyright © 2015 The Gravitee team (http://gravitee.io) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.gravitee.repository.mongodb.management.upgrade.upgrader.index.licenses; + +import io.gravitee.repository.mongodb.management.upgrade.upgrader.index.Index; +import io.gravitee.repository.mongodb.management.upgrade.upgrader.index.IndexUpgrader; +import org.springframework.stereotype.Component; + +/** + * @author GraviteeSource Team + */ +@Component("LicensesUpdatedAtIndexUpgrader") +public class UpdatedAtIndexUpgrader extends IndexUpgrader { + + @Override + protected Index buildIndex() { + return Index + .builder() + .collection("licenses") + .name("f_t1") + .key("updatedAt", ascending()) + .build(); + } +} diff --git a/gravitee-apim-repository/gravitee-apim-repository-mongodb/src/main/java/io/gravitee/repository/mongodb/management/upgrade/upgrader/index/organizations/CockpitIdIndexUpgrader.java b/gravitee-apim-repository/gravitee-apim-repository-mongodb/src/main/java/io/gravitee/repository/mongodb/management/upgrade/upgrader/index/organizations/CockpitIdIndexUpgrader.java new file mode 100644 index 00000000000..7cf29a200ac --- /dev/null +++ b/gravitee-apim-repository/gravitee-apim-repository-mongodb/src/main/java/io/gravitee/repository/mongodb/management/upgrade/upgrader/index/organizations/CockpitIdIndexUpgrader.java @@ -0,0 +1,37 @@ +/* + * Copyright © 2015 The Gravitee team (http://gravitee.io) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.gravitee.repository.mongodb.management.upgrade.upgrader.index.organizations; + +import io.gravitee.repository.mongodb.management.upgrade.upgrader.index.Index; +import io.gravitee.repository.mongodb.management.upgrade.upgrader.index.IndexUpgrader; +import org.springframework.stereotype.Component; + +/** + * @author GraviteeSource Team + */ +@Component("OrganizationsCockpitIdIndexUpgrader") +public class CockpitIdIndexUpgrader extends IndexUpgrader { + + @Override + protected Index buildIndex() { + return Index + .builder() + .collection("organizations") + .name("cid1") + .key("cockpitId", ascending()) + .build(); + } +} diff --git a/gravitee-apim-repository/gravitee-apim-repository-mongodb/src/main/java/io/gravitee/repository/mongodb/management/upgrade/upgrader/index/pages/ParentIdIndexUpgrader.java b/gravitee-apim-repository/gravitee-apim-repository-mongodb/src/main/java/io/gravitee/repository/mongodb/management/upgrade/upgrader/index/pages/ParentIdIndexUpgrader.java new file mode 100644 index 00000000000..cd3c14e8f78 --- /dev/null +++ b/gravitee-apim-repository/gravitee-apim-repository-mongodb/src/main/java/io/gravitee/repository/mongodb/management/upgrade/upgrader/index/pages/ParentIdIndexUpgrader.java @@ -0,0 +1,37 @@ +/* + * Copyright © 2015 The Gravitee team (http://gravitee.io) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.gravitee.repository.mongodb.management.upgrade.upgrader.index.pages; + +import io.gravitee.repository.mongodb.management.upgrade.upgrader.index.Index; +import io.gravitee.repository.mongodb.management.upgrade.upgrader.index.IndexUpgrader; +import org.springframework.stereotype.Component; + +/** + * @author GraviteeSource Team + */ +@Component("PagesParentIdIndexUpgrader") +public class ParentIdIndexUpgrader extends IndexUpgrader { + + @Override + protected Index buildIndex() { + return Index + .builder() + .collection("pages") + .name("pid1") + .key("parentId", ascending()) + .build(); + } +} diff --git a/gravitee-apim-repository/gravitee-apim-repository-mongodb/src/main/java/io/gravitee/repository/mongodb/management/upgrade/upgrader/index/qualityrules/ReferenceIdReferenceTypeIndexUpgrader.java b/gravitee-apim-repository/gravitee-apim-repository-mongodb/src/main/java/io/gravitee/repository/mongodb/management/upgrade/upgrader/index/qualityrules/ReferenceIdReferenceTypeIndexUpgrader.java new file mode 100644 index 00000000000..ce09f75f24d --- /dev/null +++ b/gravitee-apim-repository/gravitee-apim-repository-mongodb/src/main/java/io/gravitee/repository/mongodb/management/upgrade/upgrader/index/qualityrules/ReferenceIdReferenceTypeIndexUpgrader.java @@ -0,0 +1,38 @@ +/* + * Copyright © 2015 The Gravitee team (http://gravitee.io) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package io.gravitee.repository.mongodb.management.upgrade.upgrader.index.qualityrules; + +import io.gravitee.repository.mongodb.management.upgrade.upgrader.index.Index; +import io.gravitee.repository.mongodb.management.upgrade.upgrader.index.IndexUpgrader; +import org.springframework.stereotype.Component; + +/** + * @author GraviteeSource Team + */ +@Component("QualityRulesReferenceIdReferenceTypeIndexUpgrader") +public class ReferenceIdReferenceTypeIndexUpgrader extends IndexUpgrader { + + @Override + protected Index buildIndex() { + return Index + .builder() + .collection("qualityrules") + .name("ri1rt1") + .key("referenceId", ascending()) + .key("referenceType", ascending()) + .build(); + } +} diff --git a/pom.xml b/pom.xml index d46529742b8..5ac2f2fc156 100644 --- a/pom.xml +++ b/pom.xml @@ -53,11 +53,11 @@ - 4.5.1 + 4.5.3 3.24.0 1.50.2 - 7.0.4 + 7.0.10 1.9.1 2.6.2 3.4.0 @@ -114,7 +114,7 @@ 2.1.2 4.0.0 1.3.2 - 4.2.2 + 4.2.3 4.0.2 @@ -145,7 +145,7 @@ 2.1.20 1.7.14 - 1.18.3 + 1.19.6 3.1.0 3.0.4 1.6.3