The following example assumes that a “commence” attribute exists and does the following:
Holds the time stamp value indicating when an event should be processed
Contains an integer or Java string time stamp value. See Time Syntax.
<policy xmlns:Timestamp="http://www.novell.com/nxsl/java/java.sql.Timestamp"
xmlns:TimestampUtil="http://www.novell.com/nxsl/java/com.novell.nds.dirxml.driver.jdbc.db.TimestampUtil"
xmlns:jdbc="urn:dirxml:jdbc">
<rule>
<description>Get commencement date from datasource.</description>
<conditions>
<and>
<if-xpath op="true">.</if-xpath>
</and>
</conditions>
<actions>
<do-set-local-variable name="commence">
<arg-string>
<token-src-attr class-name="User" name="commence"/>
</arg-string>
</do-set-local-variable>
</actions>
</rule>
<rule>
<description>Break if commencement date unavailable.</description>
<conditions>
<and>
<if-local-variable name="commence" op="equal"/>
</and>
</conditions>
<actions>
<do-break/>
</actions>
</rule>
<rule>
<description>Parse times.</description>
<conditions>
<and>
<if-xpath op="true">.</if-xpath>
</and>
</conditions>
<actions>
<do-set-local-variable name="dbTime">
<arg-object>
<token-xpath expression="Timestamp:valueOf(@jdbc:database-local-time)"/>
</arg-object>
</do-set-local-variable>
<do-set-local-variable name="eventTime">
<arg-object>
<token-xpath expression="Timestamp:valueOf($commence)"/>
</arg-object>
</do-set-local-variable>
</actions>
</rule>
<rule>
<description>Is commencement date after database time?</description>
<conditions>
<and>
<if-xpath op="true">.</if-xpath>
</and>
</conditions>
<actions>
<do-set-local-variable name="after">
<arg-string>
<token-xpath expression="TimestampUtil:after($eventTime, $dbTime)"/>
</arg-string>
</do-set-local-variable>
</actions>
</rule>
<rule>
<description>Retry if future event.</description>
<conditions>
<and>
<if-local-variable name="after" op="equal">true</if-local-variable>
</and>
</conditions>
<actions>
<do-status level="retry">
<arg-string>
<token-text xml:space="preserve">Future event detected.</token-text>
</arg-string>
</do-status>
</actions>
</rule>
</policy>