OnixS C++ Tullett Prebon SURF Handler 1.6.1
Users' manual and 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
64 ArgumentException(const char* source, const char* argument_name, const char* value, const char* comment = "");
65
67 ArgumentException(const char* source, const char* argument_name, int value, const char* comment = "");
68
70 ArgumentException(const char* source, const char* argument_name, unsigned int value, const char* comment = "");
71
73 ArgumentException(const char* source, const char* argument_name, double value, const char* comment = "");
74};
75
77class ONIXS_TP_SURF_EXPORT NullArgumentException : public ArgumentException
78{
79public:
81 NullArgumentException(const char* source, const char* argument_name);
82};
83
85class ONIXS_TP_SURF_EXPORT ArgumentRangeException : public ArgumentException
86{
87public:
89 ArgumentRangeException(const char* source, const char* message);
90
92 ArgumentRangeException(const char* source, const char* argument_name, int value, int min_value, int max_value);
93
96 const char* source,
97 const char* argument_name,
98 unsigned int value,
99 unsigned int min_value,
100 unsigned int max_value
101 );
102
104 ArgumentRangeException(const char* source, const char* argument_name, int value, unsigned int max_value);
105
107 ArgumentRangeException(const char* source, const char* argument_name, unsigned int value, unsigned int max_value);
108
111 const char* source,
112 const char* argument_name,
113 double value,
114 double min_value,
115 double max_value
116 );
117};
118
120class ONIXS_TP_SURF_EXPORT OperationException : public Exception
121{
122public:
124 OperationException(const char* source, const char* message);
125};
126
128class ONIXS_TP_SURF_EXPORT NotImplementedException : public OperationException
129{
130public:
132 NotImplementedException(const char* source);
133};
134
135}}} // 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.