Class FieldData<I,O>

java.lang.Object
org.spongepowered.configurate.objectmapping.FieldData<I,O>
Type Parameters:
I - intermediate type
O - container type

public abstract class FieldData<I,O> extends Object
Holder for field-specific information.
Since:
4.0.0
  • Method Details

    • name

      public abstract String name()
      The name of the field.
      Returns:
      field name
      Since:
      4.0.0
    • resolvedType

      public abstract AnnotatedType resolvedType()
      The calculated type of this field within the object type.

      This value has had any possible type parameters resolved using information available in the context.

      Returns:
      the resolved type
      Since:
      4.0.0
    • isValid

      public boolean isValid(Object instance)
      Test if an object would be valid for this field.
      Parameters:
      instance - instance to validate
      Returns:
      true if valid
      Since:
      4.0.0
    • validate

      public void validate(@Nullable Object instance) throws SerializationException
      Try to ensure the provided value is acceptable.
      Parameters:
      instance - field value instance to validate
      Throws:
      SerializationException - if validation fails
      Since:
      4.0.0
    • resolveNode

      public @Nullable ConfigurationNode resolveNode(ConfigurationNode source)
      Use this field's node resolvers to determine a target node.
      Parameters:
      source - parent node
      Returns:
      resolved node
      Since:
      4.0.0