Package org.craftercms.engine.graphql
Class SchemaUtils
java.lang.Object
org.craftercms.engine.graphql.SchemaUtils
Utility objects & methods for building the GraphQL Schema
- Since:
- 3.1
- Author:
- joseross
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final graphql.schema.GraphQLArgument
static final String
static final graphql.schema.GraphQLObjectType
static final graphql.schema.GraphQLObjectType
static final List
<graphql.schema.GraphQLFieldDefinition> static final graphql.schema.GraphQLInterfaceType
static final graphql.schema.TypeResolver
static final graphql.schema.GraphQLArgument
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final graphql.schema.GraphQLArgument
static final String
static final graphql.schema.GraphQLArgument
static final String
static final graphql.schema.GraphQLObjectType
static final graphql.schema.GraphQLObjectType
static final graphql.schema.GraphQLArgument
static final String
static final graphql.schema.GraphQLEnumType
static final List
<graphql.schema.GraphQLFieldDefinition> static final graphql.schema.GraphQLInterfaceType
static final graphql.schema.GraphQLArgument
static final String
static final graphql.schema.GraphQLArgument
static final String
static final graphql.schema.GraphQLArgument
static final List
<graphql.schema.GraphQLArgument> -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic graphql.schema.GraphQLType
createQueryWrapperType
(String namePrefix, graphql.schema.GraphQLType wrappedType, String description) Creates a query wrapper type (with total and list of items) for an actual typestatic graphql.schema.GraphQLType
createQueryWrapperType
(String namePrefix, String description) Creates a query wrapper type (with total and list of items) using a reference to a typestatic String
getContentTypeOriginalName
(String graphQLName) Returns the original name from a GraphQL-friendly content type idstatic String
getGraphQLName
(String name) Returns a GraphQL-friendly namestatic String
getOriginalName
(String graphQLName) Returns the original name from a GraphQL-friendly one This is a simplified version ofgetContentTypeOriginalName
that works for field names liketitle_s
static void
setTypeFromFieldName
(String fieldName, graphql.schema.GraphQLFieldDefinition.Builder field) Tries to set the type of a field based on its name suffix
-
Field Details
-
ARG_NAME_SORT_BY
- See Also:
-
ARG_NAME_SORT_ORDER
- See Also:
-
ARG_NAME_OFFSET
- See Also:
-
ARG_NAME_LIMIT
- See Also:
-
ARG_NAME_EQUALS
- See Also:
-
ARG_NAME_MATCHES
- See Also:
-
ARG_NAME_REGEX
- See Also:
-
ARG_NAME_LT
- See Also:
-
ARG_NAME_GT
- See Also:
-
ARG_NAME_LTE
- See Also:
-
ARG_NAME_GTE
- See Also:
-
ARG_NAME_EXISTS
- See Also:
-
ARG_NAME_NOT
- See Also:
-
ARG_NAME_OR
- See Also:
-
ARG_NAME_AND
- See Also:
-
ARG_NAME_TRANSFORM
- See Also:
-
STRING_FILTER_NAME
- See Also:
-
TEXT_FILTER_NAME
- See Also:
-
BOOLEAN_FILTER_NAME
- See Also:
-
INT_FILTER_NAME
- See Also:
-
FLOAT_FILTER_NAME
- See Also:
-
LONG_FILTER_NAME
- See Also:
-
DATETIME_FILTER_NAME
- See Also:
-
FIELD_SEPARATOR
- See Also:
-
FIELD_NAME_CONTENT_ITEMS
- See Also:
-
FIELD_NAME_PAGES
- See Also:
-
FIELD_NAME_COMPONENTS
- See Also:
-
FIELD_NAME_CONTENT_TYPE
-
FIELD_NAME_ITEM
- See Also:
-
FIELD_NAME_ITEMS
- See Also:
-
FIELD_NAME_TOTAL
- See Also:
-
FIELD_NAME_KEY
- See Also:
-
FIELD_NAME_VALUE
- See Also:
-
FIELD_NAME_SELECTED
- See Also:
-
FIELD_NAME_COMPONENT
- See Also:
-
FIELD_SUFFIX_ITEM
- See Also:
-
FIELD_SUFFIX_ITEMS
- See Also:
-
FIELD_SUFFIX_QUERY
- See Also:
-
FIELD_SUFFIX_RAW
- See Also:
-
FIELD_SUFFIX_TZ
- See Also:
-
FIELD_SUFFIX_TOKENIZED
- See Also:
-
FIELD_SUFFIX_MULTIVALUE
- See Also:
-
FILTER_NAME
- See Also:
-
FILTER_DESCRIPTION
- See Also:
-
ORDER_ENUM
public static final graphql.schema.GraphQLEnumType ORDER_ENUM -
TYPE_ARGUMENTS
-
TRANSFORM_ARG
public static final graphql.schema.GraphQLArgument TRANSFORM_ARG -
STRING_FILTER
public static final graphql.schema.GraphQLArgument STRING_FILTER -
TEXT_FILTER
public static final graphql.schema.GraphQLArgument TEXT_FILTER -
BOOLEAN_FILTER
public static final graphql.schema.GraphQLArgument BOOLEAN_FILTER -
INT_FILTER
public static final graphql.schema.GraphQLArgument INT_FILTER -
FLOAT_FILTER
public static final graphql.schema.GraphQLArgument FLOAT_FILTER -
LONG_FILTER
public static final graphql.schema.GraphQLArgument LONG_FILTER -
DATETIME_FILTER
public static final graphql.schema.GraphQLArgument DATETIME_FILTER -
CONTENT_ITEM_FIELDS
-
PAGE_FIELDS
-
CONTENT_ITEM_INTERFACE_TYPE
public static final graphql.schema.GraphQLInterfaceType CONTENT_ITEM_INTERFACE_TYPE -
PAGE_INTERFACE_TYPE
public static final graphql.schema.GraphQLInterfaceType PAGE_INTERFACE_TYPE -
ITEM_INCLUDE_TYPE
public static final graphql.schema.GraphQLObjectType ITEM_INCLUDE_TYPE -
ITEM_INCLUDE_WRAPPER_TYPE
public static final graphql.schema.GraphQLObjectType ITEM_INCLUDE_WRAPPER_TYPE -
CONTENT_INCLUDE_TYPE
public static final graphql.schema.GraphQLObjectType CONTENT_INCLUDE_TYPE -
CONTENT_INCLUDE_WRAPPER_TYPE
public static final graphql.schema.GraphQLObjectType CONTENT_INCLUDE_WRAPPER_TYPE -
CONTENT_TYPE_BASED_TYPE_RESOLVER
public static final graphql.schema.TypeResolver CONTENT_TYPE_BASED_TYPE_RESOLVER
-
-
Constructor Details
-
SchemaUtils
public SchemaUtils()
-
-
Method Details
-
getGraphQLName
Returns a GraphQL-friendly name -
getContentTypeOriginalName
Returns the original name from a GraphQL-friendly content type id- Parameters:
graphQLName
- the GraphQL-friendly content type id- Returns:
- the original content type name
-
getOriginalName
Returns the original name from a GraphQL-friendly one This is a simplified version ofgetContentTypeOriginalName
that works for field names liketitle_s
-
setTypeFromFieldName
public static void setTypeFromFieldName(String fieldName, graphql.schema.GraphQLFieldDefinition.Builder field) Tries to set the type of a field based on its name suffix -
createQueryWrapperType
public static graphql.schema.GraphQLType createQueryWrapperType(String namePrefix, String description) Creates a query wrapper type (with total and list of items) using a reference to a type -
createQueryWrapperType
public static graphql.schema.GraphQLType createQueryWrapperType(String namePrefix, graphql.schema.GraphQLType wrappedType, String description) Creates a query wrapper type (with total and list of items) for an actual type
-