org.eclipse.jetty.deploy.providers

## Class ScanningAppProvider

- java.lang.Object
- - org.eclipse.jetty.util.component.AbstractLifeCycle
  - - org.eclipse.jetty.deploy.providers.ScanningAppProvider

All Implemented Interfaces:
  AppProvider, LifeCycle

Direct Known Subclasses:
  ContextProvider, WebAppProvider

    public abstract class ScanningAppProvider
    extends AbstractLifeCycle
    implements AppProvider

### Nested Class Summary

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

`AbstractLifeCycle.AbstractLifeCycleListener`

### Nested classes/interfaces inherited from interface org.eclipse.jetty.util.component.LifeCycle

`LifeCycle.Listener`

### Field Summary

Fields
`protected FilenameFilter` `_filenameFilter`

### Fields inherited from class org.eclipse.jetty.util.component.AbstractLifeCycle

`_listeners, FAILED, RUNNING, STARTED, STARTING, STOPPED, STOPPING`

### Constructor Summary

Constructors
`protected` `ScanningAppProvider(FilenameFilter filter)`

### Method Summary

Methods
`void` `addScannerListener(Scanner.Listener listener)`
`protected App` `createApp(String filename)` Called by the Scanner.DiscreteListener to create a new App object.
`protected void` `doStart()`
`protected void` `doStop()`
`protected void` `fileAdded(String filename)`
`protected void` `fileChanged(String filename)`
`protected void` `fileRemoved(String filename)`
`protected Map<String,App>` `getDeployedApps()`
`DeploymentManager` `getDeploymentManager()` Get the deploymentManager.
`String` `getMonitoredDirName()`
`Resource` `getMonitoredDirResource()`
`int` `getScanInterval()`
`boolean` `isRecursive()`
`void` `setDeploymentManager(DeploymentManager deploymentManager)` Set the Deployment Manager
`void` `setMonitoredDir(String dir)` Deprecated. Use `setMonitoredDirName(String)`
`void` `setMonitoredDirName(String dir)`
`void` `setMonitoredDirResource(Resource contextsDir)`
`protected void` `setRecursive(boolean recursive)`
`void` `setScanInterval(int scanInterval)`

### Methods inherited from class org.eclipse.jetty.util.component.AbstractLifeCycle

`addLifeCycleListener, getState, getState, isFailed, isRunning, isStarted, isStarting, isStopped, isStopping, removeLifeCycleListener, start, stop`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Methods inherited from interface org.eclipse.jetty.deploy.AppProvider

`createContextHandler`

### Methods inherited from interface org.eclipse.jetty.util.component.LifeCycle

`addLifeCycleListener, isFailed, isRunning, isStarted, isStarting, isStopped, isStopping, removeLifeCycleListener, start, stop`

### Field Detail

#### _filenameFilter

    protected final FilenameFilter _filenameFilter

### Constructor Detail

#### ScanningAppProvider

    protected ScanningAppProvider(FilenameFilter filter)

### Method Detail

#### getDeployedApps

    protected Map<String,App> getDeployedApps()

Returns:
  The index of currently deployed applications.

#### createApp

    protected App createApp(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 Exception

Overrides:
  `doStart` in class `AbstractLifeCycle`
Throws:
  `Exception`

#### doStop

    protected void doStop()
                   throws Exception

Overrides:
  `doStop` in class `AbstractLifeCycle`
Throws:
  `Exception`

#### fileAdded

    protected void fileAdded(String filename)
                      throws Exception

Throws:
  `Exception`

#### fileChanged

    protected void fileChanged(String filename)
                        throws Exception

Throws:
  `Exception`

#### fileRemoved

    protected void fileRemoved(String filename)
                        throws Exception

Throws:
  `Exception`

#### getDeploymentManager

    public DeploymentManager getDeploymentManager()

Get the deploymentManager.

Returns:
  the deploymentManager

#### getMonitoredDirResource

    public Resource getMonitoredDirResource()

#### getMonitoredDirName

    public String getMonitoredDirName()

#### getScanInterval

    public int getScanInterval()

#### isRecursive

    public boolean isRecursive()

#### setDeploymentManager

    public void setDeploymentManager(DeploymentManager deploymentManager)

Description copied from interface: `AppProvider`
Set the Deployment Manager

Specified by:
  `setDeploymentManager` in interface `AppProvider`

#### setMonitoredDirResource

    public void setMonitoredDirResource(Resource contextsDir)

#### addScannerListener

    public void addScannerListener(Scanner.Listener listener)

#### setMonitoredDir

    public void setMonitoredDir(String dir)

Deprecated. Use `setMonitoredDirName(String)`

#### setMonitoredDirName

    public void setMonitoredDirName(String dir)

Parameters:
  `dir` - Directory to scan for context descriptors or war files

#### setRecursive

    protected void setRecursive(boolean recursive)

#### setScanInterval

    public void setScanInterval(int scanInterval)