summaryrefslogtreecommitdiff
path: root/libproxy/extension_config.hpp
diff options
context:
space:
mode:
authornpmccallum <npmccallum@c587cffe-e639-0410-9787-d7902ae8ed56>2010-02-05 06:52:13 +0000
committernpmccallum <npmccallum@c587cffe-e639-0410-9787-d7902ae8ed56>2010-02-05 06:52:13 +0000
commit25e1080dd5ae9ce82a33828d8acaaa4c61f44145 (patch)
tree2b46686d96490d0a8753c146183dee4c126d064b /libproxy/extension_config.hpp
parentee59072c05c9a94556c3470a5a60571b84105781 (diff)
downloadlibproxy-25e1080dd5ae9ce82a33828d8acaaa4c61f44145.tar.gz
massive rework; split off libmodman; make unit tests for libmodman; remove config_wpad; remove config_file (both intenal and module); remove config ordering support; merge lukas' kde plugin rework
git-svn-id: http://libproxy.googlecode.com/svn/trunk@513 c587cffe-e639-0410-9787-d7902ae8ed56
Diffstat (limited to 'libproxy/extension_config.hpp')
-rw-r--r--libproxy/extension_config.hpp55
1 files changed, 55 insertions, 0 deletions
diff --git a/libproxy/extension_config.hpp b/libproxy/extension_config.hpp
new file mode 100644
index 0000000..e672b44
--- /dev/null
+++ b/libproxy/extension_config.hpp
@@ -0,0 +1,55 @@
+/*******************************************************************************
+ * libproxy - A library for proxy configuration
+ * Copyright (C) 2009 Nathaniel McCallum <nathaniel@natemccallum.com>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ ******************************************************************************/
+
+#ifndef MODULE_CONFIG_HPP_
+#define MODULE_CONFIG_HPP_
+
+#include <libmodman/module.hpp>
+#include "url.hpp"
+
+namespace com {
+namespace googlecode {
+namespace libproxy {
+using namespace std;
+using namespace com::googlecode::libmodman;
+
+// Config module
+class DLL_PUBLIC config_extension : public extension<config_extension> {
+public:
+ // Abstract methods
+ virtual url get_config(url dst) throw (runtime_error)=0;
+
+ // Virtual methods
+ virtual string get_ignore(url dst);
+ virtual bool set_creds(url proxy, string username, string password);
+
+ // Final methods
+ bool get_valid();
+ void set_valid(bool valid);
+ virtual bool operator<(const base_extension&) const;
+
+private:
+ bool valid;
+};
+
+}
+}
+}
+
+#endif /* MODULE_CONFIG_HPP_ */