Class ScanningAppProvider

  • All Implemented Interfaces:
    AppProvider, org.eclipse.jetty.util.component.LifeCycle
    Direct Known Subclasses:
    WebAppProvider

    @ManagedObject("Abstract Provider for loading webapps")
    public abstract class ScanningAppProvider
    extends org.eclipse.jetty.util.component.AbstractLifeCycle
    implements AppProvider
    • Nested Class Summary

      • Nested classes/interfaces inherited from class org.eclipse.jetty.util.component.AbstractLifeCycle

        org.eclipse.jetty.util.component.AbstractLifeCycle.AbstractLifeCycleListener
      • Nested classes/interfaces inherited from interface org.eclipse.jetty.util.component.LifeCycle

        org.eclipse.jetty.util.component.LifeCycle.Listener
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected java.io.FilenameFilter _filenameFilter  
      • Fields inherited from class org.eclipse.jetty.util.component.AbstractLifeCycle

        FAILED, RUNNING, STARTED, STARTING, STOPPED, STOPPING
    • Field Detail

      • _filenameFilter

        protected java.io.FilenameFilter _filenameFilter
    • Constructor Detail

      • ScanningAppProvider

        protected ScanningAppProvider()
      • ScanningAppProvider

        protected ScanningAppProvider​(java.io.FilenameFilter filter)
    • Method Detail

      • setFilenameFilter

        protected void setFilenameFilter​(java.io.FilenameFilter filter)
      • getDeployedApps

        protected java.util.Map<java.lang.String,​App> getDeployedApps()
        Returns:
        The index of currently deployed applications.
      • createApp

        protected App createApp​(java.lang.String filename)
        Called by the Scanner.DiscreteListener to create a new App object. Isolated in a method so that it is possible to override the default App object for specialized implementations of the AppProvider.
        Parameters:
        filename - The file that is the context.xml. It is resolved by Resource.newResource(String)
        Returns:
        The App object for this particular context definition file.
      • doStart

        protected void doStart()
                        throws java.lang.Exception
        Overrides:
        doStart in class org.eclipse.jetty.util.component.AbstractLifeCycle
        Throws:
        java.lang.Exception
      • doStop

        protected void doStop()
                       throws java.lang.Exception
        Overrides:
        doStop in class org.eclipse.jetty.util.component.AbstractLifeCycle
        Throws:
        java.lang.Exception
      • exists

        protected boolean exists​(java.lang.String path)
      • fileAdded

        protected void fileAdded​(java.lang.String filename)
                          throws java.lang.Exception
        Throws:
        java.lang.Exception
      • fileChanged

        protected void fileChanged​(java.lang.String filename)
                            throws java.lang.Exception
        Throws:
        java.lang.Exception
      • fileRemoved

        protected void fileRemoved​(java.lang.String filename)
                            throws java.lang.Exception
        Throws:
        java.lang.Exception
      • getDeploymentManager

        public DeploymentManager getDeploymentManager()
        Get the deploymentManager.
        Returns:
        the deploymentManager
      • getMonitoredDirResource

        public org.eclipse.jetty.util.resource.Resource getMonitoredDirResource()
      • getMonitoredDirName

        public java.lang.String getMonitoredDirName()
      • getScanInterval

        @ManagedAttribute("scanning interval to detect changes which need reloaded")
        public int getScanInterval()
      • isRecursive

        @ManagedAttribute("recursive scanning supported")
        public boolean isRecursive()
      • setMonitoredResources

        public void setMonitoredResources​(java.util.List<org.eclipse.jetty.util.resource.Resource> resources)
      • getMonitoredResources

        public java.util.List<org.eclipse.jetty.util.resource.Resource> getMonitoredResources()
      • setMonitoredDirResource

        public void setMonitoredDirResource​(org.eclipse.jetty.util.resource.Resource resource)
      • addScannerListener

        public void addScannerListener​(org.eclipse.jetty.util.Scanner.Listener listener)
      • setMonitoredDirName

        public void setMonitoredDirName​(java.lang.String dir)
        Parameters:
        dir - Directory to scan for context descriptors or war files
      • setMonitoredDirectories

        public void setMonitoredDirectories​(java.util.Collection<java.lang.String> directories)
      • setRecursive

        protected void setRecursive​(boolean recursive)
      • setScanInterval

        public void setScanInterval​(int scanInterval)
      • scan

        @ManagedOperation(value="Scan the monitored directories",
                          impact="ACTION")
        public void scan()