OPeNDAP Hyrax Back End Server (BES) Updated for version 3.8.3
|
Holds real data, container type and constraint for symbolic name read from persistence. More...
#include <BESFileContainer.h>
Public Member Functions | |
virtual string | access () |
returns the name of a file to access for this container, uncompressing if neccessary. | |
BESFileContainer (const string &sym_name, const string &real_name, const string &type) | |
construct a container representing a file | |
BESFileContainer (const BESFileContainer ©_from) | |
make a copy of the container | |
virtual void | dump (ostream &strm) const |
Displays debug information about this object. | |
string | get_attributes () const |
retrieve the attributes desired from this container | |
string | get_constraint () const |
retrieve the constraint expression for this container | |
string | get_container_type () const |
retrieve the type of data this container holds, such as cedar or netcdf. | |
string | get_real_name () const |
retreive the real name for this container, such as a file name. | |
string | get_symbolic_name () const |
retrieve the symbolic name for this container | |
virtual BESContainer * | ptr_duplicate () |
duplicate this instances of BESFileContainer | |
virtual bool | release () |
release the file | |
void | set_attributes (const string &attrs) |
set desired attributes for this container | |
void | set_constraint (const string &s) |
set the constraint for this container | |
void | set_container_type (const string &type) |
set the type of data that this container represents, such as cedar or netcdf. | |
void | set_real_name (const string &real_name) |
set the real name for this container, such as a file name if reading a data file. | |
virtual | ~BESFileContainer () |
Protected Member Functions | |
virtual void | _duplicate (BESContainer ©_to) |
duplicate this instance into the passed container |
Holds real data, container type and constraint for symbolic name read from persistence.
A symbolic name is a name that represents a certain set of data, usually a file, and the type of data, such as cedar, netcdf, hdf, etc... Associated with this symbolic name during run time is the constraint associated with the name.
The symbolic name is looked up in persistence, such as a MySQL database, a file, or even in memory. The information retrieved from the persistent source is saved in the BESFileContainer and is used to execute the request from the client.
Definition at line 59 of file BESFileContainer.h.
BESFileContainer::BESFileContainer | ( | const string & | sym_name, |
const string & | real_name, | ||
const string & | type | ||
) |
construct a container representing a file
sym_name | symbolic name of the container |
real_name | real name of the container, a file name in this case |
type | type of the data represented in the file |
Definition at line 45 of file BESFileContainer.cc.
BESFileContainer::BESFileContainer | ( | const BESFileContainer & | copy_from | ) |
make a copy of the container
copy_from | The container to copy |
Definition at line 63 of file BESFileContainer.cc.
virtual BESFileContainer::~BESFileContainer | ( | ) | [inline, virtual] |
Definition at line 75 of file BESFileContainer.h.
void BESFileContainer::_duplicate | ( | BESContainer & | copy_to | ) | [protected, virtual] |
duplicate this instance into the passed container
copy_to | The container to copy this instance into |
Reimplemented from BESContainer.
Definition at line 69 of file BESFileContainer.cc.
Referenced by ptr_duplicate().
string BESFileContainer::access | ( | ) | [virtual] |
returns the name of a file to access for this container, uncompressing if neccessary.
Implements BESContainer.
Definition at line 92 of file BESFileContainer.cc.
References BESContainer::get_real_name(), TheBESKeys::TheKeys(), BESUncompressManager::TheManager(), and BESUncompressManager::uncompress().
void BESFileContainer::dump | ( | ostream & | strm | ) | const [virtual] |
Displays debug information about this object.
dumps information about this object
strm | output stream to use to dump the contents of this object |
Displays the pointer value of this instance along with information about this container.
strm | C++ i/o stream to dump the information to |
Reimplemented from BESContainer.
Definition at line 128 of file BESFileContainer.cc.
References BESIndent::Indent(), BESIndent::LMarg(), and BESIndent::UnIndent().
string BESContainer::get_attributes | ( | ) | const [inline, inherited] |
retrieve the attributes desired from this container
Definition at line 179 of file BESContainer.h.
string BESContainer::get_constraint | ( | ) | const [inline, inherited] |
retrieve the constraint expression for this container
Definition at line 150 of file BESContainer.h.
Referenced by BESConstraintFuncs::post_append(), and BESDapResponse::set_constraint().
string BESContainer::get_container_type | ( | ) | const [inline, inherited] |
retrieve the type of data this container holds, such as cedar or netcdf.
Definition at line 170 of file BESContainer.h.
Referenced by BESContainerStorageVolatile::add_container(), BESRequestHandlerList::execute_current(), and BESContainerStorageVolatile::show_containers().
string BESContainer::get_real_name | ( | ) | const [inline, inherited] |
retreive the real name for this container, such as a file name.
Definition at line 141 of file BESContainer.h.
Referenced by access(), BESRequestHandlerList::execute_current(), and BESContainerStorageVolatile::show_containers().
string BESContainer::get_symbolic_name | ( | ) | const [inline, inherited] |
retrieve the symbolic name for this container
Definition at line 159 of file BESContainer.h.
Referenced by BESContainerStorageVolatile::add_container(), BESConstraintFuncs::post_append(), and BESContainerStorageVolatile::show_containers().
BESContainer * BESFileContainer::ptr_duplicate | ( | ) | [virtual] |
duplicate this instances of BESFileContainer
Implements BESContainer.
Definition at line 79 of file BESFileContainer.cc.
References _duplicate().
bool BESFileContainer::release | ( | ) | [virtual] |
release the file
If the file was cached (uncompressed) then we need to release the lock on the cached entry
Implements BESContainer.
Definition at line 113 of file BESFileContainer.cc.
void BESContainer::set_attributes | ( | const string & | attrs | ) | [inline, inherited] |
set desired attributes for this container
attrs | attributes desired to access for this container |
Definition at line 131 of file BESContainer.h.
Referenced by BESXMLDefineCommand::prep_request().
void BESContainer::set_constraint | ( | const string & | s | ) | [inline, inherited] |
set the constraint for this container
s | constraint |
Definition at line 102 of file BESContainer.h.
Referenced by BESXMLDefineCommand::prep_request().
void BESContainer::set_container_type | ( | const string & | type | ) | [inline, inherited] |
set the type of data that this container represents, such as cedar or netcdf.
type | type of data, such as cedar or netcdf |
Definition at line 122 of file BESContainer.h.
void BESContainer::set_real_name | ( | const string & | real_name | ) | [inline, inherited] |
set the real name for this container, such as a file name if reading a data file.
real_name | real name, such as the file name |
Definition at line 112 of file BESContainer.h.