Class SubSectionLiaison

java.lang.Object
space.arim.dazzleconf.engine.liaison.SubSectionLiaison
All Implemented Interfaces:
TypeLiaison

public final class SubSectionLiaison extends Object implements TypeLiaison
A type liaison that enables using subsection configurations.

This liaison covers all types whose usage is annotated with SubSection. Such types will be loaded as configuration interfaces and fit seamlessly into the parent configuration.

  • Constructor Details

    • SubSectionLiaison

      public SubSectionLiaison()
      Creates
  • Method Details

    • makeAgent

      @SideEffectFree public <V> @Nullable TypeLiaison.Agent<V> makeAgent(@NonNull TypeToken<V> typeToken, @NonNull TypeLiaison.Handshake handshake)
      Description copied from interface: TypeLiaison
      Attempts to support the following type.

      If supported, an agent is returned that handles type serialization, deserialization, and defaults. Note that implementations may need casting at the source level to satisfy the generic argument of the token requested.

      Specified by:
      makeAgent in interface TypeLiaison
      Type Parameters:
      V - the type being requested
      Parameters:
      typeToken - the type token
      handshake - the handshake
      Returns:
      the agent if supported, or null otherwise