org.eclipse.jst.jsf.core.internal.provisional.jsfappconfig
Class AbstractJSFAppConfigLocater

java.lang.Object
  extended byorg.eclipse.jst.jsf.core.internal.provisional.jsfappconfig.AbstractJSFAppConfigLocater
All Implemented Interfaces:
IJSFAppConfigLocater
Direct Known Subclasses:
ImplicitRuntimeJSFAppConfigLocater, RuntimeClasspathJSFAppConfigLocater, WebContentRelativeJSFAppConfigLocater

public abstract class AbstractJSFAppConfigLocater
extends java.lang.Object
implements IJSFAppConfigLocater

Abstract implementation of IJSFAppConfigLocater that provides common locater functionality. IJSFAppConfigLocater implementations should extend this class or provide similar functionality.


Field Summary
protected  java.util.Set configProviders
          Set of known IJSFAppConfigProvider instances.
protected  JSFAppConfigManager manager
          JSFAppConfigManager instance to which this locater belongs.
 
Constructor Summary
AbstractJSFAppConfigLocater()
           
 
Method Summary
protected  boolean addConfigProvider(IJSFAppConfigProvider configProvider)
          Adds an IJSFAppConfigProvider instance to the set of known instances and notifies JSFAppConfigManager instance of the addition if successful.
protected  void finalize()
           
 JSFAppConfigManager getJSFAppConfigManager()
          Gets the JSFAppConfigManager instance to which this locater belongs.
 java.util.Set getJSFAppConfigProviders()
          Gets the set of IJSFAppConfigProvider instances that this locater has located.
protected  void removeAllConfigProviders()
          Removes all IJSFAppConfigProvider instances from the known set, sending notification of all removals to the JSFAppConfigManager instance.
protected  boolean removeConfigProvider(IJSFAppConfigProvider configProvider)
          Removes an IJSFAppConfigProvider instance from the set of known instances and notifies JSFAppConfigManager instance of the removal if successful.
 void setJSFAppConfigManager(JSFAppConfigManager manager)
          Sets the JSFAppConfigManager instance to which this locater belongs.
abstract  void startLocating()
          Starts locating JSF application configuration resources.
abstract  void stopLocating()
          Stops locating JSF application configuration resources.
protected  void updateConfigProviders(java.util.Set newConfigProviders)
          Updates known set of IJSFAppConfigProvider instances by removing instances that are in the existing set but not in the passed set and adding instances that are in the passed set but not in the existing set.
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

manager

protected JSFAppConfigManager manager
JSFAppConfigManager instance to which this locater belongs.


configProviders

protected java.util.Set configProviders
Set of known IJSFAppConfigProvider instances.

Constructor Detail

AbstractJSFAppConfigLocater

public AbstractJSFAppConfigLocater()
Method Detail

setJSFAppConfigManager

public void setJSFAppConfigManager(JSFAppConfigManager manager)
Description copied from interface: IJSFAppConfigLocater
Sets the JSFAppConfigManager instance to which this locater belongs.

Specified by:
setJSFAppConfigManager in interface IJSFAppConfigLocater
Parameters:
manager - JSFAppConfigManager instance to be set.

getJSFAppConfigManager

public JSFAppConfigManager getJSFAppConfigManager()
Description copied from interface: IJSFAppConfigLocater
Gets the JSFAppConfigManager instance to which this locater belongs.

Specified by:
getJSFAppConfigManager in interface IJSFAppConfigLocater
Returns:
JSFAppConfigManager instance to which this locater belongs.

startLocating

public abstract void startLocating()
Description copied from interface: IJSFAppConfigLocater
Starts locating JSF application configuration resources.

Specified by:
startLocating in interface IJSFAppConfigLocater

stopLocating

public abstract void stopLocating()
Description copied from interface: IJSFAppConfigLocater
Stops locating JSF application configuration resources.

Specified by:
stopLocating in interface IJSFAppConfigLocater

getJSFAppConfigProviders

public java.util.Set getJSFAppConfigProviders()
Description copied from interface: IJSFAppConfigLocater
Gets the set of IJSFAppConfigProvider instances that this locater has located.

Specified by:
getJSFAppConfigProviders in interface IJSFAppConfigLocater
Returns:
set of IJSFAppConfigProvider instances.

addConfigProvider

protected boolean addConfigProvider(IJSFAppConfigProvider configProvider)
Adds an IJSFAppConfigProvider instance to the set of known instances and notifies JSFAppConfigManager instance of the addition if successful.

Parameters:
configProvider - IJSFAppConfigProvider instance to be added.
Returns:
true if instance was added, else false.

removeConfigProvider

protected boolean removeConfigProvider(IJSFAppConfigProvider configProvider)
Removes an IJSFAppConfigProvider instance from the set of known instances and notifies JSFAppConfigManager instance of the removal if successful.

Parameters:
configProvider - IJSFAppConfigProvider instance to be removed.
Returns:
true if instance was removed, else false.

updateConfigProviders

protected void updateConfigProviders(java.util.Set newConfigProviders)
Updates known set of IJSFAppConfigProvider instances by removing instances that are in the existing set but not in the passed set and adding instances that are in the passed set but not in the existing set. Instances that are in both the existing set and the passed set are left unchanged. The JSFAppConfigManager is notified of removals and additions, and no notification is sent for instances that are left unchanged.

Parameters:
newConfigProviders - New set of IJSFAppConfigProvider instances.

removeAllConfigProviders

protected void removeAllConfigProviders()
Removes all IJSFAppConfigProvider instances from the known set, sending notification of all removals to the JSFAppConfigManager instance.


finalize

protected void finalize()