com.bea.p13n.rules.model
Class DateTimeBetweenModel

java.lang.Object
  extended by com.bea.p13n.model.Model
      extended by com.bea.p13n.model.XmlObjectModel
          extended by com.bea.p13n.rules.model.ClauseModel
              extended by com.bea.p13n.rules.model.DateTimeBetweenModel
All Implemented Interfaces
Serializable, Cloneable

public class DateTimeBetweenModel
extends ClauseModel

A clause model to represent one of three clauses for check if the current date/time is between 2 date/times. This supports the following clause types:

See Also
Serialized Form

Nested Class Summary
static class DateTimeBetweenModel.Recognizer
           
 
Nested classes/interfaces inherited from class com.bea.p13n.model.Model
Model.ChangeEvent, Model.ChangeListener, Model.ChangeSupport, Model.Debug
 
Field Summary
static String DATE_BETWEEN_CLAUSE_TYPE
           
static String DATETIME_BETWEEN_CLAUSE_TYPE
           
static String TIME_BETWEEN_CLAUSE_TYPE
           
 
Fields inherited from class com.bea.p13n.rules.model.ClauseModel
clauseType
 
Fields inherited from class com.bea.p13n.model.XmlObjectModel
copyRootXmlObject, instanceUri, isComplete
 
Fields inherited from class com.bea.p13n.model.Model
childrenModels, docModel, parentModel, roChildrenModels
 
Constructor Summary
DateTimeBetweenModel()
           
 
Method Summary
 void clearCachedData()
          Subclasses need to override this to clear out any cached data.
 org.apache.xmlbeans.XmlObject createNewXmlObject(String clauseType)
          Create a new, empty root object for the specified clauseType.
protected  boolean determineIsComplete()
          This is complete if top and bottom calendars are set.
 Calendar getBottom()
          Get the bottom time/date/time-instant of the range.
protected  Calendar getCalendar(int index)
           
 Calendar getTop()
          Get the top time/date/time-instant of the range.
 void setBottom(Calendar cal)
          Set the bottom value of the range.
protected  boolean setCalendar(int index, Calendar cal)
           
 void setTop(Calendar cal)
          Set the top value of the range.
 void setXmlObject(String clauseType, org.apache.xmlbeans.XmlObject clause)
          Initialize this clause model with a type and a root object.
 
Methods inherited from class com.bea.p13n.rules.model.ClauseModel
addBranch, addLiteral, addMethod, addMethodOrOperator, addOperator, addVariable, addVariableBinding, copy, getClauseType, getContainingRuleModel, getCopyXmlObject, initializeNew, isInActions, isInConditions, isValidTypeAlias, isValidVariableName, makeSafeCopy, toString
 
Methods inherited from class com.bea.p13n.model.XmlObjectModel
checkElement, childAdded, childRemoved, fixQName, getApplicationInstanceUri, getChild, getDocument, getLocalName, getParent, getQName, getRootXmlObject, isComplete, isNil, preRemove, propertyChanged, removeAllChildren, removeChild, setApplicationInstanceUri, setIsComplete, setIsComplete, setParent, setRootXmlObject
 
Methods inherited from class com.bea.p13n.model.Model
addChangeListener, addChild, addChild, clone, doubleEquals, equals, getChildren, getDebug, getDebug, getDocument, getParent, longEquals, removeChangeListener, removeChild, removeChild, removeEmpties, setDocument
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

TIME_BETWEEN_CLAUSE_TYPE

public static final String TIME_BETWEEN_CLAUSE_TYPE
See Also
Constants Summary

DATE_BETWEEN_CLAUSE_TYPE

public static final String DATE_BETWEEN_CLAUSE_TYPE
See Also
Constants Summary

DATETIME_BETWEEN_CLAUSE_TYPE

public static final String DATETIME_BETWEEN_CLAUSE_TYPE
See Also
Constants Summary
Constructor Detail

DateTimeBetweenModel

public DateTimeBetweenModel()
Method Detail

setXmlObject

public void setXmlObject(String clauseType,
                         org.apache.xmlbeans.XmlObject clause)
                  throws IllegalArgumentException
Description copied from class: ClauseModel
Initialize this clause model with a type and a root object.

This will fire ChangeEvents for clauseType and rootXmlObject.

Subclasses should override to call super.setXmlObject() and do any type checking and verification.

It is not expected that ClauseModel's are valid after an call to this method which throws an exception, although the caller could recall this method with valid data.

Overrides:
setXmlObject in class ClauseModel
Parameters
clauseType - the clause type of the clause.
clause - the root xml object of the clause.
Throws
IllegalArgumentException - thrown if the clause is not valid for the ClauseModel or clauseType.

createNewXmlObject

public org.apache.xmlbeans.XmlObject createNewXmlObject(String clauseType)
                                                 throws IllegalArgumentException
Description copied from class: ClauseModel
Create a new, empty root object for the specified clauseType.

Subclasses need to implement this to create an appropriately typed and filled root XmlObject which represents the ClauseModel. The return value from this needs to be accepted from ClauseModel.setXmlObject(java.lang.String, org.apache.xmlbeans.XmlObject) for the specified clauseType.

Specified by:
createNewXmlObject in class ClauseModel
Parameters
clauseType - the clause type of the clause.
Returns
a new, empty initialize root object.
Throws
IllegalArgumentException - thrown on an unsupproted clauseType.

clearCachedData

public void clearCachedData()
Description copied from class: XmlObjectModel
Subclasses need to override this to clear out any cached data. This will be automatically called when the root XmlObject or clauseType changes.

Specified by:
clearCachedData in class XmlObjectModel

getBottom

public Calendar getBottom()
Get the bottom time/date/time-instant of the range.

Returns
the calendar of the bottom of the range, or null if not set.

getTop

public Calendar getTop()
Get the top time/date/time-instant of the range.

Returns
the calendar of the top of the range, or null if not set.

getCalendar

protected Calendar getCalendar(int index)

setBottom

public void setBottom(Calendar cal)
Set the bottom value of the range.


setTop

public void setTop(Calendar cal)
Set the top value of the range.


setCalendar

protected boolean setCalendar(int index,
                              Calendar cal)

determineIsComplete

protected boolean determineIsComplete()
This is complete if top and bottom calendars are set.

Overrides:
determineIsComplete in class XmlObjectModel


Copyright © 2000, 2009, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its affiliates.
Other names may be trademarks of their respective owners.