bes  Updated for version 3.17.0
BESFileContainer Class Reference

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

#include <BESFileContainer.h>

Inheritance diagram for BESFileContainer:
Inheritance graph

Public Member Functions

virtual string access ()
 returns the name of a file to access for this container, uncompressing if necessary. More...
 
 BESFileContainer (const string &sym_name, const string &real_name, const string &type)
 construct a container representing a file More...
 
 BESFileContainer (const BESFileContainer &copy_from)
 make a copy of the container More...
 
virtual void dump (ostream &strm) const
 Displays debug information about this object. More...
 
string get_attributes () const
 retrieve the attributes desired from this container More...
 
string get_constraint () const
 retrieve the constraint expression for this container More...
 
string get_container_type () const
 retrieve the type of data this container holds, such as cedar or netcdf. More...
 
string get_dap4_constraint () const
 retrieve the constraint expression for this container More...
 
string get_dap4_function () const
 retrieve the constraint expression for this container More...
 
string get_real_name () const
 retrieve the real name for this container, such as a file name. More...
 
string get_symbolic_name () const
 retrieve the symbolic name for this container More...
 
virtual BESContainerptr_duplicate ()
 duplicate this instances of BESFileContainer More...
 
virtual bool release ()
 release the file More...
 
void set_attributes (const string &attrs)
 set desired attributes for this container More...
 
void set_constraint (const string &s)
 set the constraint for this container More...
 
void set_container_type (const string &type)
 set the type of data that this container represents, such as cedar or netcdf. More...
 
void set_dap4_constraint (const string &s)
 set the constraint for this container More...
 
void set_dap4_function (const string &s)
 set the constraint for this container More...
 
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. More...
 

Static Public Attributes

static const string UNCOMPRESS_CACHE_DIR_KEY
 
static const string UNCOMPRESS_CACHE_PREFIX_KEY
 
static const string UNCOMPRESS_CACHE_SIZE_KEY
 

Protected Member Functions

virtual void _duplicate (BESContainer &copy_to)
 

Detailed Description

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.

See also
BESFileContainerStorage

Definition at line 59 of file BESFileContainer.h.

Constructor & Destructor Documentation

BESFileContainer::BESFileContainer ( const string &  sym_name,
const string &  real_name,
const string &  type 
)
Parameters
sym_namesymbolic name of the container
real_namereal name of the container, a file name in this case
typetype of the data represented in the file

Definition at line 50 of file BESFileContainer.cc.

BESFileContainer::BESFileContainer ( const BESFileContainer copy_from)
Parameters
copy_fromThe container to copy

Definition at line 64 of file BESFileContainer.cc.

References BESContainer::_duplicate().

Member Function Documentation

string BESFileContainer::access ( )
virtual
Returns
name of file to access

Implements BESContainer.

Definition at line 90 of file BESFileContainer.cc.

References BESUncompressCache::get_instance(), BESContainer::get_real_name(), and BESUncompressManager3::uncompress().

void BESFileContainer::dump ( ostream &  strm) const
virtual

dumps information about this object

Parameters
strmoutput stream to use to dump the contents of this object

Displays the pointer value of this instance along with information about this container.

Parameters
strmC++ i/o stream to dump the information to

Reimplemented from BESContainer.

Definition at line 137 of file BESFileContainer.cc.

References BESContainer::dump().

string BESContainer::get_attributes ( ) const
inlineinherited
Returns
attributes desired from this container

Definition at line 217 of file BESContainer.h.

References BESContainer::access(), and BESContainer::dump().

string BESContainer::get_constraint ( ) const
inlineinherited
Returns
constraint expression for this execution for the symbolic name

Definition at line 170 of file BESContainer.h.

string BESContainer::get_container_type ( ) const
inlineinherited
Returns
type of data this container represents, such as cedar or netcdf

Definition at line 208 of file BESContainer.h.

string BESContainer::get_dap4_constraint ( ) const
inlineinherited
Returns
constraint expression for this execution for the symbolic name

Definition at line 179 of file BESContainer.h.

string BESContainer::get_dap4_function ( ) const
inlineinherited
Returns
constraint expression for this execution for the symbolic name

Definition at line 188 of file BESContainer.h.

string BESContainer::get_real_name ( ) const
inlineinherited
Returns
real name, such as file name

Definition at line 161 of file BESContainer.h.

string BESContainer::get_symbolic_name ( ) const
inlineinherited
Returns
symbolic name for this container

Definition at line 197 of file BESContainer.h.

BESContainer * BESFileContainer::ptr_duplicate ( )
virtual
Returns
a copy of this instance

Implements BESContainer.

Definition at line 78 of file BESFileContainer.cc.

References BESContainer::_duplicate().

bool BESFileContainer::release ( )
virtual

If the file was cached (uncompressed) then we need to release the lock on the cached entry

Returns
if successfully released, returns true, otherwise returns false

Implements BESContainer.

Definition at line 121 of file BESFileContainer.cc.

References BESUncompressCache::get_instance(), and BESFileLockingCache::unlock_and_close().

void BESContainer::set_attributes ( const string &  attrs)
inlineinherited
Parameters
attrsattributes desired to access for this container

Definition at line 151 of file BESContainer.h.

void BESContainer::set_constraint ( const string &  s)
inlineinherited
Parameters
sconstraint

Definition at line 104 of file BESContainer.h.

void BESContainer::set_container_type ( const string &  type)
inlineinherited
Parameters
typetype of data, such as cedar or netcdf

Definition at line 142 of file BESContainer.h.

void BESContainer::set_dap4_constraint ( const string &  s)
inlineinherited
Parameters
sconstraint

Definition at line 113 of file BESContainer.h.

void BESContainer::set_dap4_function ( const string &  s)
inlineinherited
Parameters
sconstraint

Definition at line 122 of file BESContainer.h.

void BESContainer::set_real_name ( const string &  real_name)
inlineinherited
Parameters
real_namereal name, such as the file name

Definition at line 132 of file BESContainer.h.


The documentation for this class was generated from the following files: