|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--org.sape.carbon.core.config.node.AbstractNode | +--org.sape.carbon.core.config.node.AbstractFolder | +--org.sape.carbon.services.config.classloader.ClassloaderFolder
Implementation of folder node for folders residing in classloader. As classloaders have no notion of folders, these nodes are not actually backed by information contained in the classloader. Copyright 2003 Sapient
Field Summary | |
static String |
CLASSLOADER_DELIMETER
string that delimits entry names in the jar |
private ConfigurationSource |
configSource
|
private static String |
CVS_DIR
|
private static Collection |
EXCLUDE_NODE_NAMES
|
private FileNodeFilter |
fileFilter
The filter used to obtain valid child entries that may be represented by JarNodes from the jarFile. |
private org.apache.commons.logging.Log |
log
Provides a handle to Apache-commons logger |
private static String |
META_INF_DIR
|
private String |
resourcePath
the full resource path of this folder |
Fields inherited from class org.sape.carbon.core.config.node.AbstractFolder |
|
Fields inherited from class org.sape.carbon.core.config.node.AbstractNode |
childNodes, nodeListeners |
Fields inherited from interface org.sape.carbon.core.config.node.Node |
DELIMITER |
Constructor Summary | |
ClassloaderFolder(Node parent,
String name,
NodeFactory subFolderFactory,
NodeFactory configurationDocumentFactory,
NodeFactory linkNodeFactory,
String resourcePath,
ConfigurationSource configSource)
Constructor for JarFolder. |
Method Summary | |
protected boolean |
backingDataExists()
As backing data never exists for classloader folders, the very existance of an instance of this class means the folder exists |
protected void |
destroyBackingData()
This implementation does nothing as classloaders have no concept of folders, so there is nothing to remove |
protected Set |
getAllChildNames()
There is no way to traverse the resources in the classloader to get all the children, so this implementation returns no children |
(package private) ConfigurationSource |
getConfigSource()
|
(package private) String |
getResourcePath()
Returns the entry name of this node. |
protected Node |
loadChild(String nodeName)
This is not synchronized because it is called from AbstractFolder.fetchChild which is synchronized |
private Node |
loadChildLinkNode(String nodeName)
Helper method used to create sub links |
private Node |
loadConfigurationDocument(String nodeName)
Helper method used to create sub config docs |
private Node |
loadSubFolder(String nodeName)
Helper method used to create sub folders |
Methods inherited from class org.sape.carbon.core.config.node.AbstractFolder |
addConfigurationDocument, addLink, addSubFolder, createNewConfigurationDocument, createNewFolder, getConfigurationDocumentFactory, getLinkNodeFactory, getSubFolderFactory, issueChildAddedEvent |
Methods inherited from class org.sape.carbon.core.config.node.AbstractNode |
addNodeListener, addNodeListener, addNodeListener, containsChild, fetchChild, fetchChildren, getAbsoluteName, getAddOrLoadChildLock, getAllowsChildren, getName, getParent, getReadOrAlterNodeLock, isRemoved, issueChildLoadedEvent, issueNodeRemovedEvent, refresh, remove, removeRemovedChildren, setRemoved, toString |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Methods inherited from interface org.sape.carbon.core.config.node.Node |
addNodeListener, addNodeListener, containsChild, fetchChild, fetchChildren, getAbsoluteName, getAllowsChildren, getName, getParent, isRemoved, refresh, remove |
Field Detail |
private org.apache.commons.logging.Log log
private String resourcePath
private FileNodeFilter fileFilter
JarNodes
from the jarFile.
private ConfigurationSource configSource
public static final String CLASSLOADER_DELIMETER
private static final Collection EXCLUDE_NODE_NAMES
private static final String META_INF_DIR
private static final String CVS_DIR
Constructor Detail |
public ClassloaderFolder(Node parent, String name, NodeFactory subFolderFactory, NodeFactory configurationDocumentFactory, NodeFactory linkNodeFactory, String resourcePath, ConfigurationSource configSource)
parent
- the parent of this foldername
- the name of this foldersubFolderFactory
- the factory for creating sub foldersconfigurationDocumentFactory
- the factory for creating documentslinkNodeFactory
- the factory for creating sub linksresourcePath
- Method Detail |
protected Node loadChild(String nodeName) throws NodeNotFoundException
loadChild
in class AbstractNode
nodeName
- the name of the node to load
NodeNotFoundException
- if the backing data for the specifed
node could not be found in the data store.AbstractNode.loadChild(String)
protected Set getAllChildNames()
getAllChildNames
in class AbstractNode
String
s, the names of all the childrenAbstractNode.getAllChildNames()
protected void destroyBackingData() throws NodeRemovalException
destroyBackingData
in class AbstractNode
NodeRemovalException
- indicates an error removing the nodeAbstractNode.destroyBackingData()
protected boolean backingDataExists()
backingDataExists
in class AbstractNode
String getResourcePath()
ConfigurationSource getConfigSource()
private Node loadSubFolder(String nodeName) throws NodeCreationException
nodeName
-
NodeCreationException
private Node loadConfigurationDocument(String nodeName) throws NodeCreationException
nodeName
-
NodeCreationException
private Node loadChildLinkNode(String nodeName) throws NodeCreationException
nodeName
-
NodeCreationException
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |