comparison irccdctl/plugin_config_cli.hpp @ 528:9daccaeedcce

Irccdctl: split cli.hpp, closes #726
author David Demelier <markand@malikania.fr>
date Thu, 16 Nov 2017 23:12:45 +0100
parents
children 986ed3a7575d
comparison
equal deleted inserted replaced
527:a88796ed040a 528:9daccaeedcce
1 /*
2 * plugin_config_cli.hpp -- implementation of irccdctl plugin-config
3 *
4 * Copyright (c) 2013-2017 David Demelier <markand@malikania.fr>
5 *
6 * Permission to use, copy, modify, and/or distribute this software for any
7 * purpose with or without fee is hereby granted, provided that the above
8 * copyright notice and this permission notice appear in all copies.
9 *
10 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
11 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
12 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
13 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
14 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
15 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
16 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
17 */
18
19 #ifndef IRCCD_PLUGIN_CONFIG_CLI_HPP
20 #define IRCCD_PLUGIN_CONFIG_CLI_HPP
21
22 /**
23 * \file plugin_config_cli.hpp
24 * \brief Implementation of irccdctl plugin-config.
25 */
26
27 #include "cli.hpp"
28
29 namespace irccd {
30
31 namespace ctl {
32
33 /**
34 * \brief Implementation of irccdctl plugin-config.
35 */
36 class plugin_config_cli : public cli {
37 private:
38 void set(ctl::controller&, const std::vector<std::string>&);
39 void get(ctl::controller&, const std::vector<std::string>&);
40 void getall(ctl::controller&, const std::vector<std::string>&);
41
42 public:
43 /**
44 * \copydoc cli::name
45 */
46 std::string name() const override;
47
48 /**
49 * \copydoc cli::exec
50 */
51 void exec(ctl::controller& irccdctl, const std::vector<std::string>& args) override;
52 };
53
54 } // !ctl
55
56 } // !irccd
57
58 #endif // !IRCCD_PLUGIN_CONFIG_CLI_HPP