This file is indexed.

/usr/include/qt5qevercloud/exceptions.h is in qt5qevercloud-dev 3.0.3+ds-3.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
/**
 * Original work: Copyright (c) 2014 Sergey Skoblikov
 * Modified work: Copyright (c) 2015-2016 Dmitry Ivanov
 *
 * This file is a part of QEverCloud project and is distributed under the terms of MIT license:
 * https://opensource.org/licenses/MIT
 */

#ifndef QEVERCLOUD_EXCEPTIONS_H
#define QEVERCLOUD_EXCEPTIONS_H

#include "Optional.h"
#include "export.h"
#include "EverCloudException.h"
#include "generated/EDAMErrorCode.h"
#include "generated/types.h"
#include <QString>
#include <QObject>
#include <QSharedPointer>

namespace qevercloud {

/**
 * Errors of the Thrift protocol level. It could be wrongly formatted parameters
 * or return values for example.
 */
class QEVERCLOUD_EXPORT ThriftException: public EverCloudException
{
public:
    struct Type {
        enum type {
            UNKNOWN = 0,
            UNKNOWN_METHOD = 1,
            INVALID_MESSAGE_TYPE = 2,
            WRONG_METHOD_NAME = 3,
            BAD_SEQUENCE_ID = 4,
            MISSING_RESULT = 5,
            INTERNAL_ERROR = 6,
            PROTOCOL_ERROR = 7,
            INVALID_DATA = 8
        };
    };

    ThriftException();
    ThriftException(Type::type type);
    ThriftException(Type::type type, QString message);

    Type::type type() const;

    const char * what() const throw() Q_DECL_OVERRIDE;

    virtual QSharedPointer<EverCloudExceptionData> exceptionData() const Q_DECL_OVERRIDE;

protected:
    Type::type m_type;
};

/** Asynchronous API conterpart of ThriftException. See EverCloudExceptionData for more details.*/
class QEVERCLOUD_EXPORT ThriftExceptionData: public EverCloudExceptionData
{
    Q_OBJECT
    Q_DISABLE_COPY(ThriftExceptionData)
public:
    explicit ThriftExceptionData(QString error, ThriftException::Type::type type);
    virtual void throwException() const Q_DECL_OVERRIDE;

protected:
    ThriftException::Type::type m_type;
};

inline QSharedPointer<EverCloudExceptionData> ThriftException::exceptionData() const
{
    return QSharedPointer<EverCloudExceptionData>(new ThriftExceptionData(what(), type()));
}

/** Asynchronous API conterpart of EDAMUserException. See EverCloudExceptionData for more details.*/
class QEVERCLOUD_EXPORT EDAMUserExceptionData: public EvernoteExceptionData
{
    Q_OBJECT
    Q_DISABLE_COPY(EDAMUserExceptionData)
public:
    explicit EDAMUserExceptionData(QString error, EDAMErrorCode::type errorCode, Optional<QString> parameter);
    virtual void throwException() const Q_DECL_OVERRIDE;

protected:
    EDAMErrorCode::type     m_errorCode;
    Optional<QString>       m_parameter;
};

/** Asynchronous API conterpart of EDAMSystemException. See EverCloudExceptionData for more details.*/
class QEVERCLOUD_EXPORT EDAMSystemExceptionData: public EvernoteExceptionData
{
    Q_OBJECT
    Q_DISABLE_COPY(EDAMSystemExceptionData)
public:
    explicit EDAMSystemExceptionData(QString err, EDAMErrorCode::type errorCode, Optional<QString> message, Optional<qint32> rateLimitDuration);
    virtual void throwException() const Q_DECL_OVERRIDE;

protected:
    EDAMErrorCode::type     m_errorCode;
    Optional<QString>       m_message;
    Optional<qint32>        m_rateLimitDuration;
};

/** Asynchronous API conterpart of EDAMNotFoundException. See EverCloudExceptionData for more details.*/
class QEVERCLOUD_EXPORT EDAMNotFoundExceptionData: public EvernoteExceptionData
{
    Q_OBJECT
    Q_DISABLE_COPY(EDAMNotFoundExceptionData)
public:
    explicit EDAMNotFoundExceptionData(QString error, Optional<QString> identifier, Optional<QString> key);
    virtual void throwException() const Q_DECL_OVERRIDE;

protected:
    Optional<QString> m_identifier;
    Optional<QString> m_key;
};

/**
 *  EDAMSystemException for `errorCode = RATE_LIMIT_REACHED`
 */
class QEVERCLOUD_EXPORT EDAMSystemExceptionRateLimitReached: public EDAMSystemException
{
public:
    virtual QSharedPointer<EverCloudExceptionData> exceptionData() const Q_DECL_OVERRIDE;
};

/** Asynchronous API conterpart of EDAMSystemExceptionRateLimitReached. See EverCloudExceptionData for more details.*/
class QEVERCLOUD_EXPORT EDAMSystemExceptionRateLimitReachedData: public EDAMSystemExceptionData
{
    Q_OBJECT
    Q_DISABLE_COPY(EDAMSystemExceptionRateLimitReachedData)
public:
    explicit EDAMSystemExceptionRateLimitReachedData(QString error, EDAMErrorCode::type errorCode, Optional<QString> message,
                                                     Optional<qint32> rateLimitDuration);
    virtual void throwException() const Q_DECL_OVERRIDE;
};

/**
 *  EDAMSystemException for `errorCode = AUTH_EXPIRED`
 */
class QEVERCLOUD_EXPORT EDAMSystemExceptionAuthExpired: public EDAMSystemException
{
public:
    virtual QSharedPointer<EverCloudExceptionData> exceptionData() const Q_DECL_OVERRIDE;
};

/** Asynchronous API conterpart of EDAMSystemExceptionAuthExpired. See EverCloudExceptionData for more details.*/
class QEVERCLOUD_EXPORT EDAMSystemExceptionAuthExpiredData: public EDAMSystemExceptionData
{
    Q_OBJECT
    Q_DISABLE_COPY(EDAMSystemExceptionAuthExpiredData)
public:
    explicit EDAMSystemExceptionAuthExpiredData(QString error, EDAMErrorCode::type errorCode, Optional<QString> message,
                                                Optional<qint32> rateLimitDuration);
    virtual void throwException() const Q_DECL_OVERRIDE;
};

} // namespace qevercloud

#endif // QEVERCLOUD_EXCEPTIONS_H