Class Property

    • Constructor Detail

      • Property

        public Property()
        Creates a new property.
      • Property

        public Property​(java.lang.String aName)
        Creates a new property with given name.
      • Property

        public Property​(java.lang.String aName,
                        Property.Type aType)
        Creates a new property with given name and type.
      • Property

        public Property​(java.lang.String aName,
                        java.lang.Object aType)
        Creates a new property with given name and type.
    • Method Detail

      • getEntity

        public Entity getEntity()
        Returns the entity that owns this property.
      • setEntity

        public void setEntity​(Entity anEntity)
        Sets the entity that owns this property.
      • getName

        @Nonnull
        public java.lang.String getName()
        Returns the name of this property.
      • setName

        public void setName​(java.lang.String aName)
        Sets the name of this property.
      • getStandardName

        public java.lang.String getStandardName()
        Returns the name in a standard format (strip is/get prefix and start with capital letter).
      • getType

        public Property.Type getType()
        Returns the type of this property.
      • setType

        public void setType​(Property.Type aType)
        Sets the type of this property.
      • setTypeName

        public void setTypeName​(java.lang.String aName)
        Sets the type from a given name.
      • setTypeFromSample

        public void setTypeFromSample​(java.lang.String aSample)
        Sets property type from sample string - tries to discern whether string represents a date or number.
      • isPrimary

        public boolean isPrimary()
        Returns whether this property is a primary key.
      • setPrimary

        public void setPrimary​(boolean isPrimary)
        Sets whether this property is a primary key.
      • isPrivate

        public boolean isPrivate()
        Returns whether this property is private.
      • setPrivate

        public void setPrivate​(boolean isPrivate)
        Sets whether this property is private.
      • setStringSize

        public void setStringSize​(Property.StringSize aSize)
        Sets the string size.
      • getStringSizeDefault

        public Property.StringSize getStringSizeDefault()
        Return default string size.
      • setNumberType

        public void setNumberType​(Property.NumberType aNumberType)
        Sets the number type.
      • getNumberTypeDefault

        public Property.NumberType getNumberTypeDefault()
        Return default number type.
      • setDateType

        public void setDateType​(Property.DateType aDateType)
        Sets the date type.
      • getDateTypeDefault

        public Property.DateType getDateTypeDefault()
        Returns the default date type.
      • isAutoGenerated

        public boolean isAutoGenerated()
        Returns whether column is automatically generated (numbered), thus read-only.
      • setAutoGenerated

        public void setAutoGenerated​(boolean aValue)
        Sets whether column is automatically generated (numbered), thus read-only.
      • isNullable

        public boolean isNullable()
        Returns whether property allows nulls.
      • setNullable

        public void setNullable​(boolean aValue)
        Sets whether property allows nulls.
      • getNullableDefault

        public boolean getNullableDefault()
        Returns the nullable default.
      • getDefaultValue

        public java.lang.Object getDefaultValue()
        Returns default value for this property.
      • setDefaultValue

        public void setDefaultValue​(java.lang.Object aValue)
        Sets default value for this property.
      • getEnumStrings

        public java.util.List<java.lang.String> getEnumStrings()
        Returns the enum strings (for type Enum).
      • setEnumStrings

        public void setEnumStrings​(java.util.List<java.lang.String> theValues)
        Sets the enum strings (for type Enum).
      • getEnumsString

        public java.lang.String getEnumsString()
        Returns the enum strings as a single string (comma separated).
      • setEnumsString

        public void setEnumsString​(java.lang.String aValue)
        Sets the enum strings as a single string (comma separated).
      • isAttribute

        public boolean isAttribute()
        Returns whether this property is a simple attribute.
      • isRelation

        public boolean isRelation()
        Returns whether this property is a relation.
      • isToMany

        public boolean isToMany()
        Returns whether this property is a to many relation.
      • isDerived

        public boolean isDerived()
        Returns whether property value is derived from other properties and doesn't require persistence. A common (though advanced) example is a relationship that references the primary key against a foreign table/key. A less sophisticated example would be a property based on an expression comprised of other properties.
      • setToMany

        public void setToMany​(boolean aValue)
        Sets whether this property is a to many relation.
      • getRelationEntity

        public Entity getRelationEntity()
        Returns the relation entity.
      • setRelationEntity

        public void setRelationEntity​(Entity anEntity)
        Sets the relation entity.
      • getRelationEntityName

        public java.lang.String getRelationEntityName()
        Returns the name of the entity that this relation property points to.
      • setRelationEntityName

        public void setRelationEntityName​(java.lang.String aName)
        Sets the name of the entity that this relation property points to.
      • getRelationLocalPropertyName

        public java.lang.String getRelationLocalPropertyName()
        Returns the property name local to this property's entity that the relation uses as a key (primary or foreign).
      • setRelationLocalPropertyName

        public void setRelationLocalPropertyName​(java.lang.String aName)
        Sets the property name local to this property's entity that the relation uses as a key (primary or foreign).
      • getRelationRemotePropertyName

        public java.lang.String getRelationRemotePropertyName()
        Returns the property name that the relation uses as a key in the remote table (primary or foreign).
      • setRelationRemotePropertyName

        public void setRelationRemotePropertyName​(java.lang.String aName)
        Sets the property name that the relation uses as a key in the remote table (primary or foreign).
      • getRelationLocalProperty

        public Property getRelationLocalProperty()
        Returns the relation local property.
      • getRelationRemoteProperty

        public Property getRelationRemoteProperty()
        Returns the relation remote property.
      • convertValue

        public java.lang.Object convertValue​(java.lang.Object anObj)
        Converts an arbitrary object to property type.
      • getKeyValue

        public java.lang.Object getKeyValue​(java.lang.String aKey)
        RMKey.Get implementation to return Property for key from RelationEntity (if found).
      • toString

        public java.lang.String toString​(java.lang.Object aValue)
        Returns a string representation of given value according to property type.
      • equals

        public boolean equals​(java.lang.Object anObj)
        Standard equals implementation.
        Overrides:
        equals in class java.lang.Object
      • compareTo

        public int compareTo​(java.lang.Object anObj)
        Implements comparable to compare based on name.
        Specified by:
        compareTo in interface java.lang.Comparable
      • toString

        public java.lang.String toString()
        Returns a string representation of this property (its name).
        Overrides:
        toString in class RMObject