Project Wonder 2.0

er.directtoweb
Class ERDDelayedNonNullConditionalAssignment

java.lang.Object
  extended bycom.webobjects.directtoweb.Assignment
      extended byer.directtoweb.ERDDelayedAssignment
          extended byer.directtoweb.ERDDelayedNonNullConditionalAssignment
All Implemented Interfaces:
EOKeyValueArchiving, Serializable

public class ERDDelayedNonNullConditionalAssignment
extends ERDDelayedAssignment

The delayed non-null conditional is a way to provide a branching result from a rule resolution. The value of this assignment must be a dictionary that has the following keys:

See Also:
Serialized Form

Nested Class Summary
 
Nested classes inherited from class com.webobjects.eocontrol.EOKeyValueArchiving
EOKeyValueArchiving._NullValueSupport, EOKeyValueArchiving._NumberSupport, EOKeyValueArchiving._TimestampSupport, EOKeyValueArchiving.Awaking, EOKeyValueArchiving.FinishInitialization, EOKeyValueArchiving.Support
 
Field Summary
static ERXLogger log
          logging support
 
Fields inherited from class com.webobjects.directtoweb.Assignment
KeyPathKey, ValueKey
 
Fields inherited from interface com.webobjects.eocontrol.EOKeyValueArchiving
_CLASS
 
Constructor Summary
ERDDelayedNonNullConditionalAssignment(EOKeyValueUnarchiver u)
          Public constructor
ERDDelayedNonNullConditionalAssignment(String key, Object value)
          Public constructor
 
Method Summary
static Object decodeWithKeyValueUnarchiver(EOKeyValueUnarchiver eokeyvalueunarchiver)
          Static constructor required by the EOKeyValueUnarchiver interface.
 NSArray dependentKeys(String keyPath)
          Implementation of the ERDComputingAssignmentInterface.
 Object fireNow(D2WContext c)
          Implementation of the abstract method from ERDDelayedAssignment.
 
Methods inherited from class er.directtoweb.ERDDelayedAssignment
fire
 
Methods inherited from class com.webobjects.directtoweb.Assignment
encodeWithKeyValueArchiver, keyPath, toString, value, value
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

log

public static final ERXLogger log
logging support

Constructor Detail

ERDDelayedNonNullConditionalAssignment

public ERDDelayedNonNullConditionalAssignment(EOKeyValueUnarchiver u)
Public constructor

Parameters:
u - key-value unarchiver used when unarchiving from rule files.

ERDDelayedNonNullConditionalAssignment

public ERDDelayedNonNullConditionalAssignment(String key,
                                              Object value)
Public constructor

Parameters:
key - context key
value - of the assignment
Method Detail

decodeWithKeyValueUnarchiver

public static Object decodeWithKeyValueUnarchiver(EOKeyValueUnarchiver eokeyvalueunarchiver)
Static constructor required by the EOKeyValueUnarchiver interface. If this isn't implemented then the default behavior is to construct the first super class that does implement this method. Very lame.

Parameters:
eokeyvalueunarchiver - to be unarchived
Returns:
decoded assignment of this class

dependentKeys

public NSArray dependentKeys(String keyPath)
Implementation of the ERDComputingAssignmentInterface. This assignment depends upon an array composed of the single value "nonNullKeyPath" from the dictionary of the value of this assignment. This array of keys is used when constructing the significant keys for the passed in keyPath.

Parameters:
keyPath - to compute significant keys for.
Returns:
array of context keys this assignment depends upon.

fireNow

public Object fireNow(D2WContext c)
Implementation of the abstract method from ERDDelayedAssignment. This method is called each time this Assignment is resolved from the rule firing cache. For the non-null conditional the dictionary key 'nonNullKeyPath' is checked against the current context. If the key path is indeed non-null then the object returned by the dictionarykey 'trueValue' will be returned otherwise the object returned by the dictionarykey 'falseValue' will be returned.

Specified by:
fireNow in class ERDDelayedAssignment
Parameters:
c - current D2W context
Returns:
Either the 'trueValeue' or 'falseValue' depending on if the key path is non-null or null.

Last updated: Do, Dez 9, 2004 • 12:46 PM CET

Copyright © 2002 – 2004 Project Wonder.