QRODS
collectionclient.h
1 #ifndef COLLECTIONCLIENT_H
2 #define COLLECTIONCLIENT_H
3 
4 #include <QList>
5 #include <QMap>
6 #include <QString>
7 #include <QNetworkReply>
8 #include "abstracthttpclient.h"
9 #include "filelistingentry.h"
10 #include "resultsparser.h"
11 
13 {
14  Q_OBJECT
15 public:
16  explicit CollectionClient(QString &bURL, QString user, QString pass, QObject *parent = 0);
17 
18  void setJSONParser();
19  void setXMLParser();
20 
21  void getCollectionDataAsync(QString &path);
22  void getCollectionDataLazy(QString &path);
23  void getCollectionDataPaged(QString &path, QString &type, int offset);
24  void getNextPage();
25  bool hasMorePages();
26 
29  void getCollectionDataPaged(FileListingEntry* entry, QString &type, int offset);
30 
31  void addCollection(QString &path);
32  void removeCollection(QString &path);
33 
34  void setRemoteZone(QString &zone);
35 signals:
36  void collectionData(QList<FileListingEntry*>*);
37  void getPageData(FileListingEntry*, QList<FileListingEntry*>*);
38  void getPageData(FileListingEntry*, int firstIndex, int endIndex);
39  void modelChanged();
40 public slots:
41  void replyFinished(QNetworkReply *reply);
42 
43 private:
44  void getCollectionDataFinished(QNetworkReply *reply);
45  void getCollectionDataPagedFinished(QNetworkReply *reply);
46  QMap<QString, FileListingEntry::ObjectType> map;
47  QString _path;
48  int _offset;
49  bool _hasMorePages;
50  bool _isFetching;
51 
52  QMap<QString, FileListingEntry*> _collections;
53 
54  ResultsParser *parser = NULL;
55 };
56 
57 #endif // COLLECTIONCLIENT_H
bool hasMorePages()
CollectionClient::hasMorePages Identify or not next pages.
Definition: collectionclient.cpp:146
Definition: resultsparser.h:8
void setXMLParser()
CollectionClient::setXMLParser Sets a XMLParser.
Definition: collectionclient.cpp:374
void setJSONParser()
CollectionClient::setJSONParser Sets a JSONParser.
Definition: collectionclient.cpp:359
void getCollectionDataAsync(QString &path)
CollectionClient::getCollectionDataAsync Asynchronously gets a collection data.
Definition: collectionclient.cpp:48
Definition: abstracthttpclient.h:14
void replyFinished(QNetworkReply *reply)
CollectionClient::replyFinished Comfirms that the getCollectionData() method has finished.
Definition: collectionclient.cpp:250
Definition: collectionclient.h:12
void getCollectionDataPaged(QString &path, QString &type, int offset)
CollectionClient::getCollectionDataPaged Gets a collection data in form of pages. ...
Definition: collectionclient.cpp:158
void removeCollection(QString &path)
CollectionClient::removeCollection Removes a collection.
Definition: collectionclient.cpp:233
void addCollection(QString &path)
CollectionClient::addCollection Adds a collection.
Definition: collectionclient.cpp:214
Definition: filelistingentry.h:9
void getNextPage()
CollectionClient::getNextPage Gets next page.
Definition: collectionclient.cpp:104
CollectionClient(QString &bURL, QString user, QString pass, QObject *parent=0)
CollectionClient::CollectionClient Constructor method.
Definition: collectionclient.cpp:22
void getCollectionDataLazy(QString &path)
CollectionClient::getCollectionDataLazy Gets a collection data through a lazyloading method...
Definition: collectionclient.cpp:65