Trait

com.swoval.files

CachedDirectory

Related Doc: package files

Permalink

trait CachedDirectory[T <: AnyRef] extends UpdatableFileTreeDataView[T] with DirectoryDataView[T] with AutoCloseable

Linear Supertypes
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. CachedDirectory
  2. DirectoryDataView
  3. DirectoryView
  4. FileTreeDataView
  5. FileTreeView
  6. AutoCloseable
  7. UpdatableFileTreeDataView
  8. AnyRef
  9. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract def close(): Unit

    Permalink

    Catch any exceptions in close.

    Catch any exceptions in close.

    Definition Classes
    CachedDirectory → AutoCloseable
  2. abstract def getEntry(): Entry[T]

    Permalink

    Returns the FileTreeDataViews.Entry associated with the path specified by CachedDirectory.getPath.

    Returns the FileTreeDataViews.Entry associated with the path specified by CachedDirectory.getPath.

    returns

    the entry

    Definition Classes
    CachedDirectoryDirectoryDataView
  3. abstract def getMaxDepth(): Int

    Permalink

    Returns the maximum depth of children of subdirectories to include below the path specified by DirectoryView.getTypedPath.

    Returns the maximum depth of children of subdirectories to include below the path specified by DirectoryView.getTypedPath. For example, when the value is -1, then the DirectoryView should include only itself. When the value is 0, it should include all of the subdirectories and files in the path. When the value is 1, it should include all of the subdirectories and files in the path and all of the subdirectories and files in the immediate subdirectories of the path, but not the children of these nested subdirectories. When the value is Integer.MAX_VALUE, all children of the path are included.

    returns

    the maximum depth of subdirectory children to include.

    Definition Classes
    DirectoryView
  4. abstract def getPath(): Path

    Permalink

    Return the path of the root directory.

    Return the path of the root directory.

    returns

    the path of the root directory.

    Definition Classes
    DirectoryView
  5. abstract def getTypedPath(): TypedPath

    Permalink

    Return the typed path of the root directory.

    Return the typed path of the root directory.

    returns

    the typed path of the root directory.

    Definition Classes
    DirectoryView
  6. abstract def list(path: Path, maxDepth: Int, filter: Filter[_ >: TypedPath]): List[TypedPath]

    Permalink

    List all of the files for the path, returning only those files that are accepted by the provided filter.

    List all of the files for the path, returning only those files that are accepted by the provided filter. Unlike FileTreeView, this implementation cannot throw an IOException because list should be using the cache and not performing IO.

    path

    the root path to list

    maxDepth

    the maximum depth of subdirectories to query

    filter

    include only paths accepted by the filter

    returns

    a List of java.nio.file.Path instances accepted by the filter.

    Definition Classes
    CachedDirectoryDirectoryDataViewFileTreeDataViewFileTreeView
  7. abstract def list(maxDepth: Int, filter: Filter[_ >: TypedPath]): List[TypedPath]

    Permalink

    List all of the files in the root directory, returning only those files that are accepted by the provided filter.

    List all of the files in the root directory, returning only those files that are accepted by the provided filter. Unlike FileTreeView, this implementation cannot throw an IOException because list should be using the cache and not performing IO.

    maxDepth

    the maximum depth of subdirectories to query

    filter

    include only paths accepted by the filter

    returns

    a List of java.nio.file.Path instances accepted by the filter.

    Definition Classes
    CachedDirectoryDirectoryDataViewDirectoryView
  8. abstract def listEntries(path: Path, maxDepth: Int, filter: Filter[_ >: Entry[T]]): List[Entry[T]]

    Permalink

    List all of the files for the path that are accepted by the filter.

    List all of the files for the path that are accepted by the filter.

    path

    the path to list. If this is a file, returns a list containing the Entry for the file or an empty list if the file is not monitored by the path.

    maxDepth

    the maximum depth of subdirectories to return

    filter

    include only paths accepted by this

    returns

    a List of Entry instances accepted by the filter. The list will be empty if the path is not a subdirectory of this CachedDirectory or if it is a subdirectory, but the CachedDirectory was created without the recursive flag.

    Definition Classes
    CachedDirectoryDirectoryDataViewFileTreeDataView
  9. abstract def listEntries(maxDepth: Int, filter: Filter[_ >: Entry[T]]): List[Entry[T]]

    Permalink

    List the children of the path specified by CachedDirectory.getPath, excluding the entry for the path itself.

    List the children of the path specified by CachedDirectory.getPath, excluding the entry for the path itself. When the maxDepth parameter is -1 , return just the entry for the path itself.

    maxDepth

    the maximum depth of children (see DirectoryView.getMaxDepth)

    filter

    only include entries matching this filter

    returns

    a list containing all of the entries included by the filter up to the max depth.

    Definition Classes
    CachedDirectoryDirectoryDataView
  10. abstract def remove(path: Path): List[Entry[T]]

    Permalink

    Remove a path from the directory.

    Remove a path from the directory.

    path

    the path to remove

    returns

    a List containing the Entry instances for the removed path. The result also contains the cache entries for any children of the path when the path is a non-empty directory.

    Definition Classes
    UpdatableFileTreeDataView
  11. abstract def update(typedPath: TypedPath, rescanDirectories: Boolean): Updates[T]

    Permalink

    Updates the CachedDirectory entry for a particular typed path.

    Updates the CachedDirectory entry for a particular typed path.

    typedPath

    the path to update

    rescanDirectories

    if true, the contents of a directory will be re-scanned whenever a directory is updated. This can be very expensive since it must list the entire subtree of the directory and perform io to compute the cache value. It does make it more likely, however, that the cache gets out of sync with the file system tree.

    returns

    a list of updates for the path. When the path is new, the updates have the oldCachedPath field set to null and will contain all of the children of the new path when it is a directory. For an existing path, the List contains a single Updates that contains the previous and new Entry.

    Definition Classes
    UpdatableFileTreeDataView
  12. abstract def update(typedPath: TypedPath): Updates[T]

    Permalink

    Updates the CachedDirectory entry for a particular typed path.

    Updates the CachedDirectory entry for a particular typed path.

    typedPath

    the path to update

    returns

    a list of updates for the path. When the path is new, the updates have the oldCachedPath field set to null and will contain all of the children of the new path when it is a directory. For an existing path, the List contains a single Updates that contains the previous and new Entry.

    Definition Classes
    UpdatableFileTreeDataView

Concrete Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  5. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  6. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  7. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  8. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  9. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  10. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  11. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  12. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  13. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  14. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  15. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  16. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  17. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  18. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  19. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from DirectoryDataView[T]

Inherited from DirectoryView

Inherited from FileTreeDataView[T]

Inherited from FileTreeView

Inherited from AutoCloseable

Inherited from UpdatableFileTreeDataView[T]

Inherited from AnyRef

Inherited from Any

Ungrouped