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

A Request Handler for the Fileout NetCDF request. More...

#include <FONcRequestHandler.h>

Inheritance diagram for FONcRequestHandler:
Inheritance graph
Collaboration diagram for FONcRequestHandler:
Collaboration graph

Public Types

typedef std::map< std::string, p_request_handler_method >::const_iterator Handler_citer
 
typedef std::map< std::string, p_request_handler_method >::iterator Handler_iter
 

Public Member Functions

virtual void add_attributes (BESDataHandlerInterface &)
 
virtual bool add_handler (const std::string &name, p_request_handler_method method)
 Backward compatibility with the older version of this class.
 
virtual bool add_method (const std::string &name, p_request_handler_method method)
 add a handler method to the request handler that knows how to fill in a specific response object
 
virtual void dump (std::ostream &strm) const
 dumps information about this object
 
virtual p_request_handler_method find_method (const std::string &name)
 find the method that can handle the specified response object type
 
 FONcRequestHandler (const std::string &name)
 Constructor for FileOut NetCDF module.
 
virtual time_t get_lmt (const std::string &name)
 Get the Last modified time for.
 
virtual std::string get_method_names ()
 return a comma separated list of response object types handled by this request handler
 
virtual const std::string & get_name () const
 
virtual bool remove_method (const std::string &name)
 remove the specified handler method from this request handler
 
virtual ~FONcRequestHandler (void)
 Any cleanup that needs to take place.
 

Static Public Member Functions

static bool build_help (BESDataHandlerInterface &dhi)
 adds help information for FileOut NetCDF to a help request
 
static bool build_version (BESDataHandlerInterface &dhi)
 add version information to a version response
 
static unsigned long long get_request_max_size_kb ()
 

Static Public Attributes

static bool byte_to_short
 
static unsigned long long chunk_size
 
static bool classic_model
 
static bool nc3_classic_format
 
static bool no_global_attrs
 
static bool reduce_dim
 
static unsigned long long request_max_size_kb
 
static std::string temp_dir
 
static bool use_compression
 
static bool use_shuffle
 

Detailed Description

A Request Handler for the Fileout NetCDF request.

This class is used to represent the Fileout NetCDF module, including functions to build the help and version responses. Data handlers are used to build a Dap DataDDS object, so those functions are not needed here.

Definition at line 45 of file FONcRequestHandler.h.

Member Typedef Documentation

◆ Handler_citer

typedef std::map<std::string,p_request_handler_method>::const_iterator BESRequestHandler::Handler_citer
inherited

Definition at line 89 of file BESRequestHandler.h.

◆ Handler_iter

typedef std::map<std::string,p_request_handler_method>::iterator BESRequestHandler::Handler_iter
inherited

Definition at line 90 of file BESRequestHandler.h.

Constructor & Destructor Documentation

◆ FONcRequestHandler()

FONcRequestHandler::FONcRequestHandler ( const std::string & name)

Constructor for FileOut NetCDF module.

This constructor adds functions to add to the build of a help request and a version request to the BES.

Parameters
nameThe name of the request handler being added to the list of request handlers

Definition at line 145 of file FONcRequestHandler.cc.

◆ ~FONcRequestHandler()

FONcRequestHandler::~FONcRequestHandler ( void )
virtual

Any cleanup that needs to take place.

Definition at line 188 of file FONcRequestHandler.cc.

Member Function Documentation

◆ add_attributes()

void BESRequestHandler::add_attributes ( BESDataHandlerInterface & )
virtualinherited

Definition at line 150 of file BESRequestHandler.cc.

◆ add_handler()

virtual bool BESRequestHandler::add_handler ( const std::string & name,
p_request_handler_method method )
inlinevirtualinherited

Backward compatibility with the older version of this class.

Deprecated

Definition at line 101 of file BESRequestHandler.h.

◆ add_method()

bool BESRequestHandler::add_method ( const std::string & name,
p_request_handler_method handler_method )
virtualinherited

add a handler method to the request handler that knows how to fill in a specific response object

Add a handler method for a specific response object to the request handler. The handler method takes a reference to a BESDataHandlerInterface and returns bool, true if the response object is filled in successfully by the method, false otherwise.

