Namespace icm.model.properties.controller.ControllerManager

Registry manager that is used to retrieve the registry for editor controls rendered in the view.


Defined in: <icm/widget/properties/registry/RegistryManager.js>.

Constructor Summary

Constructor Attributes Constructor Name and Description
 

Method Summary

Method Attributes Method Name and Description
<static>  
icm.model.properties.controller.ControllerManager.bind(editable)
Obtains a property collection controller that is bound to the specified editable object.
<static>  
icm.model.properties.controller.ControllerManager.getCaseIntegration()
Returns the controller integration object used for binding controller objects to case properties.
<static>  
icm.model.properties.controller.ControllerManager.getIntegration()
Returns a pseudo controller integration object used for binding controller objects to case properties, task properties and workflow fields.
<static>  
icm.model.properties.controller.ControllerManager.getTaskIntegration()
Returns the controller integration object used for binding controller objects to task properties.
<static>  
icm.model.properties.controller.ControllerManager.getWorkflowIntegration()
Returns the controller integration object used for binding controller objects to workflow fields.
<static>  
icm.model.properties.controller.ControllerManager.mergeConfiguration(config)
Merges a custom integration configuration into all Integration objects supported by the ControllerManager to register custom data types and controllers.
<static>  
icm.model.properties.controller.ControllerManager.unbind(editable)
Releases the property collection controller binding for the specified editable object.

Constructor Detail

icm.model.properties.controller.ControllerManager

Method Detail

<static> icm.model.properties.controller.ControllerManager.bind(editable)

Obtains a property collection controller that is bound to the specified editable object.

There can be only one property collection controller for each editable object. This property collection controller is shared by all callers of this method. If the property collection controller associated with the editable object does not yet exist when this method is called, it is created and bound to the editable. Otherwise, the existing property collection controller is returned.

Property collection controllers obtained in this manner must be released via the unbind method to prevent memory leaks and other side effects.


Defined in: <icm/model/properties/controller/ControllerManager.js>.
Parameters:
editable
The editable model object.
Returns:
A icm.model.properties.controller.PropertyCollectionController object

<static> icm.model.properties.controller.ControllerManager.getCaseIntegration()

Returns the controller integration object used for binding controller objects to case properties.

A custom application may wish to augment this controller integration in some manner to enable additional features in the controller layer. The following code illustrates how this can be done.

var caseIntegration = ControllerManager.getCaseIntegration();
caseIntegration.mergeConfiguration(customCaseConfiguration);

Since the custom configuration settings are merged into the controller manager's case integration, they will be applied to all property collection controllers obtained thereafter.

This sort of customization should only be applied during the initialization stage of the application before any calls to the ControllerManager.bind method.


Defined in: <icm/model/properties/controller/ControllerManager.js>.
Returns:
The case controller integration object.

<static> icm.model.properties.controller.ControllerManager.getIntegration()

Returns a pseudo controller integration object used for binding controller objects to case properties, task properties and workflow fields.

In earlier versions, a single controller integration object was used for all types of properties. Typically, you would retrieve this object and call its mergeConfiguration method. However, separate controller integration objects are now used for each type of property. To maintain backwards compatibility, this method must return an object that supports mergeConfiguration method for all types of properties.
Defined in: <icm/model/properties/controller/ControllerManager.js>.

Deprecated:
Use the ControllerManager#mergeConfiguration method instead.
Returns:
The pseudo controller integration object.

<static> icm.model.properties.controller.ControllerManager.getTaskIntegration()

Returns the controller integration object used for binding controller objects to task properties.

A custom application may wish to augment this controller integration in some manner to enable additional features in the controller layer. The following code illustrates how this can be done.

var taskIntegration = ControllerManager.getTaskIntegration();
taskIntegration.mergeConfiguration(customTaskConfiguration);

Since the custom configuration settings are merged into the controller manager's task integration, they will be applied to all property collection controllers obtained thereafter.

This sort of customization should only be applied during the initialization stage of the application before any calls to the ControllerManager.bind method.


Defined in: <icm/model/properties/controller/ControllerManager.js>.
Returns:
The task controller integration object.

<static> icm.model.properties.controller.ControllerManager.getWorkflowIntegration()

Returns the controller integration object used for binding controller objects to workflow fields.

A custom application may wish to augment this controller integration in some manner to enable additional features in the controller layer. The following code illustrates how this can be done.

var workflowIntegration = ControllerManager.getWorkflowIntegration();
workflowIntegration.mergeConfiguration(customWorkflowConfiguration);

Since the custom configuration settings are merged into the controller manager's workflow integration, they will be applied to all property collection controllers obtained thereafter.

This sort of customization should only be applied during the initialization stage of the application before any calls to the ControllerManager.bind method.


Defined in: <icm/model/properties/controller/ControllerManager.js>.
Returns:
The workflow controller integration object.

<static> icm.model.properties.controller.ControllerManager.mergeConfiguration(config)

Merges a custom integration configuration into all Integration objects supported by the ControllerManager to register custom data types and controllers.
Defined in: <icm/model/properties/controller/ControllerManager.js>.
Parameters:
config
The integration configuration.

<static> icm.model.properties.controller.ControllerManager.unbind(editable)

Releases the property collection controller binding for the specified editable object.

Property collection controllers must be released via this method to prevent memory leaks and other side effects.


Defined in: <icm/model/properties/controller/ControllerManager.js>.
Parameters:
editable
Either the editable model object or the icm.model.properties.controller.PropertyCollectionController object that is bound to it.