bes  Updated for version 3.20.6
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 
52 public:
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 
57 public:
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 
ShowPathInfoResponseHandler::dump
virtual void dump(std::ostream &strm) const
dumps information about this object
Definition: ShowPathInfoResponseHandler.cc:261
ShowPathInfoResponseHandler::execute
virtual void execute(BESDataHandlerInterface &dhi)
executes the command 'show catalog|leaves [for <node>];' by returning nodes or leaves at the top leve...
Definition: ShowPathInfoResponseHandler.cc:99
ShowPathInfoResponseHandler
response handler that returns nodes or leaves within the catalog either at the root or at a specified...
Definition: ShowPathInfoResponseHandler.h:51
BESResponseHandler
handler object that knows how to create a specific response object
Definition: BESResponseHandler.h:77
BESTransmitter
Definition: BESTransmitter.h:47
ShowPathInfoResponseHandler::transmit
virtual void transmit(BESTransmitter *transmitter, BESDataHandlerInterface &dhi)
transmit the response object built by the execute command using the specified transmitter object
Definition: ShowPathInfoResponseHandler.cc:246
BESDataHandlerInterface
Structure storing information used by the BES to handle the request.
Definition: BESDataHandlerInterface.h:56