add some functions in PIFIleTransfer
git-svn-id: svn://db.shs.com.ru/pip@15 12ceb7fc-bf1f-11e4-8940-5bc7170c53b5
This commit is contained in:
@@ -1,6 +1,6 @@
|
|||||||
project(pip)
|
project(pip)
|
||||||
cmake_minimum_required(VERSION 2.6)
|
cmake_minimum_required(VERSION 2.6)
|
||||||
#set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g3")
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g3")
|
||||||
|
|
||||||
include_directories(${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR})
|
include_directories(${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR})
|
||||||
include(CheckFunctionExists)
|
include(CheckFunctionExists)
|
||||||
|
|||||||
@@ -25,11 +25,23 @@ PIFileTransfer::~PIFileTransfer() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
bool PIFileTransfer::send(const PIFile& file) {
|
||||||
|
return send(file.path());
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
bool PIFileTransfer::send(const PIString & file) {
|
bool PIFileTransfer::send(const PIString & file) {
|
||||||
return send(PIVector<PIFile::FileInfo>() << PIFile::fileInfo(file));
|
return send(PIVector<PIFile::FileInfo>() << PIFile::fileInfo(file));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
bool PIFileTransfer::send(const PIStringList& files) {
|
||||||
|
PIVector<PIFile::FileInfo> fil;
|
||||||
|
piForeachC(PIString &file, files) fil << PIFile::fileInfo(file);
|
||||||
|
return send(fil);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
bool PIFileTransfer::send(PIVector<PIFile::FileInfo> entries) {
|
bool PIFileTransfer::send(PIVector<PIFile::FileInfo> entries) {
|
||||||
PIVector<PIFile::FileInfo> allEntries;
|
PIVector<PIFile::FileInfo> allEntries;
|
||||||
for (int i = 0; i < entries.size_s(); i++) {
|
for (int i = 0; i < entries.size_s(); i++) {
|
||||||
@@ -230,8 +242,14 @@ void PIFileTransfer::receive_started() {
|
|||||||
|
|
||||||
void PIFileTransfer::receive_finished(bool ok) {
|
void PIFileTransfer::receive_finished(bool ok) {
|
||||||
if (pftheader.step == pft_Description) {
|
if (pftheader.step == pft_Description) {
|
||||||
if (ok) desc >> files_;
|
bool user_ok = true;
|
||||||
else {
|
if (ok) {
|
||||||
|
desc >> files_;
|
||||||
|
PIStringList files;
|
||||||
|
piForeachC(PIFile::FileInfo &fi, files_) files << fi.path;
|
||||||
|
receiveFilesRequest(files, bytesAll(), &user_ok);
|
||||||
|
}
|
||||||
|
if (!ok || !user_ok) {
|
||||||
pftheader.session_id--;
|
pftheader.session_id--;
|
||||||
receiveFilesFinished(false);
|
receiveFilesFinished(false);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -54,6 +54,7 @@ public:
|
|||||||
EVENT1(receiveFilesFinished, bool, ok)
|
EVENT1(receiveFilesFinished, bool, ok)
|
||||||
EVENT(sendFilesStarted)
|
EVENT(sendFilesStarted)
|
||||||
EVENT1(sendFilesFinished, bool, ok)
|
EVENT1(sendFilesFinished, bool, ok)
|
||||||
|
EVENT3(receiveFilesRequest, PIStringList, files, llong, total_bytes, bool *, ok)
|
||||||
|
|
||||||
private:
|
private:
|
||||||
static const char sign[];
|
static const char sign[];
|
||||||
|
|||||||
Reference in New Issue
Block a user