libfuoten 0.8.2
Qt based library to access the Nextcloud News App API.
Loading...
Searching...
No Matches
Fuoten::GetStatus Class Reference

Requests the status from the News App. More...

#include <Fuoten/API/GetStatus>

Inheritance diagram for Fuoten::GetStatus:
Fuoten::Component QObject

Properties

bool impropertyConfiguredCron
 Returns true when the Nextcloud News app will fail to update the feed correctly, otherwise false.
bool incorrectDbCharset
 Returns true when the database charset of the Nextcloud News app is set up incorrectly, otherwise false.
QString versionString
 This property holds the version of the Nextcoud News app as a string.
Properties inherited from Fuoten::Component
Fuoten::AbstractConfigurationconfiguration
 Pointer to an AbstractConfiguration derived object.
Fuoten::Errorerror
 Pointer to an error object, if any error occurred.
bool inOperation
 Returns true while the request is in operation.
Fuoten::AbstractNotificatornotificator
 Pointer to an object derived from AbstractNotificator.
quint16 requestTimeout
 Timeout in seconds for network requests.
Fuoten::AbstractStoragestorage
 Pointer to an AbstractStorage derived object.
bool useStorage
 If true (the default), a local storage should be used in the successCallback() function to further process the request results.
Fuoten::WipeManagerwipeManager
 Pointer to a WipeManager to handle remote wipe requests.

Public Member Functions

 GetStatus (QObject *parent=nullptr)
 Constructs an API request object with the given parent to query the status from the remote server.
 ~GetStatus () override
 Destroys the GetStatus object.
Q_INVOKABLE void execute () override
 Executes the API request.
bool improperlyConfiguredCron () const
 Returns true if the webapp will fail to update the feed correctly.
bool incorrectDbCharset () const
 Returns true if the database charset is set up incorrectly.
QString versionString () const
 Returns the version of the Nextcloud News app as a string.
Public Member Functions inherited from Fuoten::Component
 Component (QObject *parent=nullptr)
 Constructs a component with the given parent.
 ~Component () override
 Destroys the Component object.
AbstractConfigurationconfiguration () const
 Returns a pointer to the AbstractConfiguration that is currently set.
Errorerror () const
 Returns a pointer to an Error object, if any error occurred.
bool inOperation () const
 Returns true while the API request is running.
bool isUseStorageEnabled () const
 Getter function for the useStorage property.
AbstractNotificatornotificator () const
 Getter function for the notificator property.
quint16 requestTimeout () const
 Returns the currently set request timeout.
void setConfiguration (AbstractConfiguration *nAbstractConfiguration)
 Sets a pointer to a AbstractConfiguration to use for the API request.
void setNotificator (AbstractNotificator *notificator)
 Setter function for the notificator property.
void setRequestTimeout (quint16 seconds)
 Sets the timeout for the API request in seconds.
void setStorage (AbstractStorage *localStorage)
 Setter function for the storage property.
void setUseStorage (bool useStorage)
 Setter function for the useStorage property.
void setWipeManager (WipeManager *wipeManager)
 Setter function for the wipeManager property.
AbstractStoragestorage () const
 Getter function for the storage property.
WipeManagerwipeManager () const
 Getter function for the wipeManager property.

Signals

void improperlyConfiguredCronChanged (bool improperlyConfiguredCron)
 Emitted when the improperlyConfiguredCron value changed.
void incorrectDbCharsetChanged (bool incorrectDbCharset)
 Emitted when the incorrectDbCharset value changed.
void versionStringChanged (const QString &versionString)
 Emitted when the versionString value changed.
Signals inherited from Fuoten::Component
void configurationChanged (Fuoten::AbstractConfiguration *configuration)
 This signal is emitted when the pointer to the AbstractConfiguration object changes.
void errorChanged (Fuoten::Error *error)
 This signal is emitted when the pointer to the Error object changes. error will be a nullptr if no error occurred or the current error has been reset.
void failed (Fuoten::Error *error)
 Emit this signal in a subclass when the request failed for some reason.
void inOperationChanged (bool inOperation)
 This signal is emitted when the in operation status changes.
void notificatorChanged (Fuoten::AbstractNotificator *notificator)
 Notifier signal for the notificator property.
void requestTimeoutChanged (quint16 requestTimeout)
 This signal is emitte when the timeout for the request changes.
void sslErrors (QNetworkReply *reply, const QList< QSslError > &errors)
 This signal is emitted if the SSL/TLS session encountered errors during the set up.
void storageChanged (Fuoten::AbstractStorage *storage)
 Notifier signal for the storage property.
void succeeded (const QJsonDocument &result)
 Emit this signal in a subclass when the request was successful.
void useStorageChanged (bool useStorage)
 Notifier signal for the useStorage property.
void wipeManagerChanged (Fuoten::WipeManager *wipeManager)
 Notifier signal for the wipeManager property.

Protected Member Functions

bool checkOutput () override
 Checks if version and warnings are present in the JSON reply.
void successCallback () override
 Finishes the status request if it was successful.
Protected Member Functions inherited from Fuoten::Component
void addRequestHeader (const QByteArray &headerName, const QByteArray &headerValue)
 Adds a header to the HTTP request.
void addRequestHeaders (const QHash< QByteArray, QByteArray > &headers)
 Adds headers to the HTTP request.
virtual bool checkInput ()
 Performs basic input checks.
virtual void extractError (QNetworkReply *reply)
 Extracts error data from the network reply.
QJsonDocument jsonResult () const
 Returns the JSON result document.
void notify (AbstractNotificator::Type type, QtMsgType severity, const QVariant &data) const
 Checks if a notificator has been set and will use it to notify the user.
void notify (const Error *e) const
 Checks if a notificator has been set and will use it to notify about an occured error.
QHash< QByteArray, QByteArrayrequestHeaders () const
 Returns the currently set HTTP headers for the request.
void sendRequest ()
 Sends the request to the server.
void setApiRoute (const QString &route)
 Sets the API route.
void setApiRoute (const QStringList &routeParts)
 Sets the API route constructed from a route part list.
void setError (Error *nError)
 Sets the pointer of the error property.
void setExpectedJSONType (ExpectedJSONType type)
 Sets the expected JSON type for initial output check.
void setInOperation (bool nInOperation)
 Sets the value of the inOperation property.
void setNetworkOperation (QNetworkAccessManager::Operation operation)
 Sets the operation the network manager should perform for this call.
void setPayload (const QByteArray &payload)
 Sets the payload for the request.
void setPayload (const QJsonObject &payload)
 Sets the payload for the request.
void setRequestHeaders (const QHash< QByteArray, QByteArray > &headers)
 Sets the headers to use for the HTTP request.
void setRequiresAuth (bool reqAuth)
 Set this to true if the request requires authentication.
void setUrlQuery (const QUrlQuery &query)
 Sets the URL query for the request.

Additional Inherited Members

Public Types inherited from Fuoten::Component
enum  ExpectedJSONType : quint8 { Empty = 0 , Array = 1 , Object = 2 }
 Defines the expected JSON type. More...
Static Public Member Functions inherited from Fuoten::Component
static AbstractConfigurationdefaultConfiguration ()
 Returns the global default configuration.
static QNetworkAccessManagerdefaultNam ()
 Returns the global network access manager.
static AbstractNotificatordefaultNotificator ()
 Returns the global default notificator.
static AbstractStoragedefaultStorage ()
 Returns the global default storage.
static WipeManagerdefaultWipeManager ()
 Returns the global default wipe manager.
static AbstractNamFactorynetworkAccessManagerFactory ()
 Returns the currently set network access manager factory.
static void setDefaultConfiguration (AbstractConfiguration *config)
 Sets the global default configuration.
static void setDefaultNam (QNetworkAccessManager *nam)
 Sets the global default network access manager.
static void setDefaultNotificator (AbstractNotificator *notificator)
 Sets the global default notificator.
static void setDefaultStorage (AbstractStorage *storage)
 Sets the global default storage.
static void setDefaultWipeManager (WipeManager *wipeManager)
 Sets the global default wipe manager.
static void setNetworkAccessManagerFactory (AbstractNamFactory *factory)
 Sets the network access manager factory. The factory will be used to create QNetworkAccessManager objects on demand. If no factory is set, a default QNetworkAccessManager object will be created. The Component class will take ownership of the created QNetworkAccessManager.

Detailed Description

Requests the status from the News App.

The status reply will contain the News App version number and possible warnings about improperly configurations. To request the status, set the configuration property and call execute().

