BESContainer Class Reference

Holds real data, container type and constraint for symbolic name read from persistence. More...

#include <BESContainer.h>

Inheritance diagram for BESContainer:

Inheritance graph
[legend]
Collaboration diagram for BESContainer:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 BESContainer (const string &s)
 construct a container with the given sumbolic name
 BESContainer (const BESContainer &copy_from)
 make a copy of the container
virtual ~BESContainer ()
void set_constraint (const string &s)
 set the constraint for this symbolic name during this * execution
void set_real_name (const string &s)
 set the real name for this symbolic name, such as a file name if reading a data file.
void set_container_type (const string &s)
 set the type of data that this symbolic name represents, such as cedar or netcdf.
void set_attributes (const string &s)
 set attributes for this container
void set_valid_flag (bool b)
 set whether this container is valid or not
string get_real_name () const
 retreive the real name for this symbolic name, such as the file name.
string get_constraint () const
 retrieve the constraint for this execution for the symbolic name.
string get_symbolic_name () const
 retrieve the symbolic name for this container
string get_container_type () const
 retrieve the type of data this symbolic name is for, such as cedar or netcdf.
string get_attributes () const
 retrieve the attributes for this container
bool is_valid () const
 returns whether the information provided in this container is accurate or not.
virtual string access ()
 returns the name of a file to access for this container, uncompressing if neccessary.
virtual void dump (ostream &strm) const
 Displays debug information about this object.

Detailed Description

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 BESContainer and is used to execute the request from the client.

See also:
BESContainerStorage

Definition at line 59 of file BESContainer.h.


Constructor & Destructor Documentation

BESContainer::BESContainer ( const string &  s  ) 

construct a container with the given sumbolic name

Parameters:
s symbolic name

Definition at line 51 of file BESContainer.cc.

BESContainer::BESContainer ( const BESContainer copy_from  ) 

make a copy of the container

Parameters:
copy_from The container to copy

Definition at line 61 of file BESContainer.cc.

virtual BESContainer::~BESContainer (  )  [inline, virtual]

Definition at line 81 of file BESContainer.h.


Member Function Documentation

void BESContainer::set_constraint ( const string &  s  )  [inline]

set the constraint for this symbolic name during this * execution

Parameters:
s constraint

Definition at line 87 of file BESContainer.h.

Referenced by BESDefineCommand::parse_request(), and constraintT::run().

void BESContainer::set_real_name ( const string &  s  )  [inline]

set the real name for this symbolic name, such as a file name if reading a data file.

Parameters:
s real name, such as file name

Definition at line 97 of file BESContainer.h.

Referenced by BESContainerStorageVolatile::add_container(), BESContainerStorageVolatile::look_for(), BESContainerStorageFile::look_for(), and containerT::run().

void BESContainer::set_container_type ( const string &  s  )  [inline]

set the type of data that this symbolic name represents, such as cedar or netcdf.

Parameters:
s type of data, such as cedar or netcdf

Definition at line 106 of file BESContainer.h.

Referenced by BESContainerStorageVolatile::add_container(), BESContainerStorageVolatile::look_for(), BESContainerStorageFile::look_for(), and containerT::run().

void BESContainer::set_attributes ( const string &  s  )  [inline]

set attributes for this container

Parameters:
s attributes for this container

Definition at line 115 of file BESContainer.h.

Referenced by BESDefineCommand::parse_request().

void BESContainer::set_valid_flag ( bool  b  )  [inline]

set whether this container is valid or not

Set to true of the information provided is accurate, or false if there was a problem retrieving the information for this symbolic name

Parameters:
b true if information valid, false otherwise

Definition at line 127 of file BESContainer.h.

Referenced by BESContainerStorageVolatile::look_for(), and BESContainerStorageFile::look_for().

string BESContainer::get_real_name (  )  const [inline]

retreive the real name for this symbolic name, such as the file name.

Returns:
real name, such as file name

Definition at line 137 of file BESContainer.h.

Referenced by pvolT::run(), plistT::run(), pfileT::run(), containerT::run(), BESDapTransmit::send_basic_das(), BESDapTransmit::send_basic_dds(), BESDapTransmit::send_basic_ddx(), and BESContainerStorageVolatile::show_containers().

string BESContainer::get_constraint (  )  const [inline]

retrieve the constraint for this execution for the symbolic name.

Returns:
constraint for this execution for the symbolic name

Definition at line 146 of file BESContainer.h.

Referenced by BESConstraintFuncs::post_append(), and containerT::run().

string BESContainer::get_symbolic_name (  )  const [inline]

retrieve the symbolic name for this container

Returns:
symbolic name for this container

Definition at line 155 of file BESContainer.h.

Referenced by BESContainerStorageVolatile::look_for(), BESContainerStorageList::look_for(), BESContainerStorageFile::look_for(), BESDefineCommand::parse_request(), BESConstraintFuncs::post_append(), pvolT::run(), containerT::run(), and BESContainerStorageVolatile::show_containers().

string BESContainer::get_container_type (  )  const [inline]

retrieve the type of data this symbolic name is for, such as cedar or netcdf.

Returns:
container type for this symbolic name, such as cedar or netcdf

Definition at line 166 of file BESContainer.h.

Referenced by BESRequestHandlerList::execute_current(), pvolT::run(), plistT::run(), pfileT::run(), containerT::run(), and BESContainerStorageVolatile::show_containers().

string BESContainer::get_attributes (  )  const [inline]

retrieve the attributes for this container

Returns:
attributes for this container

Definition at line 175 of file BESContainer.h.

bool BESContainer::is_valid (  )  const [inline]

returns whether the information provided in this container is accurate or not.

Returns:
true if information in container is accurate, false otherwise

Definition at line 185 of file BESContainer.h.

Referenced by BESRequestHandlerList::execute_current(), BESContainerStorageList::look_for(), pvolT::run(), plistT::run(), pfileT::run(), and containerT::run().

string BESContainer::access (  )  [virtual]

returns the name of a file to access for this container, uncompressing if neccessary.

Returns:
name of file to access

Definition at line 72 of file BESContainer.cc.

References TheBESKeys::TheKeys(), BESUncompressManager::TheManager(), and BESUncompressManager::uncompress().

Referenced by BESStreamResponseHandler::execute(), and containerT::run().

Here is the call graph for this function:

void BESContainer::dump ( ostream &  strm  )  const [virtual]

Displays debug information about this object.

Parameters:
strm output stream to use to dump the contents of this object

Implements BESObj.

Definition at line 89 of file BESContainer.cc.

References BESIndent::Indent(), BESIndent::LMarg(), and BESIndent::UnIndent().

Referenced by _BESDataHandlerInterface::dump().

Here is the call graph for this function:


The documentation for this class was generated from the following files:
Generated on Wed Aug 29 03:28:18 2007 for OPeNDAP Back End Server (BES) by  doxygen 1.5.2