--- /dev/null
+package com.quantum.model;
+
+import com.quantum.IQuantumConstants;
+
+/**
+ * @author BC
+ */
+public interface Entity extends BookmarkHolder {
+
+ public static final String TABLE_TYPE = IQuantumConstants.Table;
+ public static final String VIEW_TYPE = IQuantumConstants.View;
+ public static final String SEQUENCE_TYPE = IQuantumConstants.Sequence;
+
+ public String getName();
+ public String getSchema();
+ public String getType();
+ public Column[] getColumns();
+ public Index[] getIndexes();
+ public Column getColumn(String columnName);
+ /**
+ * Returns a String with the qualified name of the Entity.
+ * That is, "schema.name". The difference with getQualifiedName()
+ * is that the schema may be absent if it's not defined in the bookmark
+ */
+ public String getCondQualifiedName();
+
+ /**
+ * @return - TRUE if the entity exists in the database<br />
+ * - FALSE if the entity does not exist in the database<br />
+ * - null if it's not known whether or not the
+ * entity exists in the database.
+ */
+ public Boolean exists();
+ /**
+ * Some databases support mixed-case table names. Queries issued
+ * against these tables must be quoted.
+ * @return
+ */
+ public String getQuotedTableName();
+}