Class IndexMetadata


  • public class IndexMetadata
    extends ORMetadata
    INTERNAL: Object to hold onto database index metadata. Key notes: - any metadata mapped from XML to this class must be compared in the equals method. - when loading from annotations, the constructor accepts the metadata accessor this metadata was loaded from. Used it to look up any 'companion' annotation needed for processing. - methods should be preserved in alphabetical order.
    Since:
    EclipseLink 2.2
    Author:
    James Sutherland
    • Constructor Detail

      • IndexMetadata

        public IndexMetadata()
        INTERNAL: Used for OX mapping.
    • Method Detail

      • equals

        public boolean equals​(java.lang.Object objectToCompare)
        INTERNAL:
        Specified by:
        equals in class ORMetadata
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • getCatalog

        public java.lang.String getCatalog()
        INTERNAL: Used for OX mapping.
      • getColumnList

        public java.lang.String getColumnList()
        INTERNAL: Used for OX mapping.
      • getColumnNames

        public java.util.List<java.lang.String> getColumnNames()
        INTERNAL: Used for OX mapping.
      • getName

        public java.lang.String getName()
        INTERNAL: Used for OX mapping.
      • getSchema

        public java.lang.String getSchema()
        INTERNAL: Used for OX mapping.
      • getTable

        public java.lang.String getTable()
        INTERNAL: Used for OX mapping.
      • getUnique

        public java.lang.Boolean getUnique()
        INTERNAL: Used for OX mapping.
      • hasName

        protected boolean hasName()
        INTERNAL: Return true is a name has been specified for this index.
      • isUnique

        protected boolean isUnique()
        INTERNAL: Return true is there is a unique setting for this index.
      • process

        public void process​(org.eclipse.persistence.internal.helper.DatabaseTable table)
        INTERNAL: Process the index metadata. This is called from all table metadata. CollectionTable, SecondaryTable, JoinTable, Table, TableGenerator.
      • process

        public void process​(MetadataDescriptor descriptor,
                            java.lang.String defaultColumnName)
        INTERNAL: Process the index metadata. This is called from EntityAccessor and BasicAccesor (for Basic, Id and Version)
      • processName

        protected java.lang.String processName​(org.eclipse.persistence.internal.helper.DatabaseTable table,
                                               org.eclipse.persistence.tools.schemaframework.IndexDefinition indexDefinition)
        INTERNAL: Process the name. If specified it, use it, otherwise create a default. e.g. INDEX_tablename_field1_field2_.....
      • setCatalog

        public void setCatalog​(java.lang.String catalog)
        INTERNAL: Used for OX mapping.
      • setColumnList

        public void setColumnList​(java.lang.String columnList)
        INTERNAL: Used for OX mapping.
      • setColumnNames

        public void setColumnNames​(java.util.List<java.lang.String> columnNames)
        INTERNAL: Used for OX mapping.
      • setName

        public void setName​(java.lang.String name)
        INTERNAL: Used for OX mapping.
      • setSchema

        public void setSchema​(java.lang.String schema)
        INTERNAL: Used for OX mapping.
      • setTable

        public void setTable​(java.lang.String table)
        INTERNAL: Used for OX mapping.
      • setUnique

        public void setUnique​(java.lang.Boolean unique)
        INTERNAL: Used for OX mapping.