diff options
Diffstat (limited to 'Swiften/FileTransfer/FileTransferOptions.h')
-rw-r--r-- | Swiften/FileTransfer/FileTransferOptions.h | 69 |
1 files changed, 51 insertions, 18 deletions
diff --git a/Swiften/FileTransfer/FileTransferOptions.h b/Swiften/FileTransfer/FileTransferOptions.h index 304ced8..aa9aa97 100644 --- a/Swiften/FileTransfer/FileTransferOptions.h +++ b/Swiften/FileTransfer/FileTransferOptions.h @@ -1,32 +1,65 @@ /* - * Copyright (c) 2013 Remko Tronçon - * Licensed under the GNU General Public License. + * Copyright (c) 2013-2017 Isode Limited. + * All rights reserved. * See the COPYING file for more information. */ #pragma once -#include <Swiften/Base/Override.h> #include <Swiften/Base/API.h> namespace Swift { - class SWIFTEN_API FileTransferOptions { - public: - FileTransferOptions() : allowInBand(false) { - } + class SWIFTEN_API FileTransferOptions { + public: + FileTransferOptions() : allowInBand_(true), allowAssisted_(true), allowProxied_(true), allowDirect_(true) { + } + SWIFTEN_DEFAULT_COPY_CONSTRUCTOR(FileTransferOptions) + ~FileTransferOptions(); - ~FileTransferOptions(); + FileTransferOptions& withInBandAllowed(bool b) { + allowInBand_ = b; + return *this; + } - FileTransferOptions& withInBandAllowed(bool b) { - allowInBand = b; - return *this; - } + bool isInBandAllowed() const { + return allowInBand_; + } - bool isInBandAllowed() const { - return allowInBand; - } + FileTransferOptions& withAssistedAllowed(bool b) { + allowAssisted_ = b; + return *this; + } - private: - bool allowInBand; - }; + bool isAssistedAllowed() const { + return allowAssisted_; + } + + FileTransferOptions& withProxiedAllowed(bool b) { + allowProxied_ = b; + return *this; + } + + bool isProxiedAllowed() const { + return allowProxied_; + } + + FileTransferOptions& withDirectAllowed(bool b) { + allowDirect_ = b; + return *this; + } + + bool isDirectAllowed() const { + return allowDirect_; + } + + + + SWIFTEN_DEFAULT_COPY_ASSIGMNENT_OPERATOR(FileTransferOptions) + + private: + bool allowInBand_; + bool allowAssisted_; + bool allowProxied_; + bool allowDirect_; + }; } |