| 152 | |
| 153 | |
| 154 | class Sql_state_errno_level: public Sql_state_errno |
| 155 | { |
| 156 | public: |
| 157 | /* |
| 158 | Enumeration value describing the severity of the error. |
| 159 | |
| 160 | Note that these enumeration values must correspond to the indices |
| 161 | of the sql_print_message_handlers array. |
| 162 | */ |
| 163 | enum enum_warning_level |
| 164 | { WARN_LEVEL_NOTE, WARN_LEVEL_WARN, WARN_LEVEL_ERROR, WARN_LEVEL_END}; |
| 165 | |
| 166 | protected: |
| 167 | /** Severity (error, warning, note) of this condition. */ |
| 168 | enum_warning_level m_level; |
| 169 | |
| 170 | void assign_defaults(THD *thd, const Sql_state_errno *value); |
| 171 | |
| 172 | public: |
| 173 | /** |
| 174 | Get the error level of this condition. |
| 175 | @return the error level condition item. |
| 176 | */ |
| 177 | enum_warning_level get_level() const |
| 178 | { return m_level; } |
| 179 | |
| 180 | Sql_state_errno_level() |
| 181 | :m_level(WARN_LEVEL_ERROR) |
| 182 | { } |
| 183 | |
| 184 | Sql_state_errno_level(uint sqlerrno, const char* sqlstate, |
| 185 | enum_warning_level level) |
| 186 | :Sql_state_errno(sqlerrno, sqlstate), |
| 187 | m_level(level) |
| 188 | { } |
| 189 | Sql_state_errno_level(const Sql_state_errno &state_errno, |
| 190 | enum_warning_level level) |
| 191 | :Sql_state_errno(state_errno), |
| 192 | m_level(level) |
| 193 | { } |
| 194 | void clear() |
| 195 | { |
| 196 | m_level= WARN_LEVEL_ERROR; |
| 197 | Sql_state_errno::clear(); |
| 198 | } |
| 199 | }; |
| 200 | |
| 201 | |
| 202 | /* |