org.axiondb

Interface Constraint

public interface Constraint extends Serializable

A database constraint, such as UNIQUE or NOT NULL.

Version: $Revision: 1.16 $ $Date: 2005/12/20 18:32:40 $

Author: Rodney Waldhoff James Strachan

Method Summary
booleanevaluate(RowEvent event)
Evaluate the given event under me.
booleanevaluate(RowEvent event, RowDecorator dec)
Evaluate the given event under me.
booleanevaluate(RowIterator oldRows, RowIterator newRows, Table table)
StringgetName()
Get my name.
StringgetType()
Get a human-readable descrption of the type of constraint I represent.
booleanisDeferrable()
Return whether or not I am deferrable.
booleanisDeferred()
Return whether or not I am deferred.
voidresolve(Database db, TableIdentifier table)
Resolve any unresolved org.axiondb.Selectableidentifiers I may have.
voidsetDeferrable(boolean deferrable)
Set whether or not I am deferrable.
voidsetDeferred(boolean deferred)
Set whether or not I am deferred.
voidsetName(String name)
Set my name.

Method Detail

evaluate

public boolean evaluate(RowEvent event)
Evaluate the given event under me. Returns false if the constraint I represent has been violated.

evaluate

public boolean evaluate(RowEvent event, RowDecorator dec)
Evaluate the given event under me. Returns false if the constraint I represent has been violated.

evaluate

public boolean evaluate(RowIterator oldRows, RowIterator newRows, Table table)

getName

public String getName()
Get my name.

getType

public String getType()
Get a human-readable descrption of the type of constraint I represent.

isDeferrable

public boolean isDeferrable()
Return whether or not I am deferrable.

isDeferred

public boolean isDeferred()
Return whether or not I am deferred. Deferred constraints are not evaluated until the transaction is committed.

resolve

public void resolve(Database db, TableIdentifier table)
Resolve any unresolved org.axiondb.Selectableidentifiers I may have.

setDeferrable

public void setDeferrable(boolean deferrable)
Set whether or not I am deferrable.

setDeferred

public void setDeferred(boolean deferred)
Set whether or not I am deferred. Deferred constraints are not evaluated until the transaction is committed. Throws an exception if I am not deferrableand deferred is true.

setName

public void setName(String name)
Set my name.