All Packages Class Hierarchy This Package Previous Next Index
Class sdsu.io.ASCIIFileRepository
java.lang.Object
|
+----sdsu.io.ASCIIFileRepository
- public class ASCIIFileRepository
- extends Object
- implements Repository
A Repository is a hashtable like interface to a persistent storage
medium. Items are placed into the repository via the put method,
retrieved via the get method. The items in the repository are
preserved between invocations of the programs that access the
repository. Each item in the repository has a key (or label)
which identifies the item, and an optional comment.
The ASCIIFileRepository stores each item in a separate ASCII file.
The name of the file is in the format "key.class", where key =
key for the item, class is the short name of the class of the item.
Items in an ASCIIFileRepository can be instances of: String,
java.util.Properties, sdsu.util.Stringizable (which includes
sdsu.util.List, sdsu.util.LabeledData, sdsu.util.Table,
sdsu.util.LabeledTable) and any class that implements
java.io.Serializable. When created by the ASCIIFileRepository
a file contains comments and metadata. Comments are lines starting with
'#' and end at the end of the line. Metadata are on lines starting with
"#!". Metadata includes the key and class of the item in the file.
The file starts with comment lines, then metadata lines, then
comment lines, then a string version of the item.
If the file is created by hand the comments and metadata are not
required.
- Version:
- 0.9 June 1998
- Author:
- Roger Whitney
(whitney@cs.sdsu.edu)
-
ASCIIFileRepository(File)
- Open a ASCIIFileRepository.
-
ASCIIFileRepository(String)
- Open a ASCIIFileRepository.
-
containsKey(String)
- Returns true is the repostitory contains data at the given key
-
containsSubrepository(String)
- Returns false as does not support subrepositories
-
create()
- Create the required storage structures for the
repository.
-
createSubrepository(String)
-
Returns false as does not support subrepositories.
-
exists()
- Returns true if the repository exists
-
get(String)
- Retreive the item in the repository stored under the given key.
-
getSubrepositories()
- Returns null as does not support subrepositories
-
getSubrepository(String)
- Returns a null as subrepository are not supported.
-
isEmpty()
- Returns true if the repository contains no keys or values
-
keys()
- Returns an enumeration of the keys in the repository
-
length()
- Returns the number of keys in the repository.
-
put(String, Object)
- Add the object "value" to the repository with the
given key.
-
put(String, Object, String)
-
-
putSerializable(String, Serializable)
- Add the object "value" to the repository with the
given key.
-
putSerializable(String, Serializable, String)
-
-
remove(String)
- Removes the given key and corresponding value from the repository.
-
setNameSeparator(char)
- The name separator is the char used to separate the name of a
Repository and a subrepository or key.
-
size()
- Returns the number of keys in the repository.
ASCIIFileRepository
public ASCIIFileRepository(String directoryName)
- Open a ASCIIFileRepository.
- Parameters:
- directoryName - The directory containing the repository files.
ASCIIFileRepository
public ASCIIFileRepository(File repositoryDirectory)
- Open a ASCIIFileRepository.
- Parameters:
- repositoryDirectory - The directory containing the
repository files.
exists
public boolean exists()
- Returns true if the repository exists
create
public boolean create()
- Create the required storage structures for the
repository. Returns true if create was successful, false otherwise.
createSubrepository
public boolean createSubrepository(String name)
- Returns false as does not support subrepositories.
put
public void put(String key,
Object value) throws IOException
- Add the object "value" to the repository with the
given key.
put
public void put(String key,
Object value,
String comment) throws IOException
putSerializable
public void putSerializable(String key,
Serializable value) throws IOException
- Add the object "value" to the repository with the
given key. Value is stored using java's serialization
putSerializable
public void putSerializable(String key,
Serializable value,
String comment) throws IOException
get
public Object get(String key) throws IOException
- Retreive the item in the repository stored under the given key.
getSubrepository
public Repository getSubrepository(String name)
- Returns a null as subrepository are not supported.
containsKey
public boolean containsKey(String key)
- Returns true is the repostitory contains data at the given key
containsSubrepository
public boolean containsSubrepository(String name)
- Returns false as does not support subrepositories
setNameSeparator
public void setNameSeparator(char newSeparator)
- The name separator is the char used to separate the name of a
Repository and a subrepository or key. The default char used is a
'.'
getSubrepositories
public Enumeration getSubrepositories()
- Returns null as does not support subrepositories
keys
public Enumeration keys()
- Returns an enumeration of the keys in the repository
isEmpty
public boolean isEmpty()
- Returns true if the repository contains no keys or values
size
public int size()
- Returns the number of keys in the repository.
Same as length
length
public int length()
- Returns the number of keys in the repository.
Same as size.
remove
public boolean remove(String key)
- Removes the given key and corresponding value from the repository.
All Packages Class Hierarchy This Package Previous Next Index