OnixS C++ Tullett Prebon SURF Handler 1.6.1
API documentation
Loading...
Searching...
No Matches
Exception.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
13 * part of this source code or associated reference material to any other location for further
14 * reproduction or redistribution, and any amendments to this copyright notice, are expressly
15 * prohibited.
16 *
17 * Any reproduction or redistribution for sale or hiring of the Software not in accordance with
18 * the terms of the Agreement is a violation of copyright law.
19 */
20
21#pragma once
22
23#include <OnixS/SURF/MarketData/Export.h>
24
25#include <exception>
26
27namespace OnixS { namespace SURF { namespace MarketData {
28
30class ONIXS_TP_SURF_EXPORT Exception : public std::exception
31{
32public:
34 Exception(const char* method_name, const char* message);
35
38
40 ~Exception() throw();
41
43 Exception& operator=(const Exception&);
44
46 const char* what() const throw();
47
49 void touch(const char* method_name);
50
51private:
52 struct Implementation;
53 Implementation* impl_;
54};
55
57class ONIXS_TP_SURF_EXPORT ArgumentException : public Exception
58{
59public:
61 ArgumentException(const char* source, const char* message);
62
65 const char* source,
66 const char* argument_name,
67 const char* value,
68 const char* comment = ""
69 );
70
73 const char* source,
74 const char* argument_name,
75 int value,
76 const char* comment = ""
77 );
78
81 const char* source,
82 const char* argument_name,
83 unsigned int value,
84 const char* comment = ""
85 );
86
89 const char* source,
90 const char* argument_name,
91 double value,
92 const char* comment = ""
93 );
94};
95
97class ONIXS_TP_SURF_EXPORT NullArgumentException : public ArgumentException
98{
99public:
101 NullArgumentException(const char* source, const char* argument_name);
102};
103
105class ONIXS_TP_SURF_EXPORT ArgumentRangeException : public ArgumentException
106{
107public:
109 ArgumentRangeException(const char* source, const char* message);
110
113 const char* source,
114 const char* argument_name,
115 int value,
116 int min_value,
117 int max_value
118 );
119
122 const char* source,
123 const char* argument_name,
124 unsigned int value,
125 unsigned int min_value,
126 unsigned int max_value
127 );
128
131 const char* source,
132 const char* argument_name,
133 int value,
134 unsigned int max_value
135 );
136
139 const char* source,
140 const char* argument_name,
141 unsigned int value,
142 unsigned int max_value
143 );
144
147 const char* source,
148 const char* argument_name,
149 double value,
150 double min_value,
151 double max_value
152 );
153};
154
156class ONIXS_TP_SURF_EXPORT OperationException : public Exception
157{
158public:
160 OperationException(const char* source, const char* message);
161};
162
164class ONIXS_TP_SURF_EXPORT NotImplementedException : public OperationException
165{
166public:
168 NotImplementedException(const char* source);
169};
170
171}}} // namespace OnixS::SURF::MarketData
ArgumentException(const char *source, const char *argument_name, unsigned int value, const char *comment="")
Constructor.
ArgumentException(const char *source, const char *argument_name, const char *value, const char *comment="")
Constructor.
ArgumentException(const char *source, const char *message)
Constructor.
ArgumentException(const char *source, const char *argument_name, int value, const char *comment="")
Constructor.
ArgumentException(const char *source, const char *argument_name, double value, const char *comment="")
Constructor.
ArgumentRangeException(const char *source, const char *argument_name, int value, unsigned int max_value)
Constructor.
ArgumentRangeException(const char *source, const char *argument_name, int value, int min_value, int max_value)
Constructor.
ArgumentRangeException(const char *source, const char *message)
Constructor.
ArgumentRangeException(const char *source, const char *argument_name, unsigned int value, unsigned int max_value)
Constructor.
ArgumentRangeException(const char *source, const char *argument_name, double value, double min_value, double max_value)
Constructor.
ArgumentRangeException(const char *source, const char *argument_name, unsigned int value, unsigned int min_value, unsigned int max_value)
Constructor.
void touch(const char *method_name)
Add information about context of exception.
Exception(const char *method_name, const char *message)
Constructor.
const char * what() const
Returns information about error.
Exception(const Exception &)
Copy constructor.
NotImplementedException(const char *source)
Constructor.
NullArgumentException(const char *source, const char *argument_name)
Constructor.
OperationException(const char *source, const char *message)
Constructor.