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

BESTransmitter class named "json" that transmits an OPeNDAP data object as a JSON file. More...

#include <W10nJsonTransmitter.h>

Inheritance diagram for W10nJsonTransmitter:
Inheritance graph
Collaboration diagram for W10nJsonTransmitter:
Collaboration graph

Public Member Functions

virtual bool add_method (std::string method_name, p_transmitter trans_method)
 
virtual void dump (std::ostream &strm) const
 dumps information about this object
 
virtual p_transmitter find_method (std::string method_name)
 
virtual bool remove_method (std::string method_name)
 
virtual void send_html (BESInfo &info, BESDataHandlerInterface &dhi)
 
virtual void send_response (const std::string &method, BESResponseObject *obj, BESDataHandlerInterface &dhi)
 
virtual void send_text (BESInfo &info, BESDataHandlerInterface &dhi)
 
 W10nJsonTransmitter ()
 Construct the W10nJsonTransmitter.
 

Static Public Member Functions

static void send_data (BESResponseObject *obj, BESDataHandlerInterface &dhi)
 The static method registered to transmit OPeNDAP data objects as a JSON file.
 
static void send_metadata (BESResponseObject *obj, BESDataHandlerInterface &dhi)
 The static method registered to transmit OPeNDAP data objects as a JSON file.
 

Friends

struct ContextCleanup
 

Detailed Description

BESTransmitter class named "json" that transmits an OPeNDAP data object as a JSON file.

The FoW10JsonTransmitter transforms an OPeNDAP DataDDS object into a JSON file and streams the new (temporary) JSON file back to the client.

See also
BESTransmitter

Definition at line 49 of file W10nJsonTransmitter.h.

Constructor & Destructor Documentation

◆ W10nJsonTransmitter()

W10nJsonTransmitter::W10nJsonTransmitter ( )

Construct the W10nJsonTransmitter.

The transmitter is created to add the ability to return OPeNDAP data objects (DataDDS) as abstract object representation JSON documents.

The OPeNDAP data object is written to a JSON file locally in a temporary directory specified by the BES configuration parameter FoJson.Tempdir. If this variable is not found or is not set then it defaults to the macro definition FO_JSON_TEMP_DIR.

Definition at line 92 of file W10nJsonTransmitter.cc.

◆ ~W10nJsonTransmitter()

virtual W10nJsonTransmitter::~W10nJsonTransmitter ( )
inlinevirtual

Definition at line 62 of file W10nJsonTransmitter.h.

Member Function Documentation

◆ add_method()

bool BESTransmitter::add_method ( std::string method_name,
p_transmitter trans_method )
virtualinherited

Definition at line 56 of file BESTransmitter.cc.

◆ dump()

void BESTransmitter::dump ( std::ostream & strm) const
virtualinherited

dumps information about this object

Displays the pointer value of this instance along with the names of register transmit methods

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

Implements BESObj.

Definition at line 134 of file BESTransmitter.cc.

◆ find_method()

p_transmitter BESTransmitter::find_method ( std::string method_name)
virtualinherited

Definition at line 78 of file BESTransmitter.cc.

◆ remove_method()

bool BESTransmitter::remove_method ( std::string method_name)
virtualinherited

Definition at line 67 of file BESTransmitter.cc.

◆ send_data()

void W10nJsonTransmitter::send_data ( BESResponseObject * obj,
BESDataHandlerInterface & dhi )
static

The static method registered to transmit OPeNDAP data objects as a JSON file.

This function takes the OPeNDAP DataDDS object, reads in the data (can be used with any data handler), transforms the data into a JSON file, and streams back that JSON file back to the requester using the stream specified in the BESDataHandlerInterface.

Parameters
objThe BESResponseObject containing the OPeNDAP DataDDS object
dhiBESDataHandlerInterface containing information about the request and response
Exceptions
BESInternalErrorif the response is not an OPeNDAP DataDDS or if there are any problems reading the data, writing to a JSON file, or streaming the JSON file

Definition at line 192 of file W10nJsonTransmitter.cc.

◆ send_html()

void BESTransmitter::send_html ( BESInfo & info,
BESDataHandlerInterface & dhi )
virtualinherited

Definition at line 114 of file BESTransmitter.cc.

◆ send_metadata()

void W10nJsonTransmitter::send_metadata ( BESResponseObject * obj,
BESDataHandlerInterface & dhi )
static

The static method registered to transmit OPeNDAP data objects as a JSON file.

This function takes the OPeNDAP DataDDS object, reads in the data (can be used with any data handler), transforms the data into a JSON file, and streams back that JSON file back to the requester using the stream specified in the BESDataHandlerInterface.

Parameters
objThe BESResponseObject containing the OPeNDAP DataDDS object
dhiBESDataHandlerInterface containing information about the request and response
Exceptions
BESInternalErrorif the response is not an OPeNDAP DataDDS or if there are any problems reading the data, writing to a JSON file, or streaming the JSON file

Definition at line 262 of file W10nJsonTransmitter.cc.

◆ send_response()

void BESTransmitter::send_response ( const std::string & method,
BESResponseObject * obj,
BESDataHandlerInterface & dhi )
virtualinherited

Definition at line 89 of file BESTransmitter.cc.

◆ send_text()

void BESTransmitter::send_text ( BESInfo & info,
BESDataHandlerInterface & dhi )
virtualinherited

Definition at line 101 of file BESTransmitter.cc.

Friends And Related Symbol Documentation

◆ ContextCleanup

friend struct ContextCleanup
friend

Definition at line 58 of file W10nJsonTransmitter.h.


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