QEverCloud 6.1.0
Unofficial Evernote Cloud API for Qt
Loading...
Searching...
No Matches
EverCloudException.h
Go to the documentation of this file.
1
9#ifndef QEVERCLOUD_EVER_CLOUD_EXCEPTION_H
10#define QEVERCLOUD_EVER_CLOUD_EXCEPTION_H
11
12#include "Export.h"
13#include "Helpers.h"
14
15#include <QObject>
16#include <QString>
17
18#include <exception>
19#include <memory>
20
21namespace qevercloud {
22
24
26
28
32class QEVERCLOUD_EXPORT EverCloudException: public std::exception
33{
34protected:
35 mutable QByteArray m_error;
36
37public:
39 explicit EverCloudException(QString error);
40 explicit EverCloudException(const std::string & error);
41 explicit EverCloudException(const char * error);
42
43 virtual ~EverCloudException() noexcept override;
44
45 virtual const char * what() const noexcept override;
46
47 virtual std::shared_ptr<EverCloudExceptionData> exceptionData() const;
48};
49
51
130{
131 Q_OBJECT
132 Q_DISABLE_COPY(EverCloudExceptionData)
133public:
138
139 explicit EverCloudExceptionData(QString error);
140
146 virtual void throwException() const;
147};
148
149using EverCloudExceptionDataPtr = std::shared_ptr<EverCloudExceptionData>;
150
152
158{
159public:
161 explicit EvernoteException(QString error);
162 explicit EvernoteException(const std::string & error);
163 explicit EvernoteException(const char * error);
164
165 virtual EverCloudExceptionDataPtr exceptionData() const override;
166};
167
169
175{
176 Q_OBJECT
177 Q_DISABLE_COPY(EvernoteExceptionData)
178public:
179 explicit EvernoteExceptionData(QString error);
180 virtual void throwException() const override;
181};
182
183} // namespace qevercloud
184
185#endif // QEVERCLOUD_EVER_CLOUD_EXCEPTION_H
#define QEVERCLOUD_EXPORT
Definition Export.h:19
EverCloudException counterpart for asynchronous API.
Definition EverCloudException.h:130
QString errorMessage
Definition EverCloudException.h:137
virtual void throwException() const
Definition EverCloudException.h:33
virtual ~EverCloudException() noexcept override
QByteArray m_error
Definition EverCloudException.h:35
EverCloudException(const std::string &error)
EverCloudException(const char *error)
Definition EverCloudException.h:175
virtual void throwException() const override
Definition EverCloudException.h:158
EvernoteException(QString error)
virtual EverCloudExceptionDataPtr exceptionData() const override
EvernoteException(const std::string &error)
EvernoteException(const char *error)
Definition AsyncResult.h:21
std::shared_ptr< EverCloudExceptionData > EverCloudExceptionDataPtr
Definition EverCloudException.h:149