Interface GeneratedGraphQl.CustomScalar

Enclosing class:
GeneratedGraphQl

@Contract public static interface GeneratedGraphQl.CustomScalar
Service Registry contract for GraphQL custom scalar mappings.

Implementations are generated by declarative integrations. Server and client integrations use this contract to convert between Java values and GraphQL scalar values.

  • Method Summary

    Modifier and Type
    Method
    Description
    default String
    Description of this scalar.
    GraphQL scalar name.
    default Object
    Convert a GraphQL literal value to a Java value.
    Convert a GraphQL variable value to a Java value.
    Convert a Java value to a GraphQL scalar result value.
    Java type represented by this scalar.
  • Method Details

    • name

      String name()
      GraphQL scalar name.
      Returns:
      scalar name
    • type

      Class<?> type()
      Java type represented by this scalar.
      Returns:
      Java scalar type
    • description

      default String description()
      Description of this scalar.
      Returns:
      scalar description, or an empty string
    • serialize

      Object serialize(Object value)
      Convert a Java value to a GraphQL scalar result value.

      GraphQL integrations handle null values before invoking this method.

      Parameters:
      value - Java value, never null
      Returns:
      GraphQL scalar value, never null
    • parseValue

      Object parseValue(Object value)
      Convert a GraphQL variable value to a Java value.

      GraphQL integrations handle null values before invoking this method.

      Parameters:
      value - GraphQL input value, never null
      Returns:
      Java value, never null
    • parseLiteral

      default Object parseLiteral(Object value)
      Convert a GraphQL literal value to a Java value.

      GraphQL integrations handle null values before invoking this method. String, integer, floating point, boolean, and enum literals are provided as scalar Java values. List literals are provided as List values and input object literals are provided as Map values.

      Parameters:
      value - GraphQL literal value converted to a Java value, never null
      Returns:
      Java value, never null