org.apache.lucene.mockfile

## Class FilterFileStore

- java.lang.Object
- - java.nio.file.FileStore
  - - org.apache.lucene.mockfile.FilterFileStore

    public abstract class FilterFileStore
    extends FileStore

A `FilterFileStore` contains another `FileStore`, which it uses as its basic source of data, possibly transforming the data along the way or providing additional functionality.

### Field Summary

Fields
`protected FileStore` `delegate` The underlying `FileStore` instance.
`protected String` `scheme` URI scheme used for this instance.

### Constructor Summary

Constructors
Constructor and Description
`FilterFileStore(FileStore delegate, String scheme)` Construct a `FilterFileStore` based on the specified base store.

### Method Summary

All Methods Instance Methods Concrete Methods
`Object` `getAttribute(String attribute)`
`<V extends FileStoreAttributeView> V` `getFileStoreAttributeView(Class<V> type)`
`long` `getTotalSpace()`
`long` `getUnallocatedSpace()`
`long` `getUsableSpace()`
`boolean` `isReadOnly()`
`String` `name()`
`boolean` `supportsFileAttributeView(Class<? extends FileAttributeView> type)`
`boolean` `supportsFileAttributeView(String name)`
`String` `toString()`
`String` `type()`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Field Detail

#### delegate

    protected final FileStore delegate

The underlying `FileStore` instance.

#### scheme

    protected final String scheme

URI scheme used for this instance.

### Constructor Detail

#### FilterFileStore

    public FilterFileStore(FileStore delegate,
                           String scheme)

Construct a `FilterFileStore` based on the specified base store.

Parameters:
  `delegate` - specified base store.
  `scheme` - URI scheme identifying this instance.

### Method Detail

#### name

    public String name()

Specified by:
  `name` in class `FileStore`

#### type

    public String type()

Specified by:
  `type` in class `FileStore`

#### toString

    public String toString()

Overrides:
  `toString` in class `Object`

#### isReadOnly

    public boolean isReadOnly()

Specified by:
  `isReadOnly` in class `FileStore`

#### getTotalSpace

    public long getTotalSpace()
                       throws IOException

Specified by:
  `getTotalSpace` in class `FileStore`
Throws:
  `IOException`

#### getUsableSpace

    public long getUsableSpace()
                        throws IOException

Specified by:
  `getUsableSpace` in class `FileStore`
Throws:
  `IOException`

#### getUnallocatedSpace

    public long getUnallocatedSpace()
                             throws IOException

Specified by:
  `getUnallocatedSpace` in class `FileStore`
Throws:
  `IOException`

#### supportsFileAttributeView

    public boolean supportsFileAttributeView(Class<? extends FileAttributeView> type)

Specified by:
  `supportsFileAttributeView` in class `FileStore`

#### supportsFileAttributeView

    public boolean supportsFileAttributeView(String name)

Specified by:
  `supportsFileAttributeView` in class `FileStore`

#### getFileStoreAttributeView

    public <V extends FileStoreAttributeView> V getFileStoreAttributeView(Class<V> type)

Specified by:
  `getFileStoreAttributeView` in class `FileStore`

#### getAttribute

    public Object getAttribute(String attribute)
                        throws IOException

Specified by:
  `getAttribute` in class `FileStore`
Throws:
  `IOException`