Annotation Type TrackableExtension
-
@Retention(RUNTIME) @Target(TYPE) @Documented public @interface TrackableExtension
Add one or moreTrackableBehaviorfeatures to aTrackabledomain.NOTE: if there is only a need to have basic auditing information and no additional tracking behavior, then this annotation should not be used. In that scenario, it is sufficient for the target domain to simply implement the
Trackableinterface.Generally, domain that is marked with a
TrackableBehavior.CATALOGis also marked withTrackableBehavior.SANDBOX, but this is not required. In the case where CATALOG is declared alone, user changes are immediately live (i.e production) and propagation is immediately launched to push changes to subordinate catalogs, where they become immediately live as well. This can be challenging for end applications that may want to conditionally accept the change. If the desire is to immediately deploy and propagate, but still allow end applications to utilize the promote/approve process for the incoming change, theContextInfo.isIgnoreNarrowing()should be used on the original user change with aTrackableExtensionextension declaration that includesTrackableBehavior.SANDBOX.Domain can be marked with
TrackableBehavior.SANDBOXalone, in which case, no catalog or application discrimination is executed or kept. This is generally the case where multitenancy features are not required.Domain can be marked with
TrackableBehavior.TENANTalone, or with some combination of others. Domain withTrackableBehavior.APPLICATIONwill always be implied to also beTrackableBehavior.TENANT, because an application always belongs to a tenant.If marked with both
TrackableBehavior.CATALOGandTrackableBehavior.APPLICATION, theTrackableBehavior.CATALOGbehavior will generally win, unless explicit code is introduced to leverage the application discrimination.Domain marked with
TrackableBehavior.CUSTOMER_CONTEXTmust NOT be also marked withTrackableBehavior.APPLICATION. The behavior of these discriminators is not compatible, asTrackableBehavior.CUSTOMER_CONTEXTitself may discriminate by one application, multiple applications, or no applications.- Author:
- Jeff Fischer
-
-
Required Element Summary
Required Elements Modifier and Type Required Element Description TrackableBehavior[]value
-
-
-
Element Detail
-
value
TrackableBehavior[] value
-
-