org.pentaho.reporting.libraries.repository.file

Class FileContentLocation

public class FileContentLocation extends FileContentEntity implements ContentLocation

A content-location that uses a directory as backend.

Author: Thomas Morgner

Constructor Summary
FileContentLocation(ContentLocation parent, File backend)
Creates a new location for the given parent and directory.
FileContentLocation(Repository repository, File backend)
Creates a new root-location for the given repository and directory.
Method Summary
ContentItemcreateItem(String name)
Creates a new data item in the current location.
ContentLocationcreateLocation(String name)
Creates a new content location in the current location.
booleanexists(String name)
Checks, whether an content entity with the given name exists in this content location.
ContentEntitygetEntry(String name)
Returns the content entity with the given name.
ContentEntity[]listContents()
Lists all content entities stored in this content-location.

Constructor Detail

FileContentLocation

public FileContentLocation(ContentLocation parent, File backend)
Creates a new location for the given parent and directory.

Parameters: parent the parent location. backend the backend.

Throws: ContentIOException if an error occured or the file did not point to a directory.

FileContentLocation

public FileContentLocation(Repository repository, File backend)
Creates a new root-location for the given repository and directory.

Parameters: repository the repository for which a location should be created. backend the backend.

Throws: ContentIOException if an error occured or the file did not point to a directory.

Method Detail

createItem

public ContentItem createItem(String name)
Creates a new data item in the current location. This method must never return null. This method will fail if an entity with the same name exists in this location.

Parameters: name the name of the new entity.

Returns: the newly created entity, never null.

Throws: ContentCreationException if the item could not be created.

createLocation

public ContentLocation createLocation(String name)
Creates a new content location in the current location. This method must never return null. This method will fail if an entity with the same name exists in this location.

Parameters: name the name of the new entity.

Returns: the newly created entity, never null.

Throws: ContentCreationException if the item could not be created.

exists

public boolean exists(String name)
Checks, whether an content entity with the given name exists in this content location. This method will report invalid filenames as non-existent.

Parameters: name the name of the new entity.

Returns: true, if an entity exists with this name, false otherwise.

getEntry

public ContentEntity getEntry(String name)
Returns the content entity with the given name. If the entity does not exist, an Exception will be raised.

Parameters: name the name of the entity to be retrieved.

Returns: the content entity for this name, never null.

Throws: ContentIOException if an repository error occured.

listContents

public ContentEntity[] listContents()
Lists all content entities stored in this content-location. This method filters out all files that have an invalid name (according to the repository rules).

Returns: the content entities for this location.

Throws: ContentIOException if an repository error occured.