|
libfuoten 0.8.1
Qt based library to access the ownCloud/Nextcloud News App API
|
#include <Fuoten/API/GetUpdatedItems>
Properties | |
| QDateTime | lastModified |
| qint64 | parentId |
| Fuoten::FuotenEnums::Type | type |
| Properties inherited from Component | |
| Fuoten::AbstractConfiguration * | configuration |
| Fuoten::Error * | error |
| bool | inOperation |
| Fuoten::AbstractNotificator * | notificator |
| quint16 | requestTimeout |
| Fuoten::AbstractStorage * | storage |
| bool | useStorage |
| Fuoten::WipeManager * | wipeManager |
Public Member Functions | |
| GetUpdatedItems (const QDateTime &lastModified, FuotenEnums::Type type, qint64 parentId, QObject *parent=nullptr) | |
| GetUpdatedItems (QObject *parent=nullptr) | |
| ~GetUpdatedItems () override | |
| Q_INVOKABLE void | execute () override |
| QDateTime | lastModified () const |
| qint64 | parentId () const |
| void | setLastModified (const QDateTime &nLastModified) |
| void | setParentId (qint64 nParentId) |
| void | setType (FuotenEnums::Type nType) |
| FuotenEnums::Type | type () const |
| Public Member Functions inherited from Component | |
| Component (QObject *parent=nullptr) | |
| ~Component () override | |
| AbstractConfiguration * | configuration () const |
| Error * | error () const |
| bool | inOperation () const |
| bool | isUseStorageEnabled () const |
| AbstractNotificator * | notificator () const |
| quint16 | requestTimeout () const |
| void | setConfiguration (AbstractConfiguration *nAbstractConfiguration) |
| void | setNotificator (AbstractNotificator *notificator) |
| void | setRequestTimeout (quint16 seconds) |
| void | setStorage (AbstractStorage *localStorage) |
| void | setUseStorage (bool useStorage) |
| void | setWipeManager (WipeManager *wipeManager) |
| AbstractStorage * | storage () const |
| WipeManager * | wipeManager () const |
Signals | |
| void | lastModifiedChanged (const QDateTime &lastModified) |
| void | parentIdChanged (qint64 parentId) |
| void | typeChanged (FuotenEnums::Type type) |
| Signals inherited from Component | |
| void | configurationChanged (Fuoten::AbstractConfiguration *configuration) |
| void | errorChanged (Fuoten::Error *error) |
| void | failed (Fuoten::Error *error) |
| void | inOperationChanged (bool inOperation) |
| void | notificatorChanged (Fuoten::AbstractNotificator *notificator) |
| void | requestTimeoutChanged (quint16 requestTimeout) |
| void | sslErrors (QNetworkReply *reply, const QList< QSslError > &errors) |
| void | storageChanged (Fuoten::AbstractStorage *storage) |
| void | succeeded (const QJsonDocument &result) |
| void | useStorageChanged (bool useStorage) |
| void | wipeManagerChanged (Fuoten::WipeManager *wipeManager) |
Protected Member Functions | |
| bool | checkInput () override |
| bool | checkOutput () override |
| void | successCallback () override |
| Protected Member Functions inherited from Component | |
| void | addRequestHeader (const QByteArray &headerName, const QByteArray &headerValue) |
| void | addRequestHeaders (const QHash< QByteArray, QByteArray > &headers) |
| virtual void | extractError (QNetworkReply *reply) |
| QJsonDocument | jsonResult () const |
| void | notify (AbstractNotificator::Type type, QtMsgType severity, const QVariant &data) const |
| void | notify (const Error *e) const |
| QHash< QByteArray, QByteArray > | requestHeaders () const |
| void | sendRequest () |
| void | setApiRoute (const QString &route) |
| void | setApiRoute (const QStringList &routeParts) |
| void | setError (Error *nError) |
| void | setExpectedJSONType (ExpectedJSONType type) |
| void | setInOperation (bool nInOperation) |
| void | setNetworkOperation (QNetworkAccessManager::Operation operation) |
| void | setPayload (const QByteArray &payload) |
| void | setPayload (const QJsonObject &payload) |
| void | setRequestHeaders (const QHash< QByteArray, QByteArray > &headers) |
| void | setRequiresAuth (bool reqAuth) |
| void | setUrlQuery (const QUrlQuery &query) |
Additional Inherited Members | |
| Public Types inherited from Component | |
| enum | ExpectedJSONType : quint8 { Empty = 0 , Array = 1 , Object = 2 } |
| Static Public Member Functions inherited from Component | |
| static AbstractConfiguration * | defaultConfiguration () |
| static AbstractNotificator * | defaultNotificator () |
| static AbstractStorage * | defaultStorage () |
| static WipeManager * | defaultWipeManager () |
| static AbstractNamFactory * | networkAccessManagerFactory () |
| static void | setDefaultConfiguration (AbstractConfiguration *config) |
| static void | setDefaultNotificator (AbstractNotificator *notificator) |
| static void | setDefaultStorage (AbstractStorage *storage) |
| static void | setDefaultWipeManager (WipeManager *wipeManager) |
| static void | setNetworkAccessManagerFactory (AbstractNamFactory *factory) |
Requests updated items/articles from the News App API.
To request updated items/articles, the Component::configuration property has to be set to a valid AbstractConfiguration object and a valid timestamp has to be set to GetUpdatedItems::lastModified. After setting the mandatory properties, call execute() to perform the API request.
If a valid AbstractStorage object is set to the Component::storage property, AbstractStorage::itemsRequested will be called in the successCallback() to save the requested items in the local storage. If the request succeeded, the Component::succeeded() signal will be emitted, containing the JSON api reply.
If something failed, Component::failed() will be emitted and the Component::error property will contain a valid pointer to an Error object.
|
readwrite |
Return only items with a lastModified timestamp >= this one.
This may also return already existing items whose read or starred status has been changed. This property can not be changed while Component::inOperation() returns true.
| QDateTime | lastModified() const |
| void | setLastModified(const QDateTime &nLastModified) |
| void | lastModifiedChanged(const QDateTime &lastModified) |
|
readwrite |
ID of the folder or feed, use 0 for Starred and All.
Defaults to 0. This property can not be changed while Component::inOperation() returns true.
| qint64 | parentId() const |
| void | setParentId(qint64 nParentId) |
| void | parentIdChanged(qint64 parentId) |
|
readwrite |
Type of the query.
Defaults to FuotenEnums::All. This property can not be changed while Component::inOperation() returns true.
| FuotenEnums::Type | type() const |
| void | setType(FuotenEnums::Type nType) |
| void | typeChanged(FuotenEnums::Type type) |
|
explicit |
Constructs a new GetUpdatedItems object with default values and the given parent.
| GetUpdatedItems | ( | const QDateTime & | lastModified, |
| FuotenEnums::Type | type, | ||
| qint64 | parentId, | ||
| QObject * | parent = nullptr ) |
Constructs a new GetUpdatedItems object with the given arguments and parent.
|
override |
Destroys the GetUpdatedItems object.
|
overrideprotectedvirtual |
Checks for valid input values.
Will at first perfrom the checks from Component::checkInput() and will than check if the values of the properties are in valid ranges.
Reimplemented from Component.
|
overrideprotectedvirtual |
Checks for an items array in the JSON API reply.
Will at first perform the checks from Component::checkOutput() and will than check if the items array is present. Will not check if the array is empty.
Reimplemented from Component.
|
overridevirtual |
Executes the API request.
To perform a successful API request, Component::configuration has to be set to a valid AbstractConfiguration object and GetUpdatedItems::lastModified has to contain a valid time.
Execution will not run if Component::inOperation returns true and will itself set that property to true when start to perform the request.
Implements Component.
| QDateTime lastModified | ( | ) | const |
Getter function for the lastModified property.
|
signal |
This is emitted if the value of the lastModified property changes.
| qint64 parentId | ( | ) | const |
Getter function for the parentId property.
|
signal |
This is emitted if the value of the parentId property changes.
| void setLastModified | ( | const QDateTime & | nLastModified | ) |
Setter function for the lastModified property. Emits the lastModifiedChanged() signal if nLastModified is not equal to the stored value.
| void setParentId | ( | qint64 | nParentId | ) |
Setter function for the parentId property. Emits the parentIdChanged() signal if nParentId is not equal to the stored value.
| void setType | ( | FuotenEnums::Type | nType | ) |
Setter function for the type property. Emits the typeChanged() signal if nType is not equal to the stored value.
|
overrideprotectedvirtual |
Finishes the the operation if the request was successful.
If Component::storage points to a valid object, it will use AbstractStorage::itemsRequested() to store, update and delete the items in the local storage according to the server reply. Afterwards it will set Component::inOperation to false and will emit the Component::succeeded() signal.
Implements Component.
| FuotenEnums::Type type | ( | ) | const |
Getter function for the type property.
|
signal |
This is emitted if the value of the type property changes.