bes  Updated for version 3.20.6
HttpdCatalogUtils.h
1 
2 // -*- mode: c++; c-basic-offset:4 -*-
3 //
4 // This file is part of httpd_catalog_module, A C++ module that can be loaded in to
5 // the OPeNDAP Back-End Server (BES) and is able to handle remote requests.
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 
26 #ifndef I_HttpCatalogUtils_H
27 #define I_HttpCatalogUtils_H 1
28 
29 #include <string>
30 #include <map>
31 #include <vector>
32 
33 namespace httpd_catalog {
34 
49 public:
50  static std::map<std::string, std::string> MimeList;
51  static std::string ProxyProtocol;
52  static std::string ProxyHost;
53  static std::string ProxyUserPW;
54  static std::string ProxyUser;
55  static std::string ProxyPassword;
56  static int ProxyPort;
57  static int ProxyAuthType;
58  static bool useInternalCache;
59 
60  static std::string NoProxyRegex;
61 
62  static void initialize();
63  static void get_type_from_disposition(const std::string &disp, std::string &type);
64  static void get_type_from_content_type(const std::string &ctype, std::string &type);
65  static void get_type_from_url(const std::string &url, std::string &type);
66 };
67 
68 } // namespace httpd_catalog
69 
70 #endif // I_HttpCatalogUtils_H
71 
httpd_catalog::HttpdCatalogUtils
utility class for the HTTP catalog module
Definition: HttpdCatalogUtils.h:48