/** * Represents a value in a map. * @since 2.3 */ public interface ValueMetadata extends Metadata { /** * Method to set the column name. * * @param column Column name */ ValueMetadata setColumn(String column); /** * Accessor for the name of the column. * * @return The name */ String getColumn(); /** * Method to set the table name. * * @param table Table name */ ValueMetadata setTable(String table); /** * Accessor for the name of the table. * * @return The name */ String getTable(); /** * Method to set the delete action of the FK * * @param action Delete action of the FK */ ValueMetadata setDeleteAction(ForeignKeyAction action); /** * Accessor for the delete action of the FK * * @return The FK delete-action */ ForeignKeyAction getDeleteAction(); /** * Method to set the update action of the FK * * @param action Update action of the FK */ ValueMetadata setUpdateAction(ForeignKeyAction action); /** * Accessor for the update action of the FK * * @return The FK update-action */ ForeignKeyAction getUpdateAction(); /** * Accessor for all column(s) defined on the value. * * @return The column(s) */ ColumnMetadata[] getColumns(); /** * Add a new column for this value. * * @return The ColumnMetadata */ ColumnMetadata newColumnMetadata(); /** * Method to set new embedded metadata for the value. * * @return The EmbeddedMetadata */ EmbeddedMetadata newEmbeddedMetadata(); /** * Accessor for any embedded metadata on this value * * @return The EmbeddedMetadata */ EmbeddedMetadata getEmbeddedMetadata(); /** * Method to set new index metadata for the value. * * @return The IndexMetadata */ IndexMetadata newIndexMetadata(); /** * Accessor for any index metadata on this value * * @return Index metadata */ IndexMetadata getIndexMetadata(); /** * Method to set new unique constraint metadata for the value * * @return The UniqueMetadata */ UniqueMetadata newUniqueMetadata(); /** * Accessor for any unique constraint metadata on this value. * * @return The UniqueMetadata */ UniqueMetadata getUniqueMetadata(); /** * Method to set new foreign key metadata for the value * * @return The ForeignKeyMetadata */ ForeignKeyMetadata newForeignKeyMetadata(); /** * Accessor for any foreign key metadata on this value. * * @return The ForeignKeyMetadata */ ForeignKeyMetadata getForeignKeyMetadata(); }