bes  Updated for version 3.20.6
W10nJsonTransmitter Class Reference

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

#include <W10nJsonTransmitter.h>

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 More...
 
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. More...
 

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. More...
 
static void send_metadata (BESResponseObject *obj, BESDataHandlerInterface &dhi)
 The static method registered to transmit OPeNDAP data objects as a JSON file. More...
 

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 88 of file W10nJsonTransmitter.cc.

Member Function Documentation

◆ 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 132 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 188 of file W10nJsonTransmitter.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 258 of file W10nJsonTransmitter.cc.


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