Customization Points and Limitations
wt.org.PrincipalMatchDelegate
All customized delegate implementations in this document must adhere to the contract established by this interface. Specialized delegate implementations can encapsulate rules specific to the installation.
WTPrincipal wt.org.PrincipalMatchDelegate.match(WTPrincipal querySpec) throws WTException
The PrincipalMatchDelegate interface specifies one single API: public WTPrincipal match(WTPrincipal querySpec) throws WTException;
This API finds a match among existing principals based on rules that are applicable to a usage context.
Parameter
|
Default Value
|
Possible Values
|
Required?
|
Description
|
querySpec
|
NA
|
WTPrincipal (WTUser, WTGroup, or WTOrganization)
See the Limitations section below.
|
Yes
|
The criteria to be used for matching must be initialized in corresponding attributes in a principal object of the desired type (user, group, or organization), which acts as the query specification
|
Return: WTPrincipal
|
|
|
|
The matching principal found based on any internal logic in the implementation. If a match is not found, a NULL result must be returned
|
Custom delegate can then be specified in the appropriate service configuration element:
<Service context="default" name="wt.org.delegate.PrincipalMatchDelegate">
<Option cardinality="singleton"
requestor="wt.org.WTUser"
selector="<<APPLICABLE_SELECTOR_VALUE>>"
serviceClass="<<CUSTOM_DELEGATE_CLASS>>"/>
</Service>
Limitations
• Each delegate implementation provided OOTB is only for use with a specific delegate selector context. The designated selector context is described in
Solution.
• Although the PrincipalMatchDelegate interface defines the contract for all WTPrincipal sub-classes, support for service delegate-based matching is currently only available with WTUser processing and only in the scenarios described here. Support for other sub-classes (WTGroup, WTOrganization) in these scenarios is not yet available via delegate-based processing. These are intended for future use.