Package net.sf.statcvs.model
Class Directory
- java.lang.Object
-
- net.sf.statcvs.model.Directory
-
- All Implemented Interfaces:
java.lang.Comparable
public abstract class Directory extends java.lang.Object implements java.lang.Comparable
Represents a directory in theRepository
, a container forVersionedFile
s and subDirectorys. A new root directory is created bycreateRoot()
. ThecreateSubdirectory(java.lang.String)
method creates new subdirectories. TODO: Rename getCurrentLOC to getCurrentLines or getCurrentLineCount- Version:
- $Id: Directory.java,v 1.11 2008/04/02 11:22:16 benoitx Exp $
- Author:
- Richard Cyganiak
-
-
Constructor Summary
Constructors Constructor Description Directory()
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description int
compareTo(java.lang.Object o)
Compares this directory to another one, based on their full names.static Directory
createRoot()
Factory method for creating a new root directory.Directory
createSubdirectory(java.lang.String name)
Factory method for creating a new subdirectory.int
getCurrentFileCount()
Returns the number of files in this directory.int
getCurrentLOC()
Returns the number of lines in this directory.abstract int
getDepth()
Returns the level of this directory in the direcotry tree.java.util.SortedSet
getFiles()
Returns allVersionedFile
objects in this directory, ordered by filename.abstract java.lang.String
getName()
Returns the directory's name without full path or any slashes, for example "src".abstract Directory
getParent()
Returns the directory's parent directory or null if it is the rootabstract java.lang.String
getPath()
Returns the directory's full path with trailing slash, for example "src/net/sf/statcvs/".java.util.SortedSet
getRevisions()
Returns allRevision
s to files in this directory, in order from oldest to most recent.java.util.SortedSet
getSubdirectories()
Returns a SortedSet of all immediate subdirectories, ordered by name.java.util.SortedSet
getSubdirectoriesRecursive()
Returns a list of all subdirectories, including their subdirectories and this directory itself.boolean
isEmpty()
Returnstrue
if all files in this directory and its subdirectories are deleted, or if it doesn't have any files and subdirectories at all.abstract boolean
isRoot()
Returns true if this is the root of the directory tree.
-
-
-
Method Detail
-
createRoot
public static Directory createRoot()
Factory method for creating a new root directory.- Returns:
- a new root directory
-
createSubdirectory
public Directory createSubdirectory(java.lang.String name)
Factory method for creating a new subdirectory.- Parameters:
name
- the subdirectory's name- Returns:
- the subdirectory instance
-
getName
public abstract java.lang.String getName()
Returns the directory's name without full path or any slashes, for example "src".- Returns:
- the directory's name
-
getPath
public abstract java.lang.String getPath()
Returns the directory's full path with trailing slash, for example "src/net/sf/statcvs/".- Returns:
- the directory's path
-
getParent
public abstract Directory getParent()
Returns the directory's parent directory or null if it is the root- Returns:
- the directory's parent.
-
isRoot
public abstract boolean isRoot()
Returns true if this is the root of the directory tree.- Returns:
- true if this is the root of the directory tree
-
getDepth
public abstract int getDepth()
Returns the level of this directory in the direcotry tree. The root has level 0, its subdirectories have level 1, and so forth.- Returns:
- the level of this directory in the directory tree
-
getFiles
public java.util.SortedSet getFiles()
Returns allVersionedFile
objects in this directory, ordered by filename. Files in subdirectories are not included.- Returns:
- the files in this directory
-
getRevisions
public java.util.SortedSet getRevisions()
Returns allRevision
s to files in this directory, in order from oldest to most recent.- Returns:
- list of Revisions for this directory
-
getSubdirectories
public java.util.SortedSet getSubdirectories()
Returns a SortedSet of all immediate subdirectories, ordered by name.- Returns:
- SortedSet of
Directory
objects
-
getSubdirectoriesRecursive
public java.util.SortedSet getSubdirectoriesRecursive()
Returns a list of all subdirectories, including their subdirectories and this directory itself. The list is preordered, beginning with this directory itself.- Returns:
- SortedSet of
Directory
objects
-
getCurrentLOC
public int getCurrentLOC()
Returns the number of lines in this directory. The returned number will be for the current revisions of all files.- Returns:
- lines in this directory
-
getCurrentFileCount
public int getCurrentFileCount()
Returns the number of files in this directory. Deleted files are not counted.- Returns:
- number of files in this directory
-
isEmpty
public boolean isEmpty()
Returnstrue
if all files in this directory and its subdirectories are deleted, or if it doesn't have any files and subdirectories at all.- Returns:
true
if the directory is currently empty
-
compareTo
public int compareTo(java.lang.Object o)
Compares this directory to another one, based on their full names.- Specified by:
compareTo
in interfacejava.lang.Comparable
- See Also:
Comparable.compareTo(java.lang.Object)
-
-