The requested data will be stored in the versionString, improperlyConfiguredCron and incorrectDbCharset properties. You can get the raw JSON response from the Component::succeeded() signal. If the request failed for some reason, Component::failed() will be emitted and the Component::inOperation property will contain a valid pointer to an Error object.

Mandatory properties
Component::configuration
API route
/status
Method
GET

Property Documentation

◆ impropertyConfiguredCron

bool Fuoten::GetStatus::impropertyConfiguredCron
read

Returns true when the Nextcloud News app will fail to update the feed correctly, otherwise false.

The default value is false. It will be set in the successCallback().

Since
0.8.0
Access functions:
boolimpropertyConfiguredCron() const
Notifier signal:
voidimproperlyConfiguredCronChanged(bool impropertyConfiguredCron)

◆ incorrectDbCharset

bool Fuoten::GetStatus::incorrectDbCharset
read

Returns true when the database charset of the Nextcloud News app is set up incorrectly, otherwise false.

The default value is false. It will be set in the successCallback().

Since
0.8.0
Access functions:
boolincorrectDbCharset() const
Notifier signal:
voidincorrectDbCharsetChanged(bool incorrectDbCharset)

◆ versionString

QString Fuoten::GetStatus::versionString
read

This property holds the version of the Nextcoud News app as a string.

The default value is an empty string. It will be set in the successCallback().

Since
0.8.0
Access functions:
QStringversionString() const
Notifier signal:
voidversionStringChanged(const QString versionString)

Constructor & Destructor Documentation

◆ GetStatus()

GetStatus::GetStatus ( QObject * parent = nullptr)
explicit

Constructs an API request object with the given parent to query the status from the remote server.

◆ ~GetStatus()

GetStatus::~GetStatus ( )
override

Destroys the GetStatus object.

Member Function Documentation

◆ checkOutput()

bool GetStatus::checkOutput ( )
overrideprotectedvirtual

Checks if version and warnings are present in the JSON reply.

Will at first perform the checks from Component::checkOutput().

Reimplemented from Fuoten::Component.

◆ execute()

void GetStatus::execute ( )
overridevirtual

Executes the API request.

To perform a successful API request, Component::configuration has to be set to a valid AbstractConfiguration object.

Execution will not run if Component::inOperation returns true and will itself set that property to true when start to perform the request.

Implements Fuoten::Component.

◆ improperlyConfiguredCron()

bool GetStatus::improperlyConfiguredCron ( ) const

Returns true if the webapp will fail to update the feed correctly.

Since
0.8.0
See also
improperlyConfiguredCron, improperlyConfiguredCronChanged()

◆ improperlyConfiguredCronChanged

void Fuoten::GetStatus::improperlyConfiguredCronChanged ( bool improperlyConfiguredCron)
signal

Emitted when the improperlyConfiguredCron value changed.

This signal will be triggered in the successCallback().

Since
0.8.0
See also
improperlyConfiguredCron, improperlyConfiguredCron()

◆ incorrectDbCharset()

bool GetStatus::incorrectDbCharset ( ) const

Returns true if the database charset is set up incorrectly.

Since
0.8.0
See also
incorrectDbCharset, incorrectDbCharsetChanged()

◆ incorrectDbCharsetChanged

void Fuoten::GetStatus::incorrectDbCharsetChanged ( bool incorrectDbCharset)
signal

Emitted when the incorrectDbCharset value changed.

This signal will be triggered in the successCallback().

Since
0.8.0
See also
incorrectDbCharset, incorrectDbCharset()

◆ successCallback()

void GetStatus::successCallback ( )
overrideprotectedvirtual

Finishes the status request if it was successful.

Will set the versionString, improperlyConfiguredCron and incorrectDbCharset properties. Afterwards it willset Component::inOperation to false and emits the Component::succeeded() signal.

Implements Fuoten::Component.

◆ versionString()

QString GetStatus::versionString ( ) const

Returns the version of the Nextcloud News app as a string.

The default value is an empty string.

Since
0.8.0
See also
versionString, versionStringChanged()

◆ versionStringChanged

void Fuoten::GetStatus::versionStringChanged ( const QString & versionString)
signal

Emitted when the versionString value changed.

This signal will be triggered in the successCallback().

Since
0.8.0
See also
versionString, versionString()

The documentation for this class was generated from the following files:
  • Fuoten/API/getstatus.h
  • build/Fuoten/FuotenQt5_autogen/include/moc_getstatus.cpp
  • Fuoten/API/getstatus.cpp