ERDDefaultIDAssignment Class Reference

Inherits er::directtoweb::assignments::ERDAssignment.

Collaboration diagram for ERDDefaultIDAssignment:

Collaboration graph
[legend]

List of all members.

Public Member Functions

NSArray dependentKeys (String keyPath)
 ERDDefaultIDAssignment (String key, Object value)
 ERDDefaultIDAssignment (EOKeyValueUnarchiver u)
Object idForEmbeddedPageConfiguration (D2WContext c)
Object idForEmbeddedProperty (D2WContext c)
Object idForForm (D2WContext c)
Object idForPageConfiguration (D2WContext c)
Object idForProperty (D2WContext c)
Object idForSection (D2WContext c)

Static Public Member Functions

static Object decodeWithKeyValueUnarchiver (EOKeyValueUnarchiver eokeyvalueunarchiver)

Static Public Attributes

static final Logger log = Logger.getLogger(ERDDefaultIDAssignment.class)

Static Protected Attributes

static final NSDictionary keys


Detailed Description

An assignment to auto-compute a unique(ish), human-readable DOM ids from the d2wContext for Selenium, CSS, Ajax, Javascript, etc. For Ajax updates you may also use this assignment to compute an updateContainerID key (by setting it to idForSection, idForPageConfiguration, etc. as required).

This assignment provids defaults for the following keys:

To use: Bind D2W component id binding to d2wContext.id (or d2wContext.idForProperty or d2wContext.idForSection, etc)

You may also override these auto computed id by setting rules for the above keys, if necessary.

Author:
mendis

Constructor & Destructor Documentation

ERDDefaultIDAssignment ( EOKeyValueUnarchiver  u  ) 

Public constructor

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

ERDDefaultIDAssignment ( String  key,
Object  value 
)

Public constructor

Parameters:
key context key
value of the assignment


Member Function Documentation

static Object decodeWithKeyValueUnarchiver ( EOKeyValueUnarchiver  eokeyvalueunarchiver  )  [static]

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

NSArray dependentKeys ( String  keyPath  ) 

Implementation of the ERDComputingAssignmentInterface. 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.

Implements ERDComputingAssignmentInterface.

Object idForEmbeddedPageConfiguration ( D2WContext  c  ) 

A DOM id based on the pageConfig + primaryKey

Parameters:
c d2w context
Returns:
an id representing the <task, entity, pk>

Object idForEmbeddedProperty ( D2WContext  c  ) 

a DOM id based on the triple <task, entity, propertyKey, pk>

Parameters:
c d2w context
Returns:
an id representing the <task, entity, propertyKey, pk>
TODO Maybe change to pageConfig + propertyKey?

Object idForForm ( D2WContext  c  ) 

A DOM id based on the pageConfig

Parameters:
c d2w context
Returns:
an id representing the form for the d2w page

Object idForPageConfiguration ( D2WContext  c  ) 

A DOM id based on the pageConfig

Parameters:
c d2w context
Returns:
an id representing the <task, entity>

Object idForProperty ( D2WContext  c  ) 

a DOM id based on the triple <task, entity, propertyKey>

Parameters:
c d2w context
Returns:
an id representing the <task, entity, propertyKey>
TODO Maybe change to pageConfig + propertyKey?

Object idForSection ( D2WContext  c  ) 

A DOM id based on the pageConfig and sectionKey

Parameters:
c d2w context
Returns:
an id representing the section in a tab page


Member Data Documentation

final NSDictionary keys [static, protected]

Initial value:

 ERXDictionaryUtilities.dictionaryWithObjectsAndKeys( new Object [] {
        new NSArray(new Object[] {"propertyKey", "task", "entity.name"}), "idForProperty",
        new NSArray(new Object[] {"pageConfiguration", "task", "entity.name", "sectionKey"}), "idForSection",
        new NSArray(new Object[] {"pageConfiguration", "task", "entity.name"}), "idForPageConfiguration",
        new NSArray(new Object[] {"pageConfiguration", "task", "entity.name", "object"}), "idForEmbeddedPageConfiguration",
        new NSArray(new Object[] {"propertyKey", "task", "entity.name", "object"}), "idForEmbeddedProperty",
        new NSArray(new Object[] {"pageConfiguration", "task", "entity.name"}), "idForForm",
    })
holds the array of keys this assignment depends upon

final Logger log = Logger.getLogger(ERDDefaultIDAssignment.class) [static]

logging support

Reimplemented from ERDAssignment.


The documentation for this class was generated from the following file:

Generated on Sat May 26 06:42:50 2012 for Project Wonder by  doxygen 1.5.8