bes Updated for version 3.21.1
The Backend Server (BES) is the lower two tiers of the Hyrax data server
BESDDSResponse Class Reference

Holds a DDS object within the BES. More...

#include <BESDDSResponse.h>

Inheritance diagram for BESDDSResponse:
Inheritance graph
Collaboration diagram for BESDDSResponse:
Collaboration graph

Public Member Functions

 BESDDSResponse (libdap::DDS *dds)
 
virtual void clear_container ()
 clear the container in the DAP response object
 
virtual void dump (std::ostream &strm) const
 dumps information about this object set container in catalog values avhrr, /data/ff/1998.6.avhrr.dat;
 
libdap::ConstraintEvaluator & get_ce ()
 
std::string get_dap_client_protocol () const
 Return the dap version string sent by the client (e.g., the OLFS)
 
libdap::DDS * get_dds ()
 
bool get_explicit_containers () const
 Should containers be explicitly represented in the DD* responses?
 
std::string get_request_xml_base () const
 Return the xml:base URL for this request.
 
virtual void set_constraint (BESDataHandlerInterface &dhi)
 set the constraint depending on the context
 
virtual void set_container (const std::string &cn)
 set the container in the DAP response object
 
virtual void set_dap4_constraint (BESDataHandlerInterface &dhi)
 set the constraint depending on the context
 
virtual void set_dap4_function (BESDataHandlerInterface &dhi)
 set the constraint depending on the context
 
void set_dds (libdap::DDS *ddsIn)
 

Protected Member Functions

bool is_dap2 ()
 See get_explicit_containers()
 
void read_contexts ()
 Extract the dap protocol from the setContext information This method checks four contexts: dap_explicit_containers, dap_format and xdap_accept, and xml:base.
 

Detailed Description

Holds a DDS object within the BES.

Definition at line 50 of file BESDDSResponse.h.

Constructor & Destructor Documentation

◆ BESDDSResponse()

BESDDSResponse::BESDDSResponse ( libdap::DDS * dds)
inline

Definition at line 56 of file BESDDSResponse.h.

◆ ~BESDDSResponse()

BESDDSResponse::~BESDDSResponse ( )
virtual

Definition at line 39 of file BESDDSResponse.cc.

Member Function Documentation

◆ clear_container()

void BESDDSResponse::clear_container ( )
virtual

clear the container in the DAP response object

Implements BESDapResponse.

Definition at line 73 of file BESDDSResponse.cc.

◆ dump()

void BESDDSResponse::dump ( std::ostream & strm) const
virtual

dumps information about this object set container in catalog values avhrr, /data/ff/1998.6.avhrr.dat;

Displays the pointer value of this instance along with the dds object created

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

Reimplemented from BESDapResponse.

Definition at line 88 of file BESDDSResponse.cc.

◆ get_ce()

libdap::ConstraintEvaluator & BESDDSResponse::get_ce ( )
inline

Get a reference to the DAP2 Constraint Evaluator.

Todo
Remove use of this method - there is no reason code cannot create its own ConstraintEvaluator.
Deprecated
Returns
A reference to a ConstraitEvaluator object

Definition at line 92 of file BESDDSResponse.h.

◆ get_dap_client_protocol()

std::string BESDapResponse::get_dap_client_protocol ( ) const
inlineinherited

Return the dap version string sent by the client (e.g., the OLFS)

Definition at line 64 of file BESDapResponse.h.

◆ get_dds()

libdap::DDS * BESDDSResponse::get_dds ( )
inline

Get the contained DDS object.

Returns
The contained DDS object

Definition at line 80 of file BESDDSResponse.h.

◆ get_explicit_containers()

bool BESDapResponse::get_explicit_containers ( ) const
inlineinherited

Should containers be explicitly represented in the DD* responses?

Definition at line 70 of file BESDapResponse.h.

◆ get_request_xml_base()

std::string BESDapResponse::get_request_xml_base ( ) const
inlineinherited

Return the xml:base URL for this request.

Definition at line 76 of file BESDapResponse.h.

◆ is_dap2()

bool BESDapResponse::is_dap2 ( )
protectedinherited

See get_explicit_containers()

See also
get_explicit_containers()
get_dap_client_protocol()
Deprecated
Returns
true if dap2 format, false otherwise

Definition at line 119 of file BESDapResponse.cc.

◆ read_contexts()

void BESDapResponse::read_contexts ( )
protectedinherited

Extract the dap protocol from the setContext information This method checks four contexts: dap_explicit_containers, dap_format and xdap_accept, and xml:base.

If given, the boolean value of dap_explicit_containers is used. If that's not given then look for dap_format and if that's not given default to true. The OLFS should always send this to make Hyrax work the way DAP clients expect.

xdap_accept is the value of the DAP that clients can grok. It defaults to "2.0"

Note
This value will be passed on to the DDS so that it can correctly build versions of the DDX which are specified by DAP 3.x and 4.x

Definition at line 64 of file BESDapResponse.cc.

◆ set_constraint()

void BESDapResponse::set_constraint ( BESDataHandlerInterface & dhi)
virtualinherited

set the constraint depending on the context

If the context is dap2 then the constraint will be the constraint of the current container. If not dap2 and we have multiple containers then the constraint of the current container must be added to the current post constraint

Parameters
dhiThe BESDataHandlerInterface of the request. THis holds the current container and the current post constraint

Definition at line 134 of file BESDapResponse.cc.

◆ set_container()

void BESDDSResponse::set_container ( const std::string & cn)
virtual

set the container in the DAP response object

Parameters
cnname of the current container being operated on

Implements BESDapResponse.

Definition at line 64 of file BESDDSResponse.cc.

◆ set_dap4_constraint()

void BESDapResponse::set_dap4_constraint ( BESDataHandlerInterface & dhi)
virtualinherited

set the constraint depending on the context

If the context is dap2 then the constraint will be the constraint of the current container. If not dap2 and we have multiple containers then the constraint of the current container must be added to the current post constraint

Parameters
dhiThe BESDataHandlerInterface of the request. THis holds the current container and the current post constraint

Definition at line 156 of file BESDapResponse.cc.

◆ set_dap4_function()

void BESDapResponse::set_dap4_function ( BESDataHandlerInterface & dhi)
virtualinherited

set the constraint depending on the context

If the context is dap2 then the constraint will be the constraint of the current container. If not dap2 and we have multiple containers then the constraint of the current container must be added to the current post constraint

Parameters
dhiThe BESDataHandlerInterface of the request. THis holds the current container and the current post constraint

Definition at line 173 of file BESDapResponse.cc.

◆ set_dds()

void BESDDSResponse::set_dds ( libdap::DDS * ddsIn)
inline

Set the response object's DDS. The caller should probably free an existing DDS object held here before calling this method.

Definition at line 71 of file BESDDSResponse.h.


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