bes Updated for version 3.21.1
The Backend Server (BES) is the lower two tiers of the Hyrax data server
ShowBesKeyResponseHandler.h
1// -*- mode: c++; c-basic-offset:4 -*-
2//
3// ShowBesKeyResponseHandler.h
4//
5// This file is part of the BES default command set
6//
7// Copyright (c) 2018 OPeNDAP, Inc.
8// Author: Nathan Potter <ndp@opendap.org>
9//
10// This library is free software; you can redistribute it and/or
11// modify it under the terms of the GNU Lesser General Public
12// License as published by the Free Software Foundation; either
13// version 2.1 of the License, or (at your option) any later version.
14//
15// This library is distributed in the hope that it will be useful,
16// but WITHOUT ANY WARRANTY; without even the implied warranty of
17// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
18// Lesser General Public License for more details.
19//
20// You should have received a copy of the GNU Lesser General Public
21// License along with this library; if not, write to the Free Software
22// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
23//
24// You can contact OPeNDAP, Inc. at PO Box 112, Saunderstown, RI. 02874-0112.
25// Please read the full copyright statement in the file COPYRIGHT_URI.
26//
27
28#ifndef I_ShowBesKeyResponseHandler_h
29#define I_ShowBesKeyResponseHandler_h 1
30
31#include <string>
32#include <vector>
33#include <ostream>
34#include "BESResponseHandler.h"
35#include "ShowBesKeyCommand.h"
36
43class ShowBesKeyResponseHandler: public BESResponseHandler {
44public:
45 void eval_resource_path(const std::string &resource_path, const std::string &catalog_root, const bool follow_sym_links,
46 std::string &validPath, bool &isFile, bool &isDir, long long &size, long long &lastModifiedTime, bool &canRead,
47 std::string &remainder);
48
49 ShowBesKeyResponseHandler(const std::string &name);
50 virtual ~ShowBesKeyResponseHandler();
51
52 virtual void execute(BESDataHandlerInterface &dhi);
53 virtual void transmit(BESTransmitter *transmitter, BESDataHandlerInterface &dhi);
54
55 virtual void dump(std::ostream &strm) const;
56
57 static BESResponseHandler *ShowBesKeyResponseBuilder(const std::string &name);
58
59 virtual void getBesKeyValue(std::string key, std::vector<std::string> &values);
60};
61
62#endif // I_ShowBesKeyResponseHandler_h
63
Structure storing information used by the BES to handle the request.
virtual void transmit(BESTransmitter *transmitter, BESDataHandlerInterface &dhi)
transmit the response object built by the execute command using the specified transmitter object
virtual void dump(std::ostream &strm) const
dumps information about this object
virtual void execute(BESDataHandlerInterface &dhi)
executes the command 'show catalog|leaves [for <node>];' by returning nodes or leaves at the top leve...