Parameters
handler_namename of the response object this method can fill in
handler_methoda function pointer to the method that can fill in the specified response object
Returns
true if the handler is added, false if it already exists
See also
BESResponseObject
BESResponseNames

Definition at line 58 of file BESRequestHandler.cc.

◆ build_help()

bool FONcRequestHandler::build_help ( BESDataHandlerInterface & dhi)
static

adds help information for FileOut NetCDF to a help request

Adds information to a help request to the BES regarding a file out netcdf response. Included in this information is a link to a docs.opendap.org page that describes fileout netcdf.

Parameters
dhiThe data interface containing information for the current request to the BES
Exceptions
BESInternalErrorif the response object is not an informational response object.

Definition at line 203 of file FONcRequestHandler.cc.

◆ build_version()

bool FONcRequestHandler::build_version ( BESDataHandlerInterface & dhi)
static

add version information to a version response

Adds the version of this module to the version response.

Parameters
dhiThe data interface containing information for the current request to the BES

Definition at line 231 of file FONcRequestHandler.cc.

◆ dump()

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

dumps information about this object

Displays the pointer value of this instance

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

Reimplemented from BESRequestHandler.

Definition at line 249 of file FONcRequestHandler.cc.

◆ find_method()

p_request_handler_method BESRequestHandler::find_method ( const std::string & name)
virtualinherited

find the method that can handle the specified response object type

Find the method that can handle the specified response object type. The response object type is the same as the handler name.

Parameters
handler_namename of the method that can fill in the response object type
Returns
the method that can fill in the specified response object type
See also
BESResponseObject
BESResponseNames

Definition at line 95 of file BESRequestHandler.cc.

◆ get_lmt()

time_t BESRequestHandler::get_lmt ( const std::string & name)
virtualinherited

Get the Last modified time for.

  • name

Handlers that need a more sophisticated method should subclass.

Parameters
name
Returns
The LMT

Definition at line 133 of file BESRequestHandler.cc.

◆ get_method_names()

string BESRequestHandler::get_method_names ( )
virtualinherited

return a comma separated list of response object types handled by this request handler

Returns
the comma separated list of response object types
See also
BESResponseObject
BESResponseNames

Definition at line 112 of file BESRequestHandler.cc.

◆ get_name()

virtual const std::string & BESRequestHandler::get_name ( ) const
inlinevirtualinherited

Definition at line 92 of file BESRequestHandler.h.

◆ get_request_max_size_kb()

static unsigned long long FONcRequestHandler::get_request_max_size_kb ( )
inlinestatic

Definition at line 65 of file FONcRequestHandler.h.

◆ remove_method()

bool BESRequestHandler::remove_method ( const std::string & name)
virtualinherited

remove the specified handler method from this request handler

Parameters
handler_namename of the method to be removed, same as the name of the response object
Returns
true if successfully removed, false if not found
See also
BESResponseNames

Definition at line 74 of file BESRequestHandler.cc.

Member Data Documentation

◆ byte_to_short

bool FONcRequestHandler::byte_to_short
static

Definition at line 53 of file FONcRequestHandler.h.

◆ chunk_size

unsigned long long FONcRequestHandler::chunk_size
static

Definition at line 56 of file FONcRequestHandler.h.

◆ classic_model

bool FONcRequestHandler::classic_model
static

Definition at line 57 of file FONcRequestHandler.h.

◆ nc3_classic_format

bool FONcRequestHandler::nc3_classic_format
static

Definition at line 61 of file FONcRequestHandler.h.

◆ no_global_attrs

bool FONcRequestHandler::no_global_attrs
static

Definition at line 59 of file FONcRequestHandler.h.

◆ reduce_dim

bool FONcRequestHandler::reduce_dim
static

Definition at line 58 of file FONcRequestHandler.h.

◆ request_max_size_kb

unsigned long long FONcRequestHandler::request_max_size_kb
static

Definition at line 60 of file FONcRequestHandler.h.

◆ temp_dir

std::string FONcRequestHandler::temp_dir
static

Definition at line 52 of file FONcRequestHandler.h.

◆ use_compression

bool FONcRequestHandler::use_compression
static

Definition at line 54 of file FONcRequestHandler.h.

◆ use_shuffle

bool FONcRequestHandler::use_shuffle
static

Definition at line 55 of file FONcRequestHandler.h.


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