bes Updated for version 3.21.1
The Backend Server (BES) is the lower two tiers of the Hyrax data server
ShowPathInfoResponseHandler.h
1// -*- mode: c++; c-basic-offset:4 -*-
2//
3// W10NResponseHandler.h
4//
5// This file is part of BES w10n handler
6//
7// Copyright (c) 2015v 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_ShowPathInfoResponseHandler_h
29#define I_ShowPathInfoResponseHandler_h 1
30
31#include <string>
32#include <ostream>
33
34#include "BESResponseHandler.h"
35
36#define SHOW_PATH_INFO_RESPONSE "show.pathInfo"
37
51class ShowPathInfoResponseHandler: public BESResponseHandler {
52public:
53 void eval_resource_path(const std::string &resource_path, const std::string &catalog_root, const bool follow_sym_links,
54 std::string &validPath, bool &isFile, bool &isDir, long long &size, long long &lastModifiedTime, bool &canRead,
55 std::string &remainder);
56
57public:
58 ShowPathInfoResponseHandler(const std::string &name);
59 virtual ~ShowPathInfoResponseHandler(void);
60
61 virtual void execute(BESDataHandlerInterface &dhi);
62 virtual void transmit(BESTransmitter *transmitter, BESDataHandlerInterface &dhi);
63
64 virtual void dump(std::ostream &strm) const;
65
66 static BESResponseHandler *ShowPathInfoResponseBuilder(const std::string &name);
67};
68
69#endif // I_ShowPathInfoResponseHandler_h
70
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 execute(BESDataHandlerInterface &dhi)
executes the command 'show catalog|leaves [for <node>];' by returning nodes or leaves at the top leve...
virtual void dump(std::ostream &strm) const
dumps information about this object