Class Nio2ModificationWatcher

java.lang.Object
org.apache.wicket.util.watch.ModificationWatcher
org.apache.wicket.core.util.watch.Nio2ModificationWatcher
All Implemented Interfaces:
IModificationWatcher

An extension of ModificationWatcher that removes the NotFound entries from the MarkupCache for newly created files. By default MarkupCache registers Markup.NO_MARKUP value for each requested but not found markup file. Later when the user creates the markup file the MarkupCache should be notified.
Since:
7.0.0
  • Constructor Details

    • Nio2ModificationWatcher

      public Nio2ModificationWatcher(Application application, Duration pollFrequency)
      Constructor.
      Parameters:
      application - The application that manages the caches
      pollFrequency - How often to check on IModifiables
  • Method Details

    • start

      public void start(Duration pollFrequency)
      Specified by:
      start in interface IModificationWatcher
      Overrides:
      start in class ModificationWatcher
    • checkCreated

      protected void checkCreated(org.slf4j.Logger log)
      Checks for newly created files and folders. New folders are registered to be watched. New files are removed from the MarkupCache because there could be Markup.NO_MARKUP (Not Found) entries for them already.
      Parameters:
      log - a logger that can be used to log the events
    • entryModified

      protected void entryModified(Path path, org.slf4j.Logger log)
      A callback method called when a new Path entry is modified
      Parameters:
      path - the modified path
      log - a logger that can be used to log the events
    • entryDeleted

      protected void entryDeleted(Path path, org.slf4j.Logger log)
      A callback method called when a new Path entry is deleted
      Parameters:
      path - the deleted path
      log - a logger that can be used to log the events
    • entryCreated

      protected void entryCreated(Path path, org.slf4j.Logger log)
      A callback method called when a new Path entry is created
      Parameters:
      path - the new path entry
      log - a logger that can be used to log the events
    • destroy

      public void destroy()
      Specified by:
      destroy in interface IModificationWatcher
      Overrides:
      destroy in class ModificationWatcher
    • getWatchedKinds

      protected WatchEvent.Kind[] getWatchedKinds(Path folder)
      Parameters:
      folder - the folder that will be watched
      Returns:
      an array of watch event kinds to use for the watching of the given folder