Package mgui.interfaces.projects
Class ProjectDirectory
java.lang.Object
mgui.interfaces.AbstractInterfaceObject
mgui.interfaces.projects.ProjectDirectory
- All Implemented Interfaces:
java.lang.Cloneable
,java.lang.Comparable<ProjectDirectory>
,InterfaceObject
,NamedObject
,TreeObject
,CleanableObject
,XMLObject
,IconObject
public class ProjectDirectory extends AbstractInterfaceObject implements java.lang.Comparable<ProjectDirectory>, IconObject, java.lang.Cloneable, XMLObject
Specifies a project directory, including its subdirectories and all prespecified data items that it contains.
- Since:
- 1.0
- Version:
- 1.0
- Author:
- Andrew Reid
-
Nested Class Summary
Nested classes/interfaces inherited from interface mgui.interfaces.xml.XMLObject
XMLObject.XMLEncoding, XMLObject.XMLType
-
Field Summary
Fields inherited from class mgui.interfaces.AbstractInterfaceObject
isDestroyed, tree_nodes
-
Constructor Summary
Constructors Constructor Description ProjectDirectory(java.lang.String path)
-
Method Summary
Modifier and Type Method Description void
addDataItem(ProjectDataItem item)
void
addSubdirectory(ProjectDirectory dir)
java.lang.Object
clone()
int
compareTo(ProjectDirectory dir)
ProjectDataItem
getDataItem(java.lang.String name)
java.util.ArrayList<ProjectDataItem>
getDataItems()
Returns a sorted list of this directory's prespecified data itemsjava.lang.String
getDirectoryName()
java.lang.String
getDTD()
Returns the Data Type Declaration (DTD) for this object's XML representationjava.lang.String
getLocalName()
Returns the local name associated with this XML object.javax.swing.Icon
getObjectIcon()
Returns theIcon
associated with this object.java.lang.String
getParentPath()
java.lang.String
getPath()
java.lang.String
getShortXML(int tab)
Returns a short XML representation of this object.java.util.ArrayList<ProjectDirectory>
getSubdirectories()
Returns a sorted list of this directory's subdirectoriesProjectDirectory
getSubdirectory(java.lang.String name)
java.lang.String
getTreeLabel()
Returns the label text to appear in a tree node.java.lang.String
getXML()
Returns this object's XML representation as a single string.java.lang.String
getXML(int tab)
Returns this object's XML representation as a single string.java.lang.String
getXMLSchema()
Returns the XML schema for this object's XML representationvoid
handleXMLElementEnd(java.lang.String localName)
Handles the end of an XML element.void
handleXMLElementStart(java.lang.String localName, org.xml.sax.Attributes attributes, XMLObject.XMLType type)
Handles the start of an XML element.void
handleXMLString(java.lang.String s)
Handles a string within an XML element.protected java.lang.String
replaceSeparators(java.lang.String path)
Replaces the separators (/ or \) with the file-system-specific separatorvoid
setDataItems(java.util.ArrayList<ProjectDataItem> list)
void
setFromDirectory(ProjectDirectory dir)
void
setPath(java.lang.String path)
void
setTreeNode(InterfaceTreeNode node)
Sets the children for this node'sInterfaceTreeNode
.java.lang.String
toString()
void
writeXML(int tab, java.io.Writer writer)
Writes the XML representation of this object to file.void
writeXML(int tab, java.io.Writer writer, ProgressUpdater progress_bar)
Writes the XML representation of this object to file, asXMLType.Normal
.void
writeXML(int tab, java.io.Writer writer, XMLOutputOptions options, ProgressUpdater progress_bar)
Writes the XML representation of this object to file.Methods inherited from class mgui.interfaces.AbstractInterfaceObject
clean, destroy, getName, isDestroyed, issueTreeNode, setName, updateTreeNodes
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Constructor Details
-
ProjectDirectory
public ProjectDirectory(java.lang.String path)
-
-
Method Details
-
getObjectIcon
public javax.swing.Icon getObjectIcon()Description copied from interface:IconObject
Returns theIcon
associated with this object.- Specified by:
getObjectIcon
in interfaceIconObject
- Returns:
-
getPath
public java.lang.String getPath() -
setPath
public void setPath(java.lang.String path) -
replaceSeparators
protected java.lang.String replaceSeparators(java.lang.String path)Replaces the separators (/ or \) with the file-system-specific separator- Parameters:
path
-- Returns:
-
getParentPath
public java.lang.String getParentPath() -
getDirectoryName
public java.lang.String getDirectoryName() -
addDataItem
-
getDataItem
-
setFromDirectory
-
setDataItems
-
getDataItems
Returns a sorted list of this directory's prespecified data items- Returns:
-
getSubdirectories
Returns a sorted list of this directory's subdirectories- Returns:
-
addSubdirectory
-
getSubdirectory
-
getTreeLabel
public java.lang.String getTreeLabel()Description copied from interface:TreeObject
Returns the label text to appear in a tree node.- Specified by:
getTreeLabel
in interfaceTreeObject
- Overrides:
getTreeLabel
in classAbstractInterfaceObject
- Returns:
-
setTreeNode
Description copied from interface:TreeObject
Sets the children for this node'sInterfaceTreeNode
.- Specified by:
setTreeNode
in interfaceTreeObject
- Overrides:
setTreeNode
in classAbstractInterfaceObject
-
compareTo
- Specified by:
compareTo
in interfacejava.lang.Comparable<ProjectDirectory>
-
toString
public java.lang.String toString()- Overrides:
toString
in classjava.lang.Object
-
clone
public java.lang.Object clone()- Overrides:
clone
in classjava.lang.Object
-
getDTD
public java.lang.String getDTD()Description copied from interface:XMLObject
Returns the Data Type Declaration (DTD) for this object's XML representationSee http://en.wikipedia.org/wiki/Document_Type_Definition for a description.
-
getXMLSchema
public java.lang.String getXMLSchema()Description copied from interface:XMLObject
Returns the XML schema for this object's XML representation- Specified by:
getXMLSchema
in interfaceXMLObject
- Returns:
-
getXML
public java.lang.String getXML()Description copied from interface:XMLObject
Returns this object's XML representation as a single string. NOTE: this is not feasible for larger objects and containers, thus may not be implemented for these objects. Use theXMLObject.writeXML(int,java.io.Writer,mgui.io.standard.xml.XMLOutputOptions,mgui.interfaces.ProgressUpdater)
functions to write larger objects to file. -
getXML
public java.lang.String getXML(int tab)Description copied from interface:XMLObject
Returns this object's XML representation as a single string. NOTE: this is not feasible for larger objects and containers, thus may not be implemented for these objects. Use theXMLObject.writeXML(int,java.io.Writer,mgui.io.standard.xml.XMLOutputOptions,mgui.interfaces.ProgressUpdater)
functions to write larger objects to file. -
handleXMLElementStart
public void handleXMLElementStart(java.lang.String localName, org.xml.sax.Attributes attributes, XMLObject.XMLType type) throws org.xml.sax.SAXExceptionDescription copied from interface:XMLObject
Handles the start of an XML element.- Specified by:
handleXMLElementStart
in interfaceXMLObject
- Parameters:
localName
- Local name of the elementattributes
- Set of element attributestype
- TheXMLType
of this element- Throws:
org.xml.sax.SAXException
-
handleXMLElementEnd
public void handleXMLElementEnd(java.lang.String localName) throws org.xml.sax.SAXExceptionDescription copied from interface:XMLObject
Handles the end of an XML element.- Specified by:
handleXMLElementEnd
in interfaceXMLObject
- Parameters:
localName
- Local name of the element- Throws:
org.xml.sax.SAXException
-
handleXMLString
public void handleXMLString(java.lang.String s) throws org.xml.sax.SAXExceptionDescription copied from interface:XMLObject
Handles a string within an XML element.- Specified by:
handleXMLString
in interfaceXMLObject
- Parameters:
s
- String to handle- Throws:
org.xml.sax.SAXException
-
getLocalName
public java.lang.String getLocalName()Description copied from interface:XMLObject
Returns the local name associated with this XML object.- Specified by:
getLocalName
in interfaceXMLObject
- Returns:
-
writeXML
public void writeXML(int tab, java.io.Writer writer, XMLOutputOptions options, ProgressUpdater progress_bar) throws java.io.IOExceptionDescription copied from interface:XMLObject
Writes the XML representation of this object to file. The basic contract for this method is that it should not write a newline character at its start or end. The default format ofXMLFormat.Ascii
will be used. -
writeXML
public void writeXML(int tab, java.io.Writer writer, ProgressUpdater progress_bar) throws java.io.IOExceptionDescription copied from interface:XMLObject
Writes the XML representation of this object to file, asXMLType.Normal
. The default format ofXMLFormat.Ascii
will be used. The basic contract for this method is that it should not write a newline character at its start or end. -
writeXML
public void writeXML(int tab, java.io.Writer writer) throws java.io.IOExceptionDescription copied from interface:XMLObject
Writes the XML representation of this object to file. The basic contract for this method is that it should not write a newline character at its start or end. The default format ofXMLFormat.Ascii
will be used. -
getShortXML
public java.lang.String getShortXML(int tab)Description copied from interface:XMLObject
Returns a short XML representation of this object.- Specified by:
getShortXML
in interfaceXMLObject
- Returns:
-