OnixS C++ CBOE CFE Binary Order Entry (BOE) Handler
1.11.0
API documentation
Home
Contents
Namespaces
Classes
Files
File List
File Members
include
OnixS
CboeCFE
Trading
BOE
ErrorListener.h
Go to the documentation of this file.
1
/*
2
* Copyright Onix Solutions Limited [OnixS]. All rights reserved.
3
*
4
* This software owned by Onix Solutions Limited [OnixS] and is protected by copyright law
5
* and international copyright treaties.
6
*
7
* Access to and use of the software is governed by the terms of the applicable ONIXS Software
8
* Services Agreement (the Agreement) and Customer end user license agreements granting
9
* a non-assignable, non-transferable and non-exclusive license to use the software
10
* for it's own data processing purposes under the terms defined in the Agreement.
11
*
12
* Except as otherwise granted within the terms of the Agreement, copying or reproduction of any part
13
* of this source code or associated reference material to any other location for further reproduction
14
* or redistribution, and any amendments to this copyright notice, are expressly prohibited.
15
*
16
* Any reproduction or redistribution for sale or hiring of the Software not in accordance with
17
* the terms of the Agreement is a violation of copyright law.
18
*/
19
20
#pragma once
21
22
#include <string>
23
24
#include <
OnixS/CboeCFE/Trading/BOE/ABI.h
>
25
26
namespace
OnixS
{
27
namespace
CboeCFE {
28
namespace
Trading {
29
namespace
BOE {
30
/// Known (selected) error codes.
31
///
32
struct
ONIXS_CBOE_CFE_BOE_API
ErrorCode
33
{
34
/// @copydoc ErrorCode
35
///
36
enum
Enum
37
{
38
General = 1,
///< Identifies errors of generic nature.
39
};
40
};
41
42
/// Returns string representation of ErrorCode value.
43
///
44
ONIXS_CBOE_CFE_BOE_API std::string
enumToString
(
ErrorCode::Enum
);
45
46
/// Defines an interface through which the Handler notifies subscribers
47
/// about errors occurred while processing messages.
48
class
ErrorListener
49
{
50
public
:
51
/// Implement this member to get notified about errors.
52
/// @param code identifies error occurred while processing messages.
53
/// @param description supplies notes on occurred error.
54
/// @note Usually, Handler is capable to recover from errors by itself.
55
/// That means, there's no need to restart manually.
56
/// Instead, Handler will perform all necessary recovering by itself.
57
virtual
void
onError (
ErrorCode::Enum
code,
const
std::string& description) = 0;
58
59
protected
:
60
/// Class provides an interface for handling errors in subscriptions.
61
/// It doesn't provide an interface for instance deletion. However,
62
/// since C++ doesn't have pure interface concept, destructor will be
63
/// generated anyway. We can only control proper use of it. For this
64
/// reason we hide from public use and make it available for descendants.
65
virtual
~ErrorListener
() {}
66
};
67
68
}
69
}
70
}
71
}
OnixS::CboeCFE::Trading::BOE::ErrorListener::~ErrorListener
virtual ~ErrorListener()
Definition:
ErrorListener.h:65
OnixS::CboeCFE::Trading::BOE::ErrorCode
Definition:
ErrorListener.h:32
ABI.h
OnixS::CboeCFE::Trading::BOE::ErrorListener
Definition:
ErrorListener.h:48
OnixS
Definition:
BinaryMessage.h:29
OnixS::CboeCFE::Trading::BOE::ErrorCode::Enum
Enum
Definition:
ErrorListener.h:36
OnixS::CboeCFE::Trading::BOE::enumToString
ONIXS_CBOE_CFE_BOE_API std::string enumToString(ErrorCode::Enum)