taple_core/
error.rs

1//! Possible errors of a TAPLE Node
2use config::ConfigError;
3use thiserror::Error;
4
5/// Possible errors that a TAPLE node can generate.
6/// It does not include internal errors that may be produced by architecture modules.
7#[derive(Error, Debug)]
8pub enum Error {
9    #[error("Settings Load Error")]
10    SettingsError {
11        #[from]
12        source: ConfigError,
13    },
14    #[error("Access Point parse error: {0}")]
15    AcessPointError(String),
16    #[error("API not yet avalabile")]
17    ApiNotYetAvailable,
18    #[error("Can't received anymore notifications. All notification senders dropped")]
19    CantReceiveNotification,
20    #[error("No notifications pending")]
21    NoNewNotification,
22    #[error("Can't generate PK. Both seed and explicit PK are defined in provided settings")]
23    PkConflict,
24    #[error("Either a seed or the MC private key must be specified to start a node")]
25    NoMCAvailable,
26    #[error("Invalid Hex String as Private Key")]
27    InvalidHexString,
28    #[error("Node has previously executed with a different KeyPair. Please, specify the same KeyPair as before. Current ControllerID {0}")]
29    InvalidKeyPairSpecified(String),
30    #[error("A database error has ocurred at main component {0}")]
31    DatabaseError(String),
32    #[error("Serialization Error")]
33    SerializeError,
34    #[error("DeSerialization Error")]
35    DeSerializeError,
36}