org.pentaho.reporting.libraries.repository.dummy

Class DummyContentLocation

public class DummyContentLocation extends Object implements ContentLocation, Serializable

A dummy content location holds references to all dummy items. It does allow to create any items, but always reports itself as empty location. This implementation only serves as data-sink in case the generated content is not needed anywhere.

Author: Thomas Morgner

Constructor Summary
DummyContentLocation(ContentLocation parent, String name)
Creates a new DummyContentLocation with the given parent and name.
DummyContentLocation(Repository repository, String name)
Creates a new root DummyContentLocation with the given repository and name.
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.
booleandelete()
A dummy location does not have content and therefore does not support the delete command.
booleanexists(String name)
A dummy location does not have children, therefore this method always returns false.
ObjectgetAttribute(String domain, String key)
Dummy locations do not have attributes, therefore this method always returns null.
ObjectgetContentId()
Returns the full pathname of the location.
ContentEntitygetEntry(String name)
Returns the content entity with the given name.
StringgetName()
Returns the name of the entry.
ContentLocationgetParent()
Returns the parent, if there is any.
RepositorygetRepository()
Returns the parent repository for this location.
ContentEntity[]listContents()
Returns all content entities stored in this content-location.
booleansetAttribute(String domain, String key, Object value)
Dummy locations do not allow to set attributes, therefore this method always returns false.

Constructor Detail

DummyContentLocation

public DummyContentLocation(ContentLocation parent, String name)
Creates a new DummyContentLocation with the given parent and name. The location will inherit the repository from its parent.

Parameters: parent the parent location. name the name of this location.

DummyContentLocation

public DummyContentLocation(Repository repository, String name)
Creates a new root DummyContentLocation with the given repository and name.

Parameters: repository the repository. name the name of this location.

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.

delete

public boolean delete()
A dummy location does not have content and therefore does not support the delete command.

Returns: always false.

exists

public boolean exists(String name)
A dummy location does not have children, therefore this method always returns false.

Parameters: name the name of the item.

Returns: false.

getAttribute

public Object getAttribute(String domain, String key)
Dummy locations do not have attributes, therefore this method always returns null.

Parameters: domain the attribute domain. key the name of the attribute.

Returns: the value or null, if the content-entity does not have a value for this attribute.

getContentId

public Object getContentId()
Returns the full pathname of the location.

Returns: the full pathname.

getEntry

public ContentEntity getEntry(String name)
Returns the content entity with the given name. This always throws the ContentIOException, as this implementation claims to not know any of its childs.

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.

getName

public String getName()
Returns the name of the entry.

Returns: the name, never null.

getParent

public ContentLocation getParent()
Returns the parent, if there is any.

Returns: the parent.

getRepository

public Repository getRepository()
Returns the parent repository for this location.

Returns: the repository.

listContents

public ContentEntity[] listContents()
Returns all content entities stored in this content-location. This always returns an empty array.

Returns: the content entities for this location, an empty array.

Throws: ContentIOException if an repository error occured.

setAttribute

public boolean setAttribute(String domain, String key, Object value)
Dummy locations do not allow to set attributes, therefore this method always returns false.

Parameters: domain the attribute domain. key the attribute name value the new attribute value.

Returns: false.