Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## net.sf.statcvs.model
Class Directory

    java.lang.Object
      net.sf.statcvs.model.Directory

All Implemented Interfaces:
  Comparable

public abstract class Directory
extends Object
implements Comparable

Represents a directory in the `Repository`, a container for `VersionedFile`s and sub`Directory`s. A new root directory is created by `createRoot()`. The `createSubdirectory(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
`Directory()`

Method Summary
`int` | `compareTo(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(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.
`SortedSet` | `getFiles()` Returns all `VersionedFile` objects in this directory, ordered by filename.
`abstract 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 root
`abstract String` | `getPath()` Returns the directory's full path with trailing slash, for example "src/net/sf/statcvs/".
`SortedSet` | `getRevisions()` Returns all `Revision`s to files in this directory, in order from oldest to most recent.
`SortedSet` | `getSubdirectories()` Returns a `SortedSet` of all immediate subdirectories, ordered by name.
`SortedSet` | `getSubdirectoriesRecursive()` Returns a list of all subdirectories, including their subdirectories and this directory itself.
`boolean` | `isEmpty()` Returns `true` 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.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### Directory

    public Directory()

Method Detail

### createRoot

    public static Directory createRoot()

  Factory method for creating a new root directory.

  Returns:
    a new root directory

### createSubdirectory

    public Directory createSubdirectory(String name)

  Factory method for creating a new subdirectory.

  Parameters:
    `name` - the subdirectory's name
  Returns:
    the subdirectory instance

### getName

    public abstract String getName()

  Returns the directory's name without full path or any slashes, for example "src".

  Returns:
    the directory's name

### getPath

    public abstract 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 SortedSet getFiles()

  Returns all `VersionedFile` objects in this directory, ordered by filename. Files in subdirectories are not included.

  Returns:
    the files in this directory

### getRevisions

    public SortedSet getRevisions()

  Returns all `Revision`s to files in this directory, in order from oldest to most recent.

  Returns:
    list of `Revision`s for this directory

### getSubdirectories

    public SortedSet getSubdirectories()

  Returns a `SortedSet` of all immediate subdirectories, ordered by name.

  Returns:
    `SortedSet` of `Directory` objects

### getSubdirectoriesRecursive

    public 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()

  Returns `true` 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(Object o)

  Compares this directory to another one, based on their full names.

  Specified by:
    `compareTo` in interface `Comparable`
  See Also:
    `Comparable.compareTo(java.lang.Object)`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD