org.d2rq.db.op
Class AliasOp

java.lang.Object
  extended by org.d2rq.db.op.NamedOp
      extended by org.d2rq.db.op.AliasOp
All Implemented Interfaces:
Comparable<NamedOp>, DatabaseOp

public class AliasOp
extends NamedOp


Nested Class Summary
 
Nested classes/interfaces inherited from interface org.d2rq.db.op.DatabaseOp
DatabaseOp.Wrapper
 
Field Summary
 
Fields inherited from interface org.d2rq.db.op.DatabaseOp
TRUE
 
Method Summary
 void accept(OpVisitor visitor)
           
static AliasOp create(DatabaseOp original, String alias)
           
static AliasOp create(DatabaseOp original, TableName alias)
           
static AliasOp createWithUniqueName(DatabaseOp original, String baseName)
          Generates an alias for a given tabular with a unique name.
 boolean equals(Object o)
           
 List<ColumnName> getColumns()
           
 DataType getColumnType(ColumnName column)
           
 DatabaseOp getOriginal()
          Guaranteed not to be another AliasOp.
 ColumnName getOriginalColumnName(ColumnName aliasedName)
           
 Collection<Key> getUniqueKeys()
           
 int hashCode()
           
 boolean isNullable(ColumnName column)
           
 String toString()
           
 
Methods inherited from class org.d2rq.db.op.NamedOp
compareTo, getTableName, hasColumn
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Method Detail

create

public static AliasOp create(DatabaseOp original,
                             TableName alias)

create

public static AliasOp create(DatabaseOp original,
                             String alias)

createWithUniqueName

public static AliasOp createWithUniqueName(DatabaseOp original,
                                           String baseName)
Generates an alias for a given tabular with a unique name.

Parameters:
original - The DatabaseOp to be wrapped
baseName - A base name to be prepended to the unique name for readability
Returns:
An alias with a unique name (e.g., "BASENAME1234")

getOriginal

public DatabaseOp getOriginal()
Guaranteed not to be another AliasOp.


getOriginalColumnName

public ColumnName getOriginalColumnName(ColumnName aliasedName)

getColumns

public List<ColumnName> getColumns()
Returns:
Fully qualified column names if possible, no duplicates

isNullable

public boolean isNullable(ColumnName column)

getColumnType

public DataType getColumnType(ColumnName column)

getUniqueKeys

public Collection<Key> getUniqueKeys()

accept

public void accept(OpVisitor visitor)

toString

public String toString()
Overrides:
toString in class Object

hashCode

public int hashCode()
Overrides:
hashCode in class Object

equals

public boolean equals(Object o)
Overrides:
equals in class Object