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

Represents an OPeNDAP DataDDS DAP2 data object within the BES. More...

#include <BESDataDDSResponse.h>

Inheritance diagram for BESDataDDSResponse:
Inheritance graph
Collaboration diagram for BESDataDDSResponse:
Collaboration graph

Public Member Functions

 BESDataDDSResponse (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
 
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?
 
bool get_ia_flag ()
 
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)
 
void set_ia_flag (bool ia_flag)
 

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

Represents an OPeNDAP DataDDS DAP2 data object within the BES.

Definition at line 46 of file BESDataDDSResponse.h.

Constructor & Destructor Documentation

◆ BESDataDDSResponse()

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

Definition at line 57 of file BESDataDDSResponse.h.

◆ ~BESDataDDSResponse()

BESDataDDSResponse::~BESDataDDSResponse ( )
virtual

Definition at line 41 of file BESDataDDSResponse.cc.

Member Function Documentation

◆ clear_container()

void BESDataDDSResponse::clear_container ( )
virtual

clear the container in the DAP response object

Implements BESDapResponse.

Definition at line 59 of file BESDataDDSResponse.cc.

◆ dump()

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

dumps information about this object

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

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

Reimplemented from BESDapResponse.

Definition at line 73 of file BESDataDDSResponse.cc.

◆ get_ce()

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

Definition at line 83 of file BESDataDDSResponse.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 * BESDataDDSResponse::get_dds ( )
inline

Definition at line 78 of file BESDataDDSResponse.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_ia_flag()

bool BESDataDDSResponse::get_ia_flag ( )
inline

Definition at line 89 of file BESDataDDSResponse.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 BESDataDDSResponse::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 50 of file BESDataDDSResponse.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 BESDataDDSResponse::set_dds ( libdap::DDS * ddsIn)
inline

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

Definition at line 73 of file BESDataDDSResponse.h.

◆ set_ia_flag()

void BESDataDDSResponse::set_ia_flag ( bool ia_flag)
inline

Definition at line 88 of file BESDataDDSResponse.h.


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