You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@unomi.apache.org by sh...@apache.org on 2019/10/10 13:51:19 UTC
[unomi] 11/26: UNOMI-180 Implement CXS GraphQL API - Modify the
type generation to use "Input" suffix for input types instead of a prefix.
This is an automated email from the ASF dual-hosted git repository.
shuber pushed a commit to branch UNOMI-180-CXS-GRAPHQLAPI
in repository https://gitbox.apache.org/repos/asf/unomi.git
commit 5cbe7ad432ace06d162099aff24df49766640126
Author: Serge Huber <sh...@apache.org>
AuthorDate: Sun Nov 18 23:50:09 2018 +0100
UNOMI-180 Implement CXS GraphQL API
- Modify the type generation to use "Input" suffix for input types instead of a prefix.
Signed-off-by: Serge Huber <sh...@apache.org>
---
graphql/cxs-impl/pom.xml | 6 +++
.../apache/unomi/graphql/CXSGraphQLProvider.java | 4 +-
.../java/org/apache/unomi/graphql/CXSMutation.java | 22 ++++++-----
.../apache/unomi/graphql/CXSProviderManager.java | 4 ++
.../java/org/apache/unomi/graphql/CXSQuery.java | 45 +++++++++++++++++++++-
.../unomi/graphql/builders/CXSEventBuilders.java | 9 ++++-
.../graphql/internal/CXSGraphQLProviderImpl.java | 18 +++++++--
.../graphql/internal/CXSProviderManagerImpl.java | 23 +++++++++++
.../propertytypes/CXSFloatPropertyType.java | 18 ++++-----
.../input/CXSDateFilter.java} | 6 +--
.../input/CXSEventFilter.java} | 10 ++---
.../graphql/{ => types/input}/CXSEventInput.java | 4 +-
.../input}/CXSEventOccurrenceFilterInput.java | 4 +-
.../{ => types/input}/CXSEventTypeInput.java | 4 +-
.../{ => types/input}/CXSGeoDistanceInput.java | 8 ++--
.../{ => types/input}/CXSGeoPointInput.java | 8 ++--
.../graphql/{ => types/input}/CXSOrderByInput.java | 5 ++-
.../{ => types/input}/CXSPropertyTypeInput.java | 4 +-
.../input/CXSSegmentFilterInput.java} | 26 ++++++++++---
.../{ => types/input}/CXSSetPropertyTypeInput.java | 7 ++--
.../unomi/graphql/{ => types/output}/CXSEvent.java | 2 +-
.../{ => types/output}/CXSEventConnection.java | 2 +-
.../graphql/{ => types/output}/CXSEventEdge.java | 2 +-
.../graphql/{ => types/output}/CXSEventFilter.java | 2 +-
.../output}/CXSEventOccurrenceFilter.java | 2 +-
.../{ => types/output}/CXSEventProperties.java | 2 +-
.../output}/CXSEventPropertiesFilter.java | 2 +-
.../graphql/{ => types/output}/CXSEventType.java | 2 +-
.../{ => types/output}/CXSGeoDistanceUnit.java | 2 +-
.../graphql/{ => types/output}/CXSGeoPoint.java | 6 +--
.../graphql/{ => types/output}/CXSSegment.java | 2 +-
.../{ => types/output}/CXSSegmentCondition.java | 3 +-
.../output/CXSSegmentConnection.java} | 9 ++---
.../output/CXSSegmentEdge.java} | 9 +++--
.../graphql/{ => types/output}/CXSSortOrder.java | 2 +-
.../unomi/graphql/{ => types/output}/CXSView.java | 2 +-
.../unomi/graphql/{ => types/output}/PageInfo.java | 2 +-
graphql/karaf-feature/pom.xml | 19 +++++++--
graphql/pom.xml | 6 +--
39 files changed, 220 insertions(+), 93 deletions(-)
diff --git a/graphql/cxs-impl/pom.xml b/graphql/cxs-impl/pom.xml
index 3e29f66..22a1edd 100644
--- a/graphql/cxs-impl/pom.xml
+++ b/graphql/cxs-impl/pom.xml
@@ -73,6 +73,12 @@
<version>1.7.21</version>
<scope>provided</scope>
</dependency>
+ <dependency>
+ <groupId>org.apache.unomi</groupId>
+ <artifactId>unomi-api</artifactId>
+ <version>1.3.0-incubating-SNAPSHOT</version>
+ <scope>provided</scope>
+ </dependency>
</dependencies>
</project>
\ No newline at end of file
diff --git a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSGraphQLProvider.java b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSGraphQLProvider.java
index 1636402..f5a62a3 100644
--- a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSGraphQLProvider.java
+++ b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSGraphQLProvider.java
@@ -16,11 +16,13 @@
*/
package org.apache.unomi.graphql;
+import org.apache.unomi.graphql.types.output.CXSEventType;
+
import java.util.Map;
public interface CXSGraphQLProvider {
- Map<String,CXSEventType> getEventTypes();
+ Map<String, CXSEventType> getEventTypes();
CXSProviderManager getCxsProviderManager();
void updateGraphQLTypes();
void setCxsProviderManager(CXSProviderManager cxsProviderManager);
diff --git a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSMutation.java b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSMutation.java
index 9732de4..f7cb1e1 100644
--- a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSMutation.java
+++ b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSMutation.java
@@ -20,9 +20,13 @@ import graphql.annotations.annotationTypes.GraphQLField;
import graphql.annotations.annotationTypes.GraphQLName;
import graphql.schema.DataFetchingEnvironment;
import org.apache.unomi.graphql.propertytypes.CXSIdentifierPropertyType;
-import org.apache.unomi.graphql.propertytypes.CXSPropertyType;
import org.apache.unomi.graphql.propertytypes.CXSSetPropertyType;
import org.apache.unomi.graphql.propertytypes.CXSStringPropertyType;
+import org.apache.unomi.graphql.types.input.CXSEventInput;
+import org.apache.unomi.graphql.types.input.CXSEventTypeInput;
+import org.apache.unomi.graphql.types.input.CXSPropertyTypeInput;
+import org.apache.unomi.graphql.types.input.CXSSetPropertyTypeInput;
+import org.apache.unomi.graphql.types.output.CXSEventType;
import java.util.ArrayList;
import java.util.List;
@@ -41,7 +45,7 @@ public class CXSMutation {
CXSEventType cxsEventType = new CXSEventType(cxsEventTypeInput.getId(), cxsEventTypeInput.getScope(), cxsEventTypeInput.getTypeName(), new ArrayList<>());
for (CXSPropertyTypeInput propertyTypeInput : cxsEventTypeInput.getProperties()) {
- CXSPropertyType propertyType = getPropertyType(propertyTypeInput);
+ org.apache.unomi.graphql.propertytypes.CXSPropertyType propertyType = getPropertyType(propertyTypeInput);
cxsEventType.getProperties().add(propertyType);
}
cxsGraphQLProvider.getEventTypes().put(cxsEventType.getTypeName(), cxsEventType);
@@ -58,8 +62,8 @@ public class CXSMutation {
return 0;
}
- private CXSPropertyType getPropertyType(CXSPropertyTypeInput cxsPropertyTypeInput) {
- CXSPropertyType propertyType = null;
+ private org.apache.unomi.graphql.propertytypes.CXSPropertyType getPropertyType(CXSPropertyTypeInput cxsPropertyTypeInput) {
+ org.apache.unomi.graphql.propertytypes.CXSPropertyType propertyType = null;
if (cxsPropertyTypeInput.identifierPropertyTypeInput != null) {
propertyType = getIdentifierPropertyType(cxsPropertyTypeInput.identifierPropertyTypeInput);
} else if (cxsPropertyTypeInput.stringPropertyTypeInput != null) {
@@ -70,12 +74,12 @@ public class CXSMutation {
return propertyType;
}
- private CXSPropertyType getSetPropertyType(CXSSetPropertyTypeInput cxsSetPropertyTypeInput) {
- List<CXSPropertyType> setProperties = null;
+ private org.apache.unomi.graphql.propertytypes.CXSPropertyType getSetPropertyType(CXSSetPropertyTypeInput cxsSetPropertyTypeInput) {
+ List<org.apache.unomi.graphql.propertytypes.CXSPropertyType> setProperties = null;
if (cxsSetPropertyTypeInput.getProperties() != null) {
setProperties = new ArrayList<>();
for (CXSPropertyTypeInput setProperty : cxsSetPropertyTypeInput.getProperties()) {
- CXSPropertyType subPropertyType = getPropertyType(setProperty);
+ org.apache.unomi.graphql.propertytypes.CXSPropertyType subPropertyType = getPropertyType(setProperty);
if (subPropertyType != null) {
setProperties.add(subPropertyType);
}
@@ -92,7 +96,7 @@ public class CXSMutation {
setProperties);
}
- private CXSPropertyType getStringPropertyType(CXSStringPropertyType stringPropertyType) {
+ private org.apache.unomi.graphql.propertytypes.CXSPropertyType getStringPropertyType(CXSStringPropertyType stringPropertyType) {
return new CXSStringPropertyType(
stringPropertyType.getId(),
stringPropertyType.getName(),
@@ -106,7 +110,7 @@ public class CXSMutation {
);
}
- private CXSPropertyType getIdentifierPropertyType(CXSIdentifierPropertyType identifierPropertyType) {
+ private org.apache.unomi.graphql.propertytypes.CXSPropertyType getIdentifierPropertyType(CXSIdentifierPropertyType identifierPropertyType) {
return new CXSIdentifierPropertyType(
identifierPropertyType.getId(),
identifierPropertyType.getName(),
diff --git a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSProviderManager.java b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSProviderManager.java
index 18c7533..66d4d93 100644
--- a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSProviderManager.java
+++ b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSProviderManager.java
@@ -16,8 +16,12 @@
*/
package org.apache.unomi.graphql;
+import org.apache.unomi.api.services.SegmentService;
+
public interface CXSProviderManager {
void refreshProviders();
+ SegmentService getSegmentService();
+
}
diff --git a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSQuery.java b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSQuery.java
index 7b548a9..728bb38 100644
--- a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSQuery.java
+++ b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSQuery.java
@@ -19,6 +19,14 @@ package org.apache.unomi.graphql;
import graphql.annotations.annotationTypes.GraphQLField;
import graphql.annotations.annotationTypes.GraphQLName;
import graphql.schema.DataFetchingEnvironment;
+import org.apache.unomi.api.conditions.Condition;
+import org.apache.unomi.api.query.Query;
+import org.apache.unomi.api.segments.Segment;
+import org.apache.unomi.api.services.SegmentService;
+import org.apache.unomi.graphql.types.input.CXSEventFilter;
+import org.apache.unomi.graphql.types.input.CXSOrderByInput;
+import org.apache.unomi.graphql.types.input.CXSSegmentFilterInput;
+import org.apache.unomi.graphql.types.output.*;
import java.util.ArrayList;
import java.util.List;
@@ -43,7 +51,7 @@ public class CXSQuery {
}
@GraphQLField
- public CXSEventConnection findEvents(@GraphQLName("filter") CXSEventFilterInput filter,
+ public CXSEventConnection findEvents(@GraphQLName("filter") CXSEventFilter filter,
@GraphQLName("orderBy") CXSOrderByInput orderBy,
DataFetchingEnvironment env) {
env.getArgument("first");
@@ -52,7 +60,40 @@ public class CXSQuery {
}
@GraphQLField
+ public CXSSegmentConnection findSegments(@GraphQLName("filter") CXSSegmentFilterInput filter,
+ @GraphQLName("orderBy") CXSOrderByInput orderBy,
+ DataFetchingEnvironment env) {
+ SegmentService segmentService = cxsGraphQLProvider.getCxsProviderManager().getSegmentService();
+ Query query = new Query();
+ segmentService.getSegmentMetadatas(query);
+ return new CXSSegmentConnection();
+ }
+
+ @GraphQLField
public CXSSegment getSegment(@GraphQLName("segmentId") String segmentId) {
- return new CXSSegment();
+ SegmentService segmentService = cxsGraphQLProvider.getCxsProviderManager().getSegmentService();
+ Segment segment = segmentService.getSegmentDefinition(segmentId);
+ if (segment == null) {
+ return null;
+ }
+ CXSSegment cxsSegment = new CXSSegment();
+ cxsSegment.id = segment.getItemId();
+ cxsSegment.name = segment.getMetadata().getName();
+ CXSView cxsView = new CXSView();
+ cxsView.name = segment.getScope();
+ cxsSegment.view = cxsView;
+ cxsSegment.condition = getSegmentCondition(segment.getCondition());
+ return cxsSegment;
+ }
+
+ private CXSSegmentCondition getSegmentCondition(Condition segmentRootCondition) {
+ if (segmentRootCondition == null) {
+ return null;
+ }
+ // @todo translate the conditions into something that the CXS spec can work with.
+
+ // we probably have to scan the tree to find any event conditions and seperate them
+ // from the profile property conditions (what about session conditions ?)
+ return null;
}
}
diff --git a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/builders/CXSEventBuilders.java b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/builders/CXSEventBuilders.java
index ff2a27e..8c616d4 100644
--- a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/builders/CXSEventBuilders.java
+++ b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/builders/CXSEventBuilders.java
@@ -19,8 +19,13 @@ package org.apache.unomi.graphql.builders;
import graphql.annotations.processor.GraphQLAnnotationsComponent;
import graphql.annotations.processor.ProcessingElementsContainer;
import graphql.schema.*;
-import org.apache.unomi.graphql.*;
import org.apache.unomi.graphql.propertytypes.*;
+import org.apache.unomi.graphql.types.input.CXSEventInput;
+import org.apache.unomi.graphql.types.input.CXSEventOccurrenceFilterInput;
+import org.apache.unomi.graphql.types.output.CXSEvent;
+import org.apache.unomi.graphql.types.output.CXSEventProperties;
+import org.apache.unomi.graphql.types.output.CXSEventType;
+import org.apache.unomi.graphql.types.output.PageInfo;
import java.util.ArrayList;
import java.util.List;
@@ -36,7 +41,7 @@ public class CXSEventBuilders implements CXSBuilder {
private GraphQLAnnotationsComponent annotationsComponent;
private ProcessingElementsContainer container;
- private Map<String,CXSEventType> eventTypes;
+ private Map<String, CXSEventType> eventTypes;
private Map<String,GraphQLType> typeRegistry;
public CXSEventBuilders(GraphQLAnnotationsComponent annotationsComponent,
diff --git a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/internal/CXSGraphQLProviderImpl.java b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/internal/CXSGraphQLProviderImpl.java
index 5880731..e5dc6ba 100644
--- a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/internal/CXSGraphQLProviderImpl.java
+++ b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/internal/CXSGraphQLProviderImpl.java
@@ -22,9 +22,19 @@ import graphql.schema.*;
import graphql.servlet.GraphQLMutationProvider;
import graphql.servlet.GraphQLQueryProvider;
import graphql.servlet.GraphQLTypesProvider;
-import org.apache.unomi.graphql.*;
+import org.apache.unomi.graphql.CXSGraphQLProvider;
+import org.apache.unomi.graphql.CXSMutation;
+import org.apache.unomi.graphql.CXSProviderManager;
+import org.apache.unomi.graphql.CXSQuery;
import org.apache.unomi.graphql.builders.CXSEventBuilders;
import org.apache.unomi.graphql.propertytypes.CXSSetPropertyType;
+import org.apache.unomi.graphql.types.input.CXSDateFilter;
+import org.apache.unomi.graphql.types.input.CXSEventTypeInput;
+import org.apache.unomi.graphql.types.input.CXSGeoDistanceInput;
+import org.apache.unomi.graphql.types.input.CXSOrderByInput;
+import org.apache.unomi.graphql.types.output.CXSEventType;
+import org.apache.unomi.graphql.types.output.CXSGeoPoint;
+import org.apache.unomi.graphql.types.output.PageInfo;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -46,11 +56,13 @@ public class CXSGraphQLProviderImpl implements CXSGraphQLProvider, GraphQLQueryP
private CXSEventBuilders cxsEventBuilders;
private Map<String,GraphQLType> typeRegistry;
- private Map<String,CXSEventType> eventTypes = new TreeMap<>();
+ private Map<String, CXSEventType> eventTypes = new TreeMap<>();
public CXSGraphQLProviderImpl(GraphQLAnnotationsComponent annotationsComponent) {
this.annotationsComponent = annotationsComponent;
container = annotationsComponent.createContainer();
+ container.setInputPrefix("");
+ container.setInputSuffix("Input");
typeRegistry = container.getTypeRegistry();
cxsEventBuilders = new CXSEventBuilders(annotationsComponent, container, eventTypes);
updateGraphQLTypes();
@@ -74,7 +86,7 @@ public class CXSGraphQLProviderImpl implements CXSGraphQLProvider, GraphQLQueryP
typeRegistry.put("CXS_EventType", annotationsComponent.getOutputTypeProcessor().getOutputTypeOrRef(CXSEventType.class, container));
typeRegistry.put("CXS_GeoDistanceInput", annotationsComponent.getInputTypeProcessor().getInputTypeOrRef(CXSGeoDistanceInput.class, container));
- typeRegistry.put("CXS_DateFilterInput", annotationsComponent.getInputTypeProcessor().getInputTypeOrRef(CXSDateFilterInput.class, container));
+ typeRegistry.put("CXS_DateFilterInput", annotationsComponent.getInputTypeProcessor().getInputTypeOrRef(CXSDateFilter.class, container));
typeRegistry.put("CXS_EventTypeInput", annotationsComponent.getInputTypeProcessor().getInputTypeOrRef(CXSEventTypeInput.class, container));
typeRegistry.put("CXS_OrderByInput", annotationsComponent.getInputTypeProcessor().getInputTypeOrRef(CXSOrderByInput.class, container));
diff --git a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/internal/CXSProviderManagerImpl.java b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/internal/CXSProviderManagerImpl.java
index 99d9d1f..cd7c56f 100644
--- a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/internal/CXSProviderManagerImpl.java
+++ b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/internal/CXSProviderManagerImpl.java
@@ -17,9 +17,11 @@
package org.apache.unomi.graphql.internal;
import graphql.annotations.processor.GraphQLAnnotationsComponent;
+import graphql.annotations.processor.retrievers.GraphQLFieldRetriever;
import graphql.servlet.GraphQLMutationProvider;
import graphql.servlet.GraphQLQueryProvider;
import graphql.servlet.GraphQLTypesProvider;
+import org.apache.unomi.api.services.SegmentService;
import org.apache.unomi.graphql.CXSGraphQLProvider;
import org.apache.unomi.graphql.CXSProviderManager;
import org.osgi.framework.BundleContext;
@@ -40,6 +42,9 @@ public class CXSProviderManagerImpl implements CXSProviderManager {
private CXSGraphQLProvider cxsGraphQLProvider;
private GraphQLAnnotationsComponent annotationsComponent;
+ private GraphQLFieldRetriever graphQLFieldRetriever;
+ private SegmentService segmentService;
+
private ServiceRegistration<?> providerSR;
private BundleContext bundleContext;
@@ -48,6 +53,24 @@ public class CXSProviderManagerImpl implements CXSProviderManager {
this.annotationsComponent = annotationsComponent;
}
+ @Reference
+ public void setGraphQLFieldRetriever(GraphQLFieldRetriever graphQLFieldRetriever) {
+ this.graphQLFieldRetriever = graphQLFieldRetriever;
+ if (graphQLFieldRetriever != null) {
+ graphQLFieldRetriever.setAlwaysPrettify(true);
+ }
+ }
+
+ @Reference
+ public void setSegmentService(SegmentService segmentService) {
+ this.segmentService = segmentService;
+ }
+
+ @Override
+ public SegmentService getSegmentService() {
+ return segmentService;
+ }
+
@Activate
void activate(
ComponentContext componentContext,
diff --git a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/propertytypes/CXSFloatPropertyType.java b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/propertytypes/CXSFloatPropertyType.java
index abd46b4..e53b28b 100644
--- a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/propertytypes/CXSFloatPropertyType.java
+++ b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/propertytypes/CXSFloatPropertyType.java
@@ -24,9 +24,9 @@ import java.util.List;
@GraphQLName("CXS_FloatPropertyType")
public class CXSFloatPropertyType extends CXSPropertyType {
- private Float minValue;
- private Float maxValue;
- private Float defaultValue;
+ private Double minValue;
+ private Double maxValue;
+ private Double defaultValue;
public CXSFloatPropertyType(@GraphQLName("id") String id,
@GraphQLName("name") String name,
@@ -35,9 +35,9 @@ public class CXSFloatPropertyType extends CXSPropertyType {
@GraphQLName("tags") List<String> tags,
@GraphQLName("systemTags") List<String> systemTags,
@GraphQLName("personalData") Boolean personalData,
- @GraphQLName("minValue") Float minValue,
- @GraphQLName("maxValue") Float maxValue,
- @GraphQLName("defaultValue") Float defaultValue) {
+ @GraphQLName("minValue") Double minValue,
+ @GraphQLName("maxValue") Double maxValue,
+ @GraphQLName("defaultValue") Double defaultValue) {
super(id, name, minOccurrences, maxOccurrences, tags, systemTags, personalData);
this.minValue = minValue;
this.maxValue = maxValue;
@@ -45,17 +45,17 @@ public class CXSFloatPropertyType extends CXSPropertyType {
}
@GraphQLField
- public Float getMinValue() {
+ public Double getMinValue() {
return minValue;
}
@GraphQLField
- public Float getMaxValue() {
+ public Double getMaxValue() {
return maxValue;
}
@GraphQLField
- public Float getDefaultValue() {
+ public Double getDefaultValue() {
return defaultValue;
}
}
diff --git a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSDateFilterInput.java b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/input/CXSDateFilter.java
similarity index 91%
rename from graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSDateFilterInput.java
rename to graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/input/CXSDateFilter.java
index c9e1d07..0a48393 100644
--- a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSDateFilterInput.java
+++ b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/input/CXSDateFilter.java
@@ -14,13 +14,13 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.unomi.graphql;
+package org.apache.unomi.graphql.types.input;
import graphql.annotations.annotationTypes.GraphQLField;
import graphql.annotations.annotationTypes.GraphQLName;
-@GraphQLName("CXS_DateFilterInput")
-public class CXSDateFilterInput {
+@GraphQLName("CXS_DateFilter")
+public class CXSDateFilter {
@GraphQLField
public long after;
@GraphQLField
diff --git a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSEventFilterInput.java b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/input/CXSEventFilter.java
similarity index 83%
copy from graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSEventFilterInput.java
copy to graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/input/CXSEventFilter.java
index 855a6ab..b699672 100644
--- a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSEventFilterInput.java
+++ b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/input/CXSEventFilter.java
@@ -14,22 +14,22 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.unomi.graphql;
+package org.apache.unomi.graphql.types.input;
import graphql.annotations.annotationTypes.GraphQLField;
import graphql.annotations.annotationTypes.GraphQLName;
import java.util.List;
-@GraphQLName("CXS_EventFilterInput")
-public class CXSEventFilterInput {
+@GraphQLName("CXS_EventFilter")
+public class CXSEventFilter {
@GraphQLField
@GraphQLName("and")
- public List<CXSEventFilterInput> andFilters;
+ public List<CXSEventFilter> andFilters;
@GraphQLField
@GraphQLName("or")
- public List<CXSEventFilterInput> orFilters;
+ public List<CXSEventFilter> orFilters;
}
diff --git a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSEventInput.java b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/input/CXSEventInput.java
similarity index 96%
rename from graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSEventInput.java
rename to graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/input/CXSEventInput.java
index 473953b..2a076cd 100644
--- a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSEventInput.java
+++ b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/input/CXSEventInput.java
@@ -14,7 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.unomi.graphql;
+package org.apache.unomi.graphql.types.input;
import graphql.annotations.annotationTypes.GraphQLField;
import graphql.annotations.annotationTypes.GraphQLName;
@@ -22,7 +22,7 @@ import graphql.annotations.annotationTypes.GraphQLName;
import java.util.LinkedHashMap;
import java.util.Map;
-@GraphQLName("CXS_EventInput")
+@GraphQLName("CXS_Event")
public class CXSEventInput {
private String id;
private String eventType;
diff --git a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSEventOccurrenceFilterInput.java b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/input/CXSEventOccurrenceFilterInput.java
similarity index 93%
rename from graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSEventOccurrenceFilterInput.java
rename to graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/input/CXSEventOccurrenceFilterInput.java
index 1ffaa19..ee74489 100644
--- a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSEventOccurrenceFilterInput.java
+++ b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/input/CXSEventOccurrenceFilterInput.java
@@ -14,12 +14,12 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.unomi.graphql;
+package org.apache.unomi.graphql.types.input;
import graphql.annotations.annotationTypes.GraphQLField;
import graphql.annotations.annotationTypes.GraphQLName;
-@GraphQLName("CXS_EventOccurrenceFilterInput")
+@GraphQLName("CXS_EventOccurrenceFilter")
public class CXSEventOccurrenceFilterInput {
@GraphQLField
diff --git a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSEventTypeInput.java b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/input/CXSEventTypeInput.java
similarity index 96%
rename from graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSEventTypeInput.java
rename to graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/input/CXSEventTypeInput.java
index 06e78f5..5f94aff 100644
--- a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSEventTypeInput.java
+++ b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/input/CXSEventTypeInput.java
@@ -14,7 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.unomi.graphql;
+package org.apache.unomi.graphql.types.input;
import graphql.annotations.annotationTypes.GraphQLField;
import graphql.annotations.annotationTypes.GraphQLName;
@@ -22,7 +22,7 @@ import graphql.annotations.annotationTypes.GraphQLName;
import java.util.ArrayList;
import java.util.List;
-@GraphQLName("CXS_EventTypeInput")
+@GraphQLName("CXS_EventType")
public class CXSEventTypeInput {
private String id;
diff --git a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSGeoDistanceInput.java b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/input/CXSGeoDistanceInput.java
similarity index 82%
rename from graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSGeoDistanceInput.java
rename to graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/input/CXSGeoDistanceInput.java
index bd95070..7b8352a 100644
--- a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSGeoDistanceInput.java
+++ b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/input/CXSGeoDistanceInput.java
@@ -14,17 +14,19 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.unomi.graphql;
+package org.apache.unomi.graphql.types.input;
import graphql.annotations.annotationTypes.GraphQLField;
import graphql.annotations.annotationTypes.GraphQLName;
+import org.apache.unomi.graphql.types.output.CXSGeoDistanceUnit;
+import org.apache.unomi.graphql.types.output.CXSGeoPoint;
-@GraphQLName("CXS_GeoDistanceInput")
+@GraphQLName("CXS_GeoDistance")
public class CXSGeoDistanceInput {
@GraphQLField
public CXSGeoPoint center;
@GraphQLField
public CXSGeoDistanceUnit unit;
@GraphQLField
- public float distance;
+ public Double distance;
}
diff --git a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSGeoPointInput.java b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/input/CXSGeoPointInput.java
similarity index 88%
rename from graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSGeoPointInput.java
rename to graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/input/CXSGeoPointInput.java
index bd402c0..772abb8 100644
--- a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSGeoPointInput.java
+++ b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/input/CXSGeoPointInput.java
@@ -14,15 +14,15 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.unomi.graphql;
+package org.apache.unomi.graphql.types.input;
import graphql.annotations.annotationTypes.GraphQLField;
import graphql.annotations.annotationTypes.GraphQLName;
-@GraphQLName("CXS_GeoPointInput")
+@GraphQLName("CXS_GeoPoint")
public class CXSGeoPointInput {
@GraphQLField
- public float longitude;
+ public Double longitude;
@GraphQLField
- public float latitude;
+ public Double latitude;
}
diff --git a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSOrderByInput.java b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/input/CXSOrderByInput.java
similarity index 88%
rename from graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSOrderByInput.java
rename to graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/input/CXSOrderByInput.java
index dbe63c0..3ee5e1c 100644
--- a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSOrderByInput.java
+++ b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/input/CXSOrderByInput.java
@@ -14,12 +14,13 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.unomi.graphql;
+package org.apache.unomi.graphql.types.input;
import graphql.annotations.annotationTypes.GraphQLField;
import graphql.annotations.annotationTypes.GraphQLName;
+import org.apache.unomi.graphql.types.output.CXSSortOrder;
-@GraphQLName("CXS_OrderByInput")
+@GraphQLName("CXS_OrderBy")
public class CXSOrderByInput {
@GraphQLField
diff --git a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSPropertyTypeInput.java b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/input/CXSPropertyTypeInput.java
similarity index 97%
rename from graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSPropertyTypeInput.java
rename to graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/input/CXSPropertyTypeInput.java
index 5662123..9917ca3 100644
--- a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSPropertyTypeInput.java
+++ b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/input/CXSPropertyTypeInput.java
@@ -14,13 +14,13 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.unomi.graphql;
+package org.apache.unomi.graphql.types.input;
import graphql.annotations.annotationTypes.GraphQLField;
import graphql.annotations.annotationTypes.GraphQLName;
import org.apache.unomi.graphql.propertytypes.*;
-@GraphQLName("CXS_PropertyTypeInput")
+@GraphQLName("CXS_PropertyType")
public class CXSPropertyTypeInput {
public CXSPropertyTypeInput(
diff --git a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSEventFilterInput.java b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/input/CXSSegmentFilterInput.java
similarity index 65%
rename from graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSEventFilterInput.java
rename to graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/input/CXSSegmentFilterInput.java
index 855a6ab..95bbc9d 100644
--- a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSEventFilterInput.java
+++ b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/input/CXSSegmentFilterInput.java
@@ -14,22 +14,38 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.unomi.graphql;
+package org.apache.unomi.graphql.types.input;
import graphql.annotations.annotationTypes.GraphQLField;
import graphql.annotations.annotationTypes.GraphQLName;
import java.util.List;
-@GraphQLName("CXS_EventFilterInput")
-public class CXSEventFilterInput {
+@GraphQLName("CXS_SegmentFilter")
+public class CXSSegmentFilterInput {
@GraphQLField
@GraphQLName("and")
- public List<CXSEventFilterInput> andFilters;
+ public List<CXSSegmentFilterInput> andFilters;
@GraphQLField
@GraphQLName("or")
- public List<CXSEventFilterInput> orFilters;
+ public List<CXSSegmentFilterInput> orFilters;
+
+ @GraphQLField
+ @GraphQLName("view_equals")
+ public String viewEquals;
+
+ @GraphQLField
+ @GraphQLName("view_regexp")
+ public String viewRegexp;
+
+ @GraphQLField
+ @GraphQLName("name_equals")
+ public String nameEquals;
+
+ @GraphQLField
+ @GraphQLName("name_regexp")
+ public String nameRegexp;
}
diff --git a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSSetPropertyTypeInput.java b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/input/CXSSetPropertyTypeInput.java
similarity index 90%
rename from graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSSetPropertyTypeInput.java
rename to graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/input/CXSSetPropertyTypeInput.java
index 52d1101..ba762f9 100644
--- a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSSetPropertyTypeInput.java
+++ b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/input/CXSSetPropertyTypeInput.java
@@ -14,16 +14,15 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.unomi.graphql;
+package org.apache.unomi.graphql.types.input;
import graphql.annotations.annotationTypes.GraphQLField;
import graphql.annotations.annotationTypes.GraphQLName;
-import org.apache.unomi.graphql.propertytypes.CXSPropertyType;
import java.util.List;
-@GraphQLName("CXS_SetPropertyTypeInput")
-public class CXSSetPropertyTypeInput extends CXSPropertyType {
+@GraphQLName("CXS_SetPropertyType")
+public class CXSSetPropertyTypeInput extends org.apache.unomi.graphql.propertytypes.CXSPropertyType {
private List<CXSPropertyTypeInput> properties;
diff --git a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSEvent.java b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/CXSEvent.java
similarity index 97%
rename from graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSEvent.java
rename to graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/CXSEvent.java
index 6e71c28..738ef7e 100644
--- a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSEvent.java
+++ b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/CXSEvent.java
@@ -14,7 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.unomi.graphql;
+package org.apache.unomi.graphql.types.output;
import graphql.annotations.annotationTypes.GraphQLField;
import graphql.annotations.annotationTypes.GraphQLName;
diff --git a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSEventConnection.java b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/CXSEventConnection.java
similarity index 95%
copy from graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSEventConnection.java
copy to graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/CXSEventConnection.java
index 7974543..5852b8d 100644
--- a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSEventConnection.java
+++ b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/CXSEventConnection.java
@@ -14,7 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.unomi.graphql;
+package org.apache.unomi.graphql.types.output;
import graphql.annotations.annotationTypes.GraphQLField;
import graphql.annotations.annotationTypes.GraphQLName;
diff --git a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSEventEdge.java b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/CXSEventEdge.java
similarity index 95%
copy from graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSEventEdge.java
copy to graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/CXSEventEdge.java
index 3b81f0a..1be39a6 100644
--- a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSEventEdge.java
+++ b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/CXSEventEdge.java
@@ -14,7 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.unomi.graphql;
+package org.apache.unomi.graphql.types.output;
import graphql.annotations.annotationTypes.GraphQLField;
import graphql.annotations.annotationTypes.GraphQLName;
diff --git a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSEventFilter.java b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/CXSEventFilter.java
similarity index 96%
rename from graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSEventFilter.java
rename to graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/CXSEventFilter.java
index 82a3ebd..9d26663 100644
--- a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSEventFilter.java
+++ b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/CXSEventFilter.java
@@ -14,7 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.unomi.graphql;
+package org.apache.unomi.graphql.types.output;
import graphql.annotations.annotationTypes.GraphQLField;
import graphql.annotations.annotationTypes.GraphQLName;
diff --git a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSEventOccurrenceFilter.java b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/CXSEventOccurrenceFilter.java
similarity index 96%
rename from graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSEventOccurrenceFilter.java
rename to graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/CXSEventOccurrenceFilter.java
index 7abd342..7fac676 100644
--- a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSEventOccurrenceFilter.java
+++ b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/CXSEventOccurrenceFilter.java
@@ -14,7 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.unomi.graphql;
+package org.apache.unomi.graphql.types.output;
import graphql.annotations.annotationTypes.GraphQLField;
import graphql.annotations.annotationTypes.GraphQLName;
diff --git a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSEventProperties.java b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/CXSEventProperties.java
similarity index 96%
rename from graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSEventProperties.java
rename to graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/CXSEventProperties.java
index 95c0b1b..7431cf9 100644
--- a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSEventProperties.java
+++ b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/CXSEventProperties.java
@@ -14,7 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.unomi.graphql;
+package org.apache.unomi.graphql.types.output;
import graphql.annotations.annotationTypes.GraphQLField;
import graphql.annotations.annotationTypes.GraphQLName;
diff --git a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSEventPropertiesFilter.java b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/CXSEventPropertiesFilter.java
similarity index 95%
rename from graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSEventPropertiesFilter.java
rename to graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/CXSEventPropertiesFilter.java
index 45f9101..9580a51 100644
--- a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSEventPropertiesFilter.java
+++ b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/CXSEventPropertiesFilter.java
@@ -14,7 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.unomi.graphql;
+package org.apache.unomi.graphql.types.output;
import graphql.annotations.annotationTypes.GraphQLName;
diff --git a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSEventType.java b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/CXSEventType.java
similarity index 97%
rename from graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSEventType.java
rename to graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/CXSEventType.java
index 2d4c5ae..38a7d4e 100644
--- a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSEventType.java
+++ b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/CXSEventType.java
@@ -14,7 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.unomi.graphql;
+package org.apache.unomi.graphql.types.output;
import graphql.annotations.annotationTypes.GraphQLField;
import graphql.annotations.annotationTypes.GraphQLName;
diff --git a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSGeoDistanceUnit.java b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/CXSGeoDistanceUnit.java
similarity index 95%
rename from graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSGeoDistanceUnit.java
rename to graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/CXSGeoDistanceUnit.java
index ad3f08a..8be9aee 100644
--- a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSGeoDistanceUnit.java
+++ b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/CXSGeoDistanceUnit.java
@@ -14,7 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.unomi.graphql;
+package org.apache.unomi.graphql.types.output;
import graphql.annotations.annotationTypes.GraphQLName;
diff --git a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSGeoPoint.java b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/CXSGeoPoint.java
similarity index 90%
rename from graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSGeoPoint.java
rename to graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/CXSGeoPoint.java
index 703a541..12e3e0a 100644
--- a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSGeoPoint.java
+++ b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/CXSGeoPoint.java
@@ -14,7 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.unomi.graphql;
+package org.apache.unomi.graphql.types.output;
import graphql.annotations.annotationTypes.GraphQLField;
import graphql.annotations.annotationTypes.GraphQLName;
@@ -23,9 +23,9 @@ import graphql.annotations.annotationTypes.GraphQLName;
public class CXSGeoPoint {
@GraphQLField
- public double latitude;
+ public Double latitude;
@GraphQLField
- public double longitude;
+ public Double longitude;
}
diff --git a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSSegment.java b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/CXSSegment.java
similarity index 96%
rename from graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSSegment.java
rename to graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/CXSSegment.java
index 4d81f90..5f64798 100644
--- a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSSegment.java
+++ b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/CXSSegment.java
@@ -14,7 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.unomi.graphql;
+package org.apache.unomi.graphql.types.output;
import graphql.annotations.annotationTypes.GraphQLField;
import graphql.annotations.annotationTypes.GraphQLName;
diff --git a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSSegmentCondition.java b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/CXSSegmentCondition.java
similarity index 92%
rename from graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSSegmentCondition.java
rename to graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/CXSSegmentCondition.java
index 37d3311..eca9f90 100644
--- a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSSegmentCondition.java
+++ b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/CXSSegmentCondition.java
@@ -14,10 +14,11 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.unomi.graphql;
+package org.apache.unomi.graphql.types.output;
import graphql.annotations.annotationTypes.GraphQLField;
import graphql.annotations.annotationTypes.GraphQLName;
+import org.apache.unomi.graphql.CXSProfilePropertiesFilter;
import java.util.List;
diff --git a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSEventConnection.java b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/CXSSegmentConnection.java
similarity index 86%
rename from graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSEventConnection.java
rename to graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/CXSSegmentConnection.java
index 7974543..09fe699 100644
--- a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSEventConnection.java
+++ b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/CXSSegmentConnection.java
@@ -14,18 +14,17 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.unomi.graphql;
+package org.apache.unomi.graphql.types.output;
import graphql.annotations.annotationTypes.GraphQLField;
import graphql.annotations.annotationTypes.GraphQLName;
import java.util.List;
-@GraphQLName("CXS_EventConnection")
-public class CXSEventConnection {
-
+@GraphQLName("CXS_SegmentConnection")
+public class CXSSegmentConnection {
@GraphQLField
- public List<CXSEventEdge> edges;
+ public List<CXSSegmentEdge> edges;
@GraphQLField
public PageInfo pageInfo;
diff --git a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSEventEdge.java b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/CXSSegmentEdge.java
similarity index 87%
rename from graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSEventEdge.java
rename to graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/CXSSegmentEdge.java
index 3b81f0a..f45b872 100644
--- a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSEventEdge.java
+++ b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/CXSSegmentEdge.java
@@ -14,16 +14,17 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.unomi.graphql;
+package org.apache.unomi.graphql.types.output;
import graphql.annotations.annotationTypes.GraphQLField;
import graphql.annotations.annotationTypes.GraphQLName;
-@GraphQLName("CXS_EventEdge")
-public class CXSEventEdge {
+@GraphQLName("CXS_SegmentEdge")
+public class CXSSegmentEdge {
@GraphQLField
- public CXSEvent node;
+ public CXSSegment edge;
+
@GraphQLField
public String cursor;
diff --git a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSSortOrder.java b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/CXSSortOrder.java
similarity index 95%
rename from graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSSortOrder.java
rename to graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/CXSSortOrder.java
index 0fbad2c..34d8c11 100644
--- a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSSortOrder.java
+++ b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/CXSSortOrder.java
@@ -14,7 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.unomi.graphql;
+package org.apache.unomi.graphql.types.output;
import graphql.annotations.annotationTypes.GraphQLName;
diff --git a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSView.java b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/CXSView.java
similarity index 95%
rename from graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSView.java
rename to graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/CXSView.java
index 5ee0066..a8e3616 100644
--- a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/CXSView.java
+++ b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/CXSView.java
@@ -14,7 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.unomi.graphql;
+package org.apache.unomi.graphql.types.output;
import graphql.annotations.annotationTypes.GraphQLField;
import graphql.annotations.annotationTypes.GraphQLName;
diff --git a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/PageInfo.java b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/PageInfo.java
similarity index 95%
rename from graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/PageInfo.java
rename to graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/PageInfo.java
index a49d774..7242a87 100644
--- a/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/PageInfo.java
+++ b/graphql/cxs-impl/src/main/java/org/apache/unomi/graphql/types/output/PageInfo.java
@@ -14,7 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.unomi.graphql;
+package org.apache.unomi.graphql.types.output;
import graphql.annotations.annotationTypes.GraphQLField;
diff --git a/graphql/karaf-feature/pom.xml b/graphql/karaf-feature/pom.xml
index c61df57..3179638 100644
--- a/graphql/karaf-feature/pom.xml
+++ b/graphql/karaf-feature/pom.xml
@@ -35,17 +35,17 @@
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
- <version>2.8.4</version>
+ <version>2.8.6</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
- <version>2.8.4</version>
+ <version>2.8.6</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
- <version>2.8.4</version>
+ <version>2.8.6</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.datatype</groupId>
@@ -65,8 +65,19 @@
<dependency>
<groupId>org.antlr</groupId>
<artifactId>antlr4-runtime</artifactId>
- <version>4.5.1</version>
+ <version>4.7.1</version>
</dependency>
+ <dependency>
+ <groupId>com.graphql-java</groupId>
+ <artifactId>java-dataloader</artifactId>
+ <version>2.0.2</version>
+ </dependency>
+ <dependency>
+ <groupId>org.reactivestreams</groupId>
+ <artifactId>reactive-streams</artifactId>
+ <version>1.0.2</version>
+ </dependency>
+
<dependency>
<groupId>com.graphql-java</groupId>
diff --git a/graphql/pom.xml b/graphql/pom.xml
index ea476f6..25d0e3f 100644
--- a/graphql/pom.xml
+++ b/graphql/pom.xml
@@ -31,9 +31,9 @@
<packaging>pom</packaging>
<properties>
- <graphql.java.servlet.version>4.7.0</graphql.java.servlet.version>
- <graphql.java.version>6.0</graphql.java.version>
- <graphql.java.annotations.version>5.1</graphql.java.annotations.version>
+ <graphql.java.servlet.version>5.0.1</graphql.java.servlet.version>
+ <graphql.java.version>8.0</graphql.java.version>
+ <graphql.java.annotations.version>6.1</graphql.java.annotations.version>
</properties>
<modules>