From 0ab40dc1ab4e689921da54080b135e1d22b1c586 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?louiz=E2=80=99?= Date: Tue, 14 Mar 2017 21:45:23 +0100 Subject: Refactoring louloulibs and cmake Use OBJECT libraries Remove the louloulibs directory Write FOUND variables in the cache --- louloulibs/xmpp/adhoc_session.hpp | 88 --------------------------------------- 1 file changed, 88 deletions(-) delete mode 100644 louloulibs/xmpp/adhoc_session.hpp (limited to 'louloulibs/xmpp/adhoc_session.hpp') diff --git a/louloulibs/xmpp/adhoc_session.hpp b/louloulibs/xmpp/adhoc_session.hpp deleted file mode 100644 index 0de8d13..0000000 --- a/louloulibs/xmpp/adhoc_session.hpp +++ /dev/null @@ -1,88 +0,0 @@ -#pragma once - -#include - -#include -#include -#include - -class XmppComponent; - -class AdhocCommand; -class AdhocSession; - -/** - * A function executed as an ad-hoc command step. It takes a - * XmlNode and modifies it accordingly (inserting for example an - * node, or a data form…). - */ -using AdhocStep = std::function; - -class AdhocSession -{ -public: - explicit AdhocSession(const AdhocCommand& command, const std::string& owner_jid, - const std::string& to_jid); - ~AdhocSession() = default; - - AdhocSession(const AdhocSession&) = delete; - AdhocSession(AdhocSession&&) = delete; - AdhocSession& operator=(const AdhocSession&) = delete; - AdhocSession& operator=(AdhocSession&&) = delete; - - /** - * Return the function to be executed, found in our AdhocCommand, for the - * current_step. And increment the current_step. - */ - const AdhocStep& get_next_step(); - /** - * Return the number of remaining steps. - */ - size_t remaining_steps() const; - /** - * This may be modified by an AdhocStep, to indicate that this session - * should no longer exist, because we encountered an error, and we can't - * execute any more step of it. - */ - void terminate(); - bool is_terminated() const; - std::string get_target_jid() const - { - return this->to_jid; - } - std::string get_owner_jid() const - { - return this->owner_jid; - } - -private: - /** - * A reference of the command concerned by this session. Used for example - * to get the next step of that command, things like that. - */ - const AdhocCommand& command; - /** - * The full JID of the XMPP user that created this session by executing - * the first step of a command. Only that JID must be allowed to access - * this session. - */ - const std::string& owner_jid; - /** - * The 'to' attribute in the request stanza. This is the target of the current session. - */ - const std::string& to_jid; - /** - * The current step we are at. It starts at zero. It is used to index the - * associated AdhocCommand::callbacks vector. - */ - size_t current_step; - bool terminated; - -public: - /** - * A map to store various things that we may want to remember between two - * steps of the same session. A step can insert any value associated to - * any key in there. - */ - std::map vars; -}; -- cgit v1.2.3