Class LegacyCoercingInputInterceptor

java.lang.Object
graphql.execution.values.legacycoercing.LegacyCoercingInputInterceptor
All Implemented Interfaces:
InputInterceptor

public class LegacyCoercingInputInterceptor extends Object implements InputInterceptor
  • Method Details

    • observesValues

      public static LegacyCoercingInputInterceptor observesValues(BiConsumer<Object,GraphQLInputType> observerCallback)
      This will ONLY observe legacy values and invoke the callback when it gets one. you can use this to enumerate how many legacy values are hitting you graphql implementation
      Parameters:
      observerCallback - a callback allowing you to observe a legacy scalar value
      Returns:
      an InputInterceptor that only observes values
    • migratesValues

      public static LegacyCoercingInputInterceptor migratesValues()
      This will change legacy values as it encounters them to something acceptable to the more strict coercion rules.
      Returns:
      an InputInterceptor that migrates values to a more strict value
    • migratesValues

      public static LegacyCoercingInputInterceptor migratesValues(BiConsumer<Object,GraphQLInputType> observerCallback)
      This will change legacy values as it encounters them to something acceptable to the more strict coercion rules. The observer callback will be invoked if it detects a legacy value that it will change.
      Parameters:
      observerCallback - a callback allowing you to observe a legacy scalar value before it is migrated
      Returns:
      an InputInterceptor that both observes values and migrates them to a more strict value
    • intercept

      public Object intercept(@Nullable Object input, @NonNull GraphQLInputType graphQLType, @NonNull GraphQLContext graphqlContext, @NonNull Locale locale)
      Description copied from interface: InputInterceptor
      This is called with a value that is to be presented to the ValuesResolver code. The values may be scalars, enums and complex input types.
      Specified by:
      intercept in interface InputInterceptor
      Parameters:
      input - the input value that can be null
      graphQLType - the input type
      graphqlContext - the graphql context in play
      locale - the locale in play
      Returns:
      a value that may differ from the original value