Class JCRNodeChangeEventHandler

java.lang.Object
com.adobe.acs.commons.httpcache.invalidator.event.JCRNodeChangeEventHandler
All Implemented Interfaces:
org.apache.sling.api.resource.observation.ExternalResourceChangeListener, org.apache.sling.api.resource.observation.ResourceChangeListener, org.osgi.service.event.EventHandler

@Property(label="JCR paths to watch for changes. (legacy)",description="Paths expressed in LDAP syntax. Example: (|(path=/content*)(path=/etc*)) - Watches for changes under /content or /etc. This is deprecated - consider using resource.paths instead for better performance.",name="event.filter") @Property(label="JCR paths to watch for changes.",value={"/content","/etc"},description="List of paths to watch. Entries with the \'glob:\' prefix are interpreted as globs, i.e. the * and ** wildcards are supported.",name="resource.paths") @Property(label="Type of change to listen to",value={"ADDED","REMOVED","CHANGED"},name="resource.change.types") @Property(name="webconsole.configurationFactory.nameHint",value="JCR paths to watch for changes: {event.filter} {resource.paths}",propertyPrivate=true) public class JCRNodeChangeEventHandler extends Object implements org.osgi.service.event.EventHandler, org.apache.sling.api.resource.observation.ResourceChangeListener, org.apache.sling.api.resource.observation.ExternalResourceChangeListener
Sample http cache invalidation job creator. Creates invalidation job when there is a change in JCR repository. Cache invalidation events could be sling event handlers, sling filter to trap replication events, workflow steps, etc. Invalidation event creates and starts Invalidation jobs.

This is modeled as a sling observer which listens to any change in paths (by default) -- /content, /etc and creates an invalidation job. The intention of this invalidation job is that whenever there is any change in the above said paths, the configured cache needs to be invalidated.

  • Field Summary

    Fields inherited from interface org.apache.sling.api.resource.observation.ResourceChangeListener

    CHANGE_ADDED, CHANGE_CHANGED, CHANGE_PROVIDER_ADDED, CHANGE_PROVIDER_REMOVED, CHANGE_REMOVED, CHANGES, PATHS, PROPERTY_NAMES_HINT
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected void
    activate(org.osgi.framework.BundleContext context, Map<String,Object> config)
     
    protected void
     
    void
    handleEvent(org.osgi.service.event.Event event)
     
    void
    onChange(List<org.apache.sling.api.resource.observation.ResourceChange> changes)
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • JCRNodeChangeEventHandler

      public JCRNodeChangeEventHandler()
  • Method Details

    • activate

      @Activate protected void activate(org.osgi.framework.BundleContext context, Map<String,Object> config)
    • deactivate

      @Deactivate protected void deactivate()
    • handleEvent

      public void handleEvent(org.osgi.service.event.Event event)
      Specified by:
      handleEvent in interface org.osgi.service.event.EventHandler
    • onChange

      public void onChange(List<org.apache.sling.api.resource.observation.ResourceChange> changes)
      Specified by:
      onChange in interface org.apache.sling.api.resource.observation.ResourceChangeListener