davixstatusrequest.hpp File Reference

Error report system of davix. More...

`#include <string>`
`#include <utils/davix_types.hpp>`
`#include <iostream>`

## Data Structures

class | Davix::DavixError
| Davix Error Handler. More...
class | Davix::DavixException
| Davix Exception class. More...

## Macros

#define | TRY_DAVIX try
#define | CATCH_DAVIX(err)

## Enumerations

enum

Davix::StatusCode::Code {
Davix::StatusCode::OK = 0x000 , Davix::StatusCode::PartialDone = 0x001 , Davix::StatusCode::WebDavPropertiesParsingError = 0x002 , Davix::StatusCode::UriParsingError = 0x003 ,
Davix::StatusCode::SessionCreationError = 0x004 , Davix::StatusCode::NameResolutionFailure = 0x005 , Davix::StatusCode::ConnectionProblem = 0x006 , Davix::StatusCode::RedirectionNeeded = 0x007 ,
Davix::StatusCode::ConnectionTimeout = 0x008 , Davix::StatusCode::OperationTimeout = 0x009 , Davix::StatusCode::OperationNonSupported = 0x00a , Davix::StatusCode::IsNotADirectory = 0x00b ,
Davix::StatusCode::InvalidFileHandle = 0x00c , Davix::StatusCode::AlreadyRunning = 0x00d , Davix::StatusCode::AuthenticationError = 0x00e , Davix::StatusCode::AuthentificationError = AuthenticationError ,
Davix::StatusCode::LoginPasswordError = 0x00f , Davix::StatusCode::CredentialNotFound = 0x010 , Davix::StatusCode::PermissionRefused = 0x011 , Davix::StatusCode::FileNotFound = 0x012 ,
Davix::StatusCode::IsADirectory = 0x013 , Davix::StatusCode::SystemError = 0x014 , Davix::StatusCode::FileExist = 0x015 , Davix::StatusCode::InvalidArgument = 0x016 ,
Davix::StatusCode::InvalidServerResponse = 0x017 , Davix::StatusCode::SSLError = 0x018 , Davix::StatusCode::CredDecryptionError = 0x019 , Davix::StatusCode::Canceled = 0x020 ,
Davix::StatusCode::DelegationError = 0x021 , Davix::StatusCode::RemoteError = 0x022 , Davix::StatusCode::ParsingError = 0x23 , Davix::StatusCode::InvalidHook = 0x24 ,
Davix::StatusCode::TimeoutRedirectionError = 0x25 , Davix::StatusCode::TooManyRedirects = 0x26 , Davix::StatusCode::InsufficientStorage = 0x27 , Davix::StatusCode::EnvVarNotSet = 0x28 ,
Davix::StatusCode::UnknownError = 0x100 , Davix::StatusCode::UnknowError = UnknownError
}

## Functions

void | Davix::checkDavixError (DavixError **err)

## Detailed Description

Error report system of davix.

Author
  Devresse Adrien, CERN

## Macro Definition Documentation

## CATCH_DAVIX

#define CATCH_DAVIX | ( |  | err | ) |

Value:
catch(DavixException & e){ \
e.toDavixError(err); \
}catch(std::exception & e){ \
DavixError::setupError(err, " ", StatusCode::SystemError, std::string("System Error ").append(e.what())); \
}catch(...){ \
DavixError::setupError(err, " ", StatusCode::UnknownError, std::string("Unknown Error .... report this")); \
}

## Enumeration Type Documentation

## Code

enum Davix::StatusCode::Code

Common Error code of Davix See DavixError for more details

Enumerator
OK | No Error report.
PartialDone | Request executed partially.
WebDavPropertiesParsingError | Error in the Webdav properties parsing.
UriParsingError | Error in the Webdav properties parsing.
SessionCreationError | impossible to create a session
NameResolutionFailure | DNS resolution failure.
ConnectionProblem | Impossible to connect, host down or network problem.
RedirectionNeeded | redirection is needed manually
ConnectionTimeout | Impossible to connect, host down or network problem.
OperationTimeout | operation timeout
OperationNonSupported | this operation is not supported
IsNotADirectory | Action impossible, is a directory or a collection.
InvalidFileHandle | Invalid file descriptor.
AlreadyRunning | Request already running.
AuthenticationError | Authentication Error.
AuthentificationError | Misspelled - kept for backward compatibility.
LoginPasswordError | Wrong Login and/or Password.
CredentialNotFound | Impossible to find specified credential.
PermissionRefused | Permission deny, Authorisation problem ( EACCESS, EPERM ).
FileNotFound | File not found (ENOENT ).
IsADirectory | This file is not a regular file but a directory ( EISDIR ).
SystemError | System call related error.
FileExist | File already exist ( EEXIST ).
InvalidArgument | Invalid argument from user ( EINVAL ).
InvalidServerResponse | Server answer problem ( > 500 ).
SSLError | SSL/TLS layer Error.
CredDecryptionError | Impossible to decrypt client credential for usage.
Canceled | Operation canceled.
DelegationError | Delegation error.
RemoteError | Remote error. Used for third party copies: it means the destination failed.
ParsingError | Generic Parsing Error.
InvalidHook | Invalid Hook type.
TimeoutRedirectionError | Connection timeout during a redirection.
TooManyRedirects | Too many redirects.
InsufficientStorage | Insufficient storage.
EnvVarNotSet | Environment Variable Missing.
UnknownError | Undefined error.
UnknowError | Misspelled - kept for backward compatibility.