diff options
Diffstat (limited to 'api/logic/net/Sink.h')
-rw-r--r-- | api/logic/net/Sink.h | 71 |
1 files changed, 0 insertions, 71 deletions
diff --git a/api/logic/net/Sink.h b/api/logic/net/Sink.h deleted file mode 100644 index d526895c..00000000 --- a/api/logic/net/Sink.h +++ /dev/null @@ -1,71 +0,0 @@ -#pragma once - -#include "net/NetAction.h" - -#include "multimc_logic_export.h" -#include "Validator.h" - -namespace Net { -class MULTIMC_LOGIC_EXPORT Sink -{ -public: /* con/des */ - Sink() {}; - virtual ~Sink() {}; - -public: /* methods */ - virtual JobStatus init(QNetworkRequest & request) = 0; - virtual JobStatus write(QByteArray & data) = 0; - virtual JobStatus abort() = 0; - virtual JobStatus finalize(QNetworkReply & reply) = 0; - virtual bool hasLocalData() = 0; - - void addValidator(Validator * validator) - { - if(validator) - { - validators.push_back(std::shared_ptr<Validator>(validator)); - } - } - -protected: /* methods */ - bool finalizeAllValidators(QNetworkReply & reply) - { - for(auto & validator: validators) - { - if(!validator->validate(reply)) - return false; - } - return true; - } - bool failAllValidators() - { - bool success = true; - for(auto & validator: validators) - { - success &= validator->abort(); - } - return success; - } - bool initAllValidators(QNetworkRequest & request) - { - for(auto & validator: validators) - { - if(!validator->init(request)) - return false; - } - return true; - } - bool writeAllValidators(QByteArray & data) - { - for(auto & validator: validators) - { - if(!validator->write(data)) - return false; - } - return true; - } - -protected: /* data */ - std::vector<std::shared_ptr<Validator>> validators; -}; -} |