Class PropertyModel<T>

  • Type Parameters:
    T - the type of the property that the PropertyModel represents.

    public final class PropertyModel<T>
    extends Object
    Represents a property on a class and stores various metadata such as generic parameters
    Since:
    3.5
    • Method Detail

      • getName

        public String getName()
        Returns:
        the property name for the model
      • getWriteName

        public String getWriteName()
        Returns:
        the name of the property to use as the key when deserializing from BSON
      • getReadName

        public String getReadName()
        Returns:
        the name of the property to use as the key when serializing into BSON
      • isWritable

        public boolean isWritable()
        Property is writable.
        Returns:
        true if can be deserialized from BSON
      • isReadable

        public boolean isReadable()
        Property is readable.
        Returns:
        true if can be serialized to BSON
      • getTypeData

        public org.bson.codecs.pojo.TypeData<T> getTypeData()
        Returns:
        the type data for the property
      • getCodec

        public Codec<T> getCodec()
        Returns:
        the custom codec to use if set or null
      • shouldSerialize

        public boolean shouldSerialize​(T value)
        Returns true if the value should be serialized.
        Parameters:
        value - the value to check
        Returns:
        true if the value should be serialized.
      • getPropertyAccessor

        public PropertyAccessor<T> getPropertyAccessor()
        Returns:
        the property accessor
      • useDiscriminator

        public Boolean useDiscriminator()
        Returns:
        true or false if a discriminator should be used when serializing or null if not set
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object