Class CustomScalarRegistryImpl
java.lang.Object
com.graphql_java_generator.client.CustomScalarRegistryImpl
- All Implemented Interfaces:
CustomScalarRegistry
- Author:
- etienne-sf
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiongetCustomScalar(String graphQLTypeName) Retrieves the registeredGraphQLScalarTypefor this GraphQL CustomScalar.static CustomScalarRegistrygetCustomScalarRegistry(String schema) Retrieves theCustomScalarRegistryfor the given schema.graphql.schema.GraphQLScalarTypegetGraphQLCustomScalarType(String graphQLTypeName) Retrieves the registeredGraphQLScalarTypefor this GraphQL CustomScalar.static booleanIndicates whether theCustomScalarRegistryfor the given schema has been initialized.voidregisterGraphQLScalarType(String typeName, graphql.schema.GraphQLScalarType type, Class<?> valueClazz) Manually register oneGraphQLScalarType.static voidsetCustomScalarRegistry(String schema, CustomScalarRegistry customScalarRegistry) Sets theCustomScalarRegistryfor the given schema.
-
Constructor Details
-
CustomScalarRegistryImpl
public CustomScalarRegistryImpl()
-
-
Method Details
-
registerGraphQLScalarType
public void registerGraphQLScalarType(String typeName, graphql.schema.GraphQLScalarType type, Class<?> valueClazz) Description copied from interface:CustomScalarRegistryManually register oneGraphQLScalarType.- Specified by:
registerGraphQLScalarTypein interfaceCustomScalarRegistry- Parameters:
typeName- The name of the custom scalar type, as defined in the provided GaphQL schema. It may be different from the providedgraphQLScalarTypetype- The GraphQL custom scalar class, that contain the coercing rules to serialize and unserialize this custom scalarvalueClazz- The java The java type that will contain values for this custom scalar. This is needed to properly create the data from the value read in a string, especially when reading a GraphQL request, when in client mode
-
getGraphQLCustomScalarType
Description copied from interface:CustomScalarRegistryRetrieves the registeredGraphQLScalarTypefor this GraphQL CustomScalar.- Specified by:
getGraphQLCustomScalarTypein interfaceCustomScalarRegistry- Parameters:
graphQLTypeName-- Returns:
- the
GraphQLScalarType, or null if no converter has been registered for the given name
-
getCustomScalar
Description copied from interface:CustomScalarRegistryRetrieves the registeredGraphQLScalarTypefor this GraphQL CustomScalar.- Specified by:
getCustomScalarin interfaceCustomScalarRegistry- Parameters:
graphQLTypeName-- Returns:
- the
GraphQLScalarType, or null if no converter has been registered for the given name
-
isCustomScalarRegistryInitialized
Indicates whether theCustomScalarRegistryfor the given schema has been initialized.- Parameters:
schema- value of the springBeanSuffix plugin parameter for the searched schema. When there is only one schema, this plugin parameter is usually not set. In this case, its default value ("") is used.- Returns:
- true if this registry is already initialized
- Throws:
IllegalArgumentException- If noCustomScalarRegistryhas been defined for the given schema
-
getCustomScalarRegistry
Retrieves theCustomScalarRegistryfor the given schema. This registry is initialized in the generated classCustomScalarRegistryInitializer.
Note: this method is an internal utility method.- Parameters:
schema- value of the springBeanSuffix plugin parameter for the searched schema. When there is only one schema, this plugin parameter is usually not set. In this case, its default value ("") is used.- Returns:
- Throws:
IllegalArgumentException- If noCustomScalarRegistryhas been defined for the given schema
-
setCustomScalarRegistry
public static void setCustomScalarRegistry(String schema, CustomScalarRegistry customScalarRegistry) Sets theCustomScalarRegistryfor the given schema. This method should only be called from the generated classCustomScalarRegistryInitializer.
Note: this method is an internal utility method.- Parameters:
schema- value of the springBeanSuffix plugin parameter for the searched schema. When there is only one schema, this plugin parameter is usually not set. In this case, its default value ("") is used.customScalarRegistry- TheCustomScalarRegistryassociated with this schema
-