diff --git a/bin/jni/datatransfer.i b/bin/jni/datatransfer.i index 9feacb8a8bbdac1a942e0f539f3eb02ddc655a6c..0e23ecdbc7b550fab5b46812a075b970f4043570 100644 --- a/bin/jni/datatransfer.i +++ b/bin/jni/datatransfer.i @@ -20,7 +20,8 @@ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ -%apply int32_t { DRing::DataTransferEventCode }; +%apply uint32_t { DRing::DataTransferEventCode }; +%apply uint32_t { DRing::DataTransferError }; %apply uint64_t { DRing::DataTransferId }; %apply uint64_t { const DRing::DataTransferId }; @@ -28,7 +29,6 @@ #include "dring/dring.h" #include "dring/datatransfer_interface.h" - class DataTransferCallback { public: virtual ~DataTransferCallback(){} @@ -42,22 +42,22 @@ namespace DRing { struct DataTransferInfo { - bool isOutgoing; - DRing::DataTransferEventCode lastEvent; - std::size_t totalSize {0}; - std::streamsize bytesProgress {0}; - std::string displayName; - std::string path; - std::string accountId; - std::string peer; + std::string accountId; + DRing::DataTransferEventCode lastEvent; + uint32_t flags; + int64_t totalSize; + int64_t bytesProgress; + std::string peer; + std::string displayName; + std::string path; + std::string mimetype; }; - void acceptFileTransfer(const DRing::DataTransferId id, const std::string &file_path, std::size_t offset); - void cancelDataTransfer(const DRing::DataTransferId id); - std::streamsize dataTransferBytesProgress(const DRing::DataTransferId id); - DRing::DataTransferInfo dataTransferInfo(const DRing::DataTransferId id) throw(std::invalid_argument); - /* std::vector<uint64_t> dataTransferList(); */ - DRing::DataTransferId sendFile(const std::string &account_id, const std::string &peer_uri, const std::string &file_path, const std::string &display_name) throw(std::invalid_argument, std::runtime_error); + DRing::DataTransferError sendFile(const DRing::DataTransferInfo info, DRing::DataTransferId id); + DRing::DataTransferError acceptFileTransfer(const DRing::DataTransferId id, const std::string file_path, int64_t offset); + DRing::DataTransferError cancelDataTransfer(const DRing::DataTransferId id); + DRing::DataTransferError dataTransferInfo(const DRing::DataTransferId id, DRing::DataTransferInfo &info); + DRing::DataTransferError dataTransferBytesProgress(const DRing::DataTransferId id, int64_t &total, int64_t &progress); }