Advanced Customization > Business Logic Customization > Packages Customization > Identifying Users in Context Replication and Activating Replicated Users > Customization Points and Limitations
  
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.