Annotation Type GraphQLNonScalar
@Retention(RUNTIME)
@Target({FIELD,METHOD})
public @interface GraphQLNonScalar
This annotation marks all fields in the generated classes, that are non scalar. That is: this class is either an
input type, or a standard GraphQL object.
The
The
javaClass()
contains the type for this Scalar. This is useful only when this field is actually a list,
as java has the type erasure shit, and on Runtime, you can use java reflection to check the objects allowed in the
list.- Author:
- etienne-sf
-
Required Element Summary
Required Elements Modifier and Type Required Element Description java.lang.String
fieldName
The name of the field's attribute, as defined in the GraphQL schema.java.lang.String
graphQLTypeSimpleName
The name of the Scalar type, as defined in the GraphQL schema, without indication of list or mandatory.java.lang.Class<?>
javaClass
Contains the java data type that is has used to store the data, on both the client and the server side.
-
Element Details
-
fieldName
java.lang.String fieldNameThe name of the field's attribute, as defined in the GraphQL schema.
Note on object and input types: It can be different from the attribute's name in the generated class, when the GraphQL field's name is a java keyword.
Note on interface: it's not possible to guess the attribute name from the getter method name, as there may be a case issue. -
graphQLTypeSimpleName
java.lang.String graphQLTypeSimpleNameThe name of the Scalar type, as defined in the GraphQL schema, without indication of list or mandatory. This name is used to retrieve the associated converter, on runtime. -
javaClass
java.lang.Class<?> javaClassContains the java data type that is has used to store the data, on both the client and the server side.
-