Interface PropertyExtender


public interface PropertyExtender
Interface for implementing property extenders. A property extender is used to calculate additional properties based on the properties that are being changed on a node.

Contract:

By implementing this interface you take the responsibility to correctly implement Object.equals(java.lang.Object) and Object.hashCode() methods. This is required to ensure that only one instance of the extender is registered for specific business case, even if the PropertyExtendersHolder.registerExtender(PropertyExtender) is invoked many times.

The Object.toString() method should be implemented for logging purposes.

  • Method Details

    • calculate

      Calculate additional node properties.
      Parameters:
      context - the context of the calculation, which contains the property changes on a node.
      Returns:
      result containing calculated additional properties mapping. Empty map when no relevant properties were provided in the context.
      Throws:
      org.alfresco.error.AlfrescoRuntimeException - for expected calculation process failures.
      RuntimeException - for any unexpected errors during the calculation process.