Package uk.ac.starlink.datanode.nodes
Class FileDataNode
- java.lang.Object
-
- uk.ac.starlink.datanode.nodes.DefaultDataNode
-
- uk.ac.starlink.datanode.nodes.FileDataNode
-
- All Implemented Interfaces:
DataNode
public class FileDataNode extends DefaultDataNode
ADataNode
representing a file or directory in the Unix file system. If theFileDataNode
represents a directory, then its children are the files which it contains.- Version:
- $Id$
- Author:
- Mark Taylor (Starlink)
-
-
Constructor Summary
Constructors Constructor Description FileDataNode(java.io.File file)
Initialises aFileDataNode
from aFile
object.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
allowsChildren()
The DefaultDataNode implementation of this method returns false.void
configureDetail(DetailViewer dv)
No custom configuration is performed.java.util.Iterator
getChildIterator()
The DefaultDataNode implementation of this method throws UnsupportedOperationException (DefaultDataNode.allowsChildren()
is false).java.lang.String
getName()
Gets the name of this object.java.lang.String
getNodeTLA()
Returns either "DIR" or "FILE" for a directory or non-directory file respectively.java.lang.String
getNodeType()
Returns a short sentence indicating what kind of node this is.java.lang.Object
getParentObject()
Returns an object which is in some sense the parent of the one this node is based on.java.lang.String
getPathElement()
The DefaultDataNode implementation returns the label as a default path element.java.lang.String
getPathSeparator()
Returns a default separator string.static void
setShowHidden(boolean showHidden)
Determines whether hidden files are included in the list of children of a directory file node.-
Methods inherited from class uk.ac.starlink.datanode.nodes.DefaultDataNode
beep, getChildMaker, getCreator, getDataObject, getDescription, getIcon, getLabel, hasDataObject, makeChild, makeErrorChild, registerDataObject, setChildMaker, setCreator, setDescription, setIconID, setLabel, setName, setParentObject, toString
-
-
-
-
Constructor Detail
-
FileDataNode
public FileDataNode(java.io.File file) throws NoSuchDataException
Initialises aFileDataNode
from aFile
object.- Parameters:
file
- aFile
object representing the file from which the node is to be created- Throws:
NoSuchDataException
-
-
Method Detail
-
allowsChildren
public boolean allowsChildren()
Description copied from class:DefaultDataNode
The DefaultDataNode implementation of this method returns false.- Specified by:
allowsChildren
in interfaceDataNode
- Overrides:
allowsChildren
in classDefaultDataNode
- Returns:
true
if the node is of a type which can have child nodes,false
otherwise
-
getChildIterator
public java.util.Iterator getChildIterator()
Description copied from class:DefaultDataNode
The DefaultDataNode implementation of this method throws UnsupportedOperationException (DefaultDataNode.allowsChildren()
is false).- Specified by:
getChildIterator
in interfaceDataNode
- Overrides:
getChildIterator
in classDefaultDataNode
- Returns:
- an
Iterator
over the children. Each object iterated over should be aDataNode
. Behaviour is undefined if this method is called on an object for whichallowsChildren
returnsfalse
.
-
getParentObject
public java.lang.Object getParentObject()
Description copied from interface:DataNode
Returns an object which is in some sense the parent of the one this node is based on. The parent is not a DataNode, it is something which may get fed to a DataNodeFactory to create DataNode. If no such object exists, which may well be the case, null should be returned.- Specified by:
getParentObject
in interfaceDataNode
- Overrides:
getParentObject
in classDefaultDataNode
- Returns:
- an object which is the parent of this one, or null
-
getName
public java.lang.String getName()
Description copied from interface:DataNode
Gets the name of this object. This is an intrinsic property of the object.- Specified by:
getName
in interfaceDataNode
- Overrides:
getName
in classDefaultDataNode
- Returns:
- the name of the object
-
getPathElement
public java.lang.String getPathElement()
Description copied from class:DefaultDataNode
The DefaultDataNode implementation returns the label as a default path element.- Specified by:
getPathElement
in interfaceDataNode
- Overrides:
getPathElement
in classDefaultDataNode
- Returns:
- the node's label
-
getPathSeparator
public java.lang.String getPathSeparator()
Description copied from class:DefaultDataNode
Returns a default separator string.- Specified by:
getPathSeparator
in interfaceDataNode
- Overrides:
getPathSeparator
in classDefaultDataNode
- Returns:
- "."
-
getNodeTLA
public java.lang.String getNodeTLA()
Returns either "DIR" or "FILE" for a directory or non-directory file respectively.- Specified by:
getNodeTLA
in interfaceDataNode
- Overrides:
getNodeTLA
in classDefaultDataNode
- Returns:
- a short description of the file type
-
getNodeType
public java.lang.String getNodeType()
Description copied from interface:DataNode
Returns a short sentence indicating what kind of node this is. The return value should be just a few words. As a rough guideline it should indicate what the implementing class is.- Specified by:
getNodeType
in interfaceDataNode
- Overrides:
getNodeType
in classDefaultDataNode
- Returns:
- a short description of the type of this
DataNode
-
setShowHidden
public static void setShowHidden(boolean showHidden)
Determines whether hidden files are included in the list of children of a directory file node.- Parameters:
showHidden
- true iff you want hidden files to be included in the child list
-
configureDetail
public void configureDetail(DetailViewer dv)
Description copied from class:DefaultDataNode
No custom configuration is performed.- Specified by:
configureDetail
in interfaceDataNode
- Overrides:
configureDetail
in classDefaultDataNode
- Parameters:
dv
- the detail viewer which this node is given an opportunity to configure
-
-