Class ScriptedAttributeDefinition

All Implemented Interfaces:
AttributeDefinition, ResolverPlugin<IdPAttribute>, Component, DestructableComponent, IdentifiableComponent, IdentifiedComponent, InitializableComponent, UnmodifiableComponent, DisposableBean

@ThreadSafe public class ScriptedAttributeDefinition extends AbstractAttributeDefinition
An AttributeDefinition that executes a script in order to populate the values of the generated attribute.

The evaluated script has access to the following information:

  • A script attribute whose name is the ID of this attribute definition and whose value is a newly constructed IdPAttribute.
  • A script attribute whose name is context and whose value is the current AttributeResolutionContext
  • A script attribute for every attribute produced by the dependencies of this attribute definition. The name of the script attribute is the ID of the IdPAttribute and its value is the List of IdPAttributeValue for the attribute.

The evaluated script should populate the values of the newly constructed IdPAttribute mentioned above. No other information from the script will be taken in to account.