ix.icore.domain
Class Constraint

java.lang.Object
  extended by ix.icore.AbstractAnnotatedObject
      extended by ix.icore.AbstractIXObject
          extended by ix.icore.domain.Constrainer
              extended by ix.icore.domain.Constraint
All Implemented Interfaces:
Annotated, IXObject, Sendable, java.io.Serializable, java.lang.Cloneable

public class Constraint
extends Constrainer
implements java.io.Serializable, java.lang.Cloneable, Sendable

A general-purpose container for constraint information. In most cases, the type and relation will together determine (in a fairly straightforward way) what the parameters should contain.

See Also:
Serialized Form

Field Summary
static Keyword ALL
           
protected  java.util.List parameters
           
protected  Symbol relation
           
protected  Name senderId
           
protected  Symbol type
           
 
Fields inherited from class ix.icore.AbstractAnnotatedObject
annotationListeners, annotations
 
Constructor Summary
Constraint()
           
Constraint(java.lang.String type, java.lang.String relation, java.util.List parameters)
          A constructor that takes the type and relation as strings and converts them to symbols.
Constraint(Symbol type, Symbol relation, java.util.List parameters)
           
 
Method Summary
 java.lang.Object clone()
           
 boolean equals(java.lang.Object x)
           
 ConstraintRange getConstraintRange()
           
 java.lang.Object getParameter(int i)
           
 java.util.List getParameters()
           
 LList getPattern()
           
 PatternAssignment getPatternAssignment()
           
 Symbol getRelation()
           
 Name getSenderId()
           
 TimeWindow getTimeWindow()
           
 Symbol getType()
           
 java.lang.Object getValue()
           
 int hashCode()
           
 Constraint instantiate(MatchEnv env, Function1 ifUnbound)
           
 void setParameters(java.util.List p)
           
 void setRelation(Symbol relation)
           
 void setSenderId(Name id)
           
 void setType(Symbol type)
           
 java.lang.String toString()
           
 
Methods inherited from class ix.icore.AbstractAnnotatedObject
addAnnotationListener, annMap, clearAnnotations, fireSetAnnotation, getAnnotation, getAnnotations, getComments, makeAnnMap, removeAnnotation, setAnnotation, setAnnotations, setComments, takeAnnotations
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface ix.icore.Annotated
addAnnotationListener, clearAnnotations, fireSetAnnotation, getAnnotation, getAnnotations, removeAnnotation, setAnnotation, setAnnotations, takeAnnotations
 

Field Detail

ALL

public static final Keyword ALL

type

protected Symbol type

relation

protected Symbol relation

parameters

protected java.util.List parameters

senderId

protected Name senderId
Constructor Detail

Constraint

public Constraint()

Constraint

public Constraint(Symbol type,
                  Symbol relation,
                  java.util.List parameters)

Constraint

public Constraint(java.lang.String type,
                  java.lang.String relation,
                  java.util.List parameters)
A constructor that takes the type and relation as strings and converts them to symbols.

Method Detail

getType

public Symbol getType()
Specified by:
getType in class Constrainer

setType

public void setType(Symbol type)

getRelation

public Symbol getRelation()
Specified by:
getRelation in class Constrainer

setRelation

public void setRelation(Symbol relation)

getParameters

public java.util.List getParameters()
Specified by:
getParameters in class Constrainer

setParameters

public void setParameters(java.util.List p)

getParameter

public java.lang.Object getParameter(int i)

getSenderId

public Name getSenderId()
Specified by:
getSenderId in interface Sendable

setSenderId

public void setSenderId(Name id)
Specified by:
setSenderId in interface Sendable

getPatternAssignment

public PatternAssignment getPatternAssignment()

getPattern

public LList getPattern()

getValue

public java.lang.Object getValue()

getConstraintRange

public ConstraintRange getConstraintRange()

getTimeWindow

public TimeWindow getTimeWindow()

instantiate

public Constraint instantiate(MatchEnv env,
                              Function1 ifUnbound)

clone

public java.lang.Object clone()
                       throws java.lang.CloneNotSupportedException
Specified by:
clone in interface Sendable
Overrides:
clone in class java.lang.Object
Throws:
java.lang.CloneNotSupportedException

hashCode

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

equals

public boolean equals(java.lang.Object x)
Overrides:
equals in class java.lang.Object

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object