Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cleanup #80

Open
wants to merge 11 commits into
base: master
Choose a base branch
from
4 changes: 2 additions & 2 deletions MSHttpRequest/main.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -208,7 +208,7 @@ int main(int argc, char *argv[])

QByteArray payload;

payload.append("{\"t_val\":\"This is payload for POST request\"}");
payload.append(R"({"t_val":"This is payload for POST request"})");

req->addHeader(QStringLiteral("Content-Length"),QString::number(payload.length()).toLocal8Bit());

Expand Down Expand Up @@ -333,7 +333,7 @@ int main(int argc, char *argv[])

QByteArray payload2;

payload2.append("{\"t_val\":\"This is payload for PUT request\"}");
payload2.append(R"({"t_val":"This is payload for PUT request"})");

req->addHeader(QStringLiteral("Content-Length"),QString::number(payload2.length()).toLocal8Bit());

Expand Down
54 changes: 21 additions & 33 deletions MSHttpRequest/mshttprequest.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -74,9 +74,8 @@ bool MSHttpRequest::setMethod(const QString &method){
this->requestMethod=method.toUpper();
return true;
}
else{
return false;
}

return false;
}

//==============================================================================================
Expand Down Expand Up @@ -116,13 +115,10 @@ QString MSHttpRequest::getReplyHeader(const QByteArray &headerName){

QList<QPair<QByteArray,QByteArray>> hl = this->cUrlObject->replyHeaders;

for(int i=0;i<hl.size();i++){

if(hl[i].first == headerName){

return hl[i].second;
}
}
auto iter = std::find_if(hl.begin(), hl.end(),
[&headerName](const QPair<QByteArray,QByteArray>& i) { return i.first == headerName; });
if (iter != hl.end())
return iter->second;

return QString();
}
Expand Down Expand Up @@ -161,23 +157,22 @@ void MSHttpRequest::setInputDataStream(QMultiBuffer *data){

this->dataStreamType = dataStreamTypes::DS_MultiBuffer;

for(int i = 0;i < data->items.size(); i++){
for(auto & item : data->items){

if(data->items[i].fileName == ""){
QIODevice* dd = ((QIODevice*)qvariant_cast<QIODevice*> (data->items[i].slot));
if(item.fileName == ""){
QIODevice* dd = ((QIODevice*)qvariant_cast<QIODevice*> (item.slot));
dd->open(QIODevice::ReadOnly);
QByteArray b = dd->readAll();
this->dataStreamMultiBuffer.append(QPair<dataStreamTypes,QByteArray>(dataStreamTypes::DS_ByteArray,b));
}
else{
QFile* f = qvariant_cast<QFile*> (data->items[i].slot);
QFile* f = qvariant_cast<QFile*> (item.slot);
this->dataStreamMultiBuffer.append(QPair<dataStreamTypes,QByteArray>(dataStreamTypes::DS_File,f->fileName().toLocal8Bit()));
}


}

return;
}

//==============================================================================================
Expand Down Expand Up @@ -323,7 +318,7 @@ void MSHttpRequest::post(const QByteArray &data){
}

// set request headers
if(this->requestHeaders.size() > 0){
if(!this->requestHeaders.empty()){

QStringList h;
QHash<QString,QString>::iterator i = this->requestHeaders.begin();
Expand Down Expand Up @@ -519,7 +514,7 @@ void MSHttpRequest::post(QIODevice *data){


// set request headers
if(this->requestHeaders.size() > 0){
if(!this->requestHeaders.empty()){

QStringList h;
QHash<QString,QString>::iterator i = this->requestHeaders.begin();
Expand Down Expand Up @@ -682,7 +677,7 @@ void MSHttpRequest::put(const QByteArray &data){
}

// set request headers
if(this->requestHeaders.size() > 0){
if(!this->requestHeaders.empty()){

QStringList h;
QHash<QString,QString>::iterator i = this->requestHeaders.begin();
Expand Down Expand Up @@ -868,7 +863,7 @@ void MSHttpRequest::put(QIODevice *data){
}

// set request headers
if(this->requestHeaders.size() > 0){
if(!this->requestHeaders.empty()){

QStringList h;
QHash<QString,QString>::iterator i = this->requestHeaders.begin();
Expand Down Expand Up @@ -947,7 +942,7 @@ void MSHttpRequest::deleteResource(){
// cUrlObject->requestOptions[CURLOPT_POSTFIELDSIZE] = 0;

// set request headers
if(this->requestHeaders.size() > 0){
if(!this->requestHeaders.empty()){

QStringList h;
QHash<QString,QString>::iterator i = this->requestHeaders.begin();
Expand Down Expand Up @@ -1004,7 +999,7 @@ void MSHttpRequest::get(){

QString p = "";

if(this->queryItems.size() > 0){
if(!this->queryItems.empty()){

QHash<QString,QString>::iterator i = this->queryItems.begin();

Expand All @@ -1025,7 +1020,7 @@ void MSHttpRequest::get(){
}

// set request headers
if(this->requestHeaders.size() > 0){
if(!this->requestHeaders.empty()){

QStringList h;
QHash<QString,QString>::iterator i = this->requestHeaders.begin();
Expand Down Expand Up @@ -1128,10 +1123,10 @@ void MSHttpRequest::exec(){

ds << this->dataStreamMultiBuffer.size();

for(int i =0; i< this->dataStreamMultiBuffer.size(); i++){
for(const auto & i : this->dataStreamMultiBuffer){

ds << this->dataStreamMultiBuffer[i].first;
ds << this->dataStreamMultiBuffer[i].second;
ds << i.first;
ds << i.second;

}
}
Expand Down Expand Up @@ -1159,8 +1154,6 @@ void MSHttpRequest::exec(){

delete(exe);

return ;


}
//==============================================================================================
Expand Down Expand Up @@ -1193,12 +1186,7 @@ QString MSHttpRequest::readReplyText(){

bool MSHttpRequest::replyOK(){

if(this->replyError == QNetworkReply::NetworkError::NoError){
return true;
}
else{
return false;
}
return this->replyError == QNetworkReply::NetworkError::NoError;
}

//==============================================================================================
Expand Down
7 changes: 1 addition & 6 deletions MSHttpRequest/msnetworkcookiejar.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -72,12 +72,7 @@ MSNetworkCookieJar::~MSNetworkCookieJar(){
}

bool MSNetworkCookieJar::isCookieRemoved(){
if(this->cookieFile == nullptr){
return true;
}
else{
return false;
}
return this->cookieFile == nullptr;
}

//MSNetworkCookieJar MSNetworkCookieJar::operator =(MSNetworkCookieJar c)
5 changes: 2 additions & 3 deletions MSHttpRequest/msnetworkproxy.h
Original file line number Diff line number Diff line change
Expand Up @@ -40,9 +40,8 @@ class MSNetworkProxy : public QObject
if(this->proxyAddr != ""){
return this->proxyType + "://" + this->proxyAddr + ":" + this->proxyPort;
}
else{
return QString("ggggggg");
}

return QString("ggggggg");

}

Expand Down
23 changes: 10 additions & 13 deletions MSHttpRequest/qmultibuffer.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ void QMultiBuffer::append(QIODevice* d){
s.fileName = f->fileName();
}

if(this->items.size() == 0){
if(this->items.empty()){
s.beginPos = 0;
s.endPos = d->size()-1;
}
Expand All @@ -47,7 +47,7 @@ void QMultiBuffer::append(QByteArray *d){

slotBound s = {this->items.size(),0,0,""};

if(this->items.size() == 0){
if(this->items.empty()){
s.beginPos = 0;
s.endPos = d->size()-1;
}
Expand Down Expand Up @@ -110,10 +110,9 @@ qint64 QMultiBuffer::readData(char *data, qint64 maxlen){
((QIODevice*)(qvariant_cast<QIODevice*> (this->items[currentSlot].slot)))->close();
break;
}
else{
((QIODevice*)(qvariant_cast<QIODevice*> (this->items[currentSlot].slot)))->close();
currentSlot++;
}

((QIODevice*)(qvariant_cast<QIODevice*> (this->items[currentSlot].slot)))->close();
currentSlot++;
}

this->cursor += w;
Expand Down Expand Up @@ -143,10 +142,8 @@ bool QMultiBuffer::seek(qint64 pos){
this->cursor = pos;
return true;
}
else{
return false;
}

return false;

}

Expand All @@ -156,15 +153,15 @@ qint64 QMultiBuffer::size() const{

qint64 sz=0;

for(int i=0; i< this->items.size();i++){
for(const auto& item : this->items){

QString vt = this->items[i].slot.typeName();
QString vt = item.slot.typeName();

if( vt == "QBuffer*"){
sz += ((QBuffer*)(qvariant_cast<QBuffer*> (this->items[i].slot)))->size();
sz += ((QBuffer*)(qvariant_cast<QBuffer*> (item.slot)))->size();
}
if( vt == "QIODevice*"){
sz += ((QFile*)(qvariant_cast<QFile*> (this->items[i].slot)))->size();
sz += ((QFile*)(qvariant_cast<QFile*> (item.slot)))->size();
}
}

Expand Down
53 changes: 22 additions & 31 deletions README.MD
Original file line number Diff line number Diff line change
@@ -1,61 +1,52 @@
# The CloudCross Project

## Current version: 1.4.6

Release date: **2020-01-16**

Author: **Kamensky Vladimir**



The CloudCross is a open source project for a synchronization between your devices and various cloud storages. This software is a cross-platform and could be run on Linux, Windows and Mac OS.
The CloudCross is a open source project for a synchronization between your devices and various cloud storages. This software is a cross-platform and could be run on Linux, Windows and Mac OS.

CloudCross allows you to sync only a portion of the local/remote files and folders using black or white lists (.include and .exclude files).
At the same time you have the opportunity to choose which files have the advantage - local or remote. Thus, you can keep relevance either local files or files on cloud storage.

### For install on Gentoo Linux and hopefully its derivatives (Funtoo, Calculate etc.)

a CloudCross ebuild may be found in [programmador](https://bitbucket.org/programmador/gentoo-overlay/overview) overlay.

For simple including of overlays in Your system [Layman](https://wiki.gentoo.org/wiki/Layman) may be used:

layman -a -s programmador

Now CloudCross should be installable:

emerge --ask net-misc/cloudcross

### For install on deb-based distributions (Debian,Ubuntu,Linux Mint):

sudo apt-get install build-essential qt5-default qtbase5-dev qt5-qmake libcurl4-openssl-dev

a CloudCross ebuild may be found in [programmador](https://bitbucket.org/programmador/gentoo-overlay/overview) overlay.

For simple including of overlays in Your system [Layman](https://wiki.gentoo.org/wiki/Layman) may be used:

### For install on rpm-based distributions (Redhat,CentOS, Fedora, Alt Linux):
layman -a -s programmador

yum groupinstall 'Development Tools'
Now CloudCross should be installable:

yum install qt5-qtbase qt5-qtbase-devel curl-devel
emerge --ask net-misc/cloudcross

### For install on deb-based distributions (Debian,Ubuntu,Linux Mint)

sudo apt-get install build-essential qt5-default qtbase5-dev qt5-qmake libcurl4-openssl-dev

### For install on Arch Linux:
### For install on rpm-based distributions (Redhat,CentOS, Fedora, Alt Linux)

pacman -S base-devel qt5-base curl
yum groupinstall 'Development Tools'

yum install qt5-qtbase qt5-qtbase-devel curl-devel

### For install on Arch Linux

pacman -S base-devel qt5-base curl

### Then to build CloudCross from source follow the next sequence:
### Then to build CloudCross from source follow the next sequence

1. Download archive.
2. Unpack it.
1. Download archive.
2. Unpack it.
3. Go to unpacked folder.
4. mkdir build
5. cd build
6. qmake ../CloudCross.pro
7. make
4. `mkdir build`
5. `cd build`
6. `qmake ../CloudCross.pro`
7. `make`

As a result, in the build directory will be appears a three subdirectories with a result of compilation. In a *ccross-app* folder we need a **ccross** file, in a *ccross-curl-executor* we need a **ccross-curl** file. These two file is a main CloudCross executables. Copy these files to /usr/bin directory.

For detailed usage instructions see https://cloudcross.mastersoft24.ru/usage

For detailed usage instructions see <https://cloudcross.mastersoft24.ru/usage>
Binary file removed build/debug/ccross-app/ccross
Binary file not shown.
Binary file removed build/debug/ccross-curl-executor/ccross-curl
Binary file not shown.
Loading