The container name provides the base for the filenames of the database files used to store the container content. The directory within which the files are opened is taken from the environment passed through the Container constructor. If no environment was provided, then the directory used will be the current working directory.
allocate(name = nil, options = {})allocate a new Container object
the name of the container
Hash with the possible keys
the Berkeley DB environment within which all database operations are to be performed.
the transaction within which all database operations are to be performed.
Set the pagesize of the primary database (512 < size < 64K)
close(flags = 0)close an open container
flags can has the value 0 or BDB::NOSYNC
delete(document, flags = 0)Remove the document from the container
document can be an ID or an BDB::XML::Document previuosly stored
flags can has the value 0 or BDB::AUTO_COMMIT
each(xpath, returntype = BDB::XML::Content::Document) {|doc| ... }Iterate over the result of a query
returntype can have the values BDB::XML::Content::Document or BDB::XML::Content::Values
the query is evaluated lazily
self[id]
get(id, flags = 0)Fetch the document from the container
the id assigned to the document when it was first added to a container
flags can has the value 0 or BDB::DIRTY_READ, BDB::RMW
index(element, index)Declare the indexing required for a particular element type.
The element parameter provides the fully qualified element type to be indexed.
The index string is a comma separated list of the following indexing strategy names
initialize(name, flags = 0, mode = 0)open the container
see allocate
The flags must be the string "r", "r+", "w", "w+", "a", "a+" or and integer value.
mode for creation (see chmod(2))
namereturn the name of the container
parse(query, context = nil)Pre-parse an XPath query and return an BDB::XML::XPath object
the XPath query to execute against the container
the context within which the query will be executed
push(document, flags = 0)Add a document to the container and return an ID
an object BDB::XML::Document or any object suitable for BDB::XML::Document::new
flags can be 0 or BDB::AUTO_COMMIT
<<(document)Add a document to the container and return self
query(xpath, flags = 0)
query(string, context, flags = 0)Query the container with an XPath expression, which can be an object BDB::XML::XPath or a String
flags can have the value 0 or BDB::DIRTY_READ, BDB::RMW
return a BDB::XML::Results object
removeRemove the container
rename(newname)Rename the container