OnixS C++ CBOE CFE Binary Order Entry (BOE) Handler  1.12.0
API documentation
MutableModifyRejected.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 <vector>
23 
28 
29 
30 namespace OnixS {
31 namespace CboeCFE {
32 namespace Trading {
33 namespace BOE {
34 namespace Testing {
35 
36  /// Modify Rejected messages are sent in response to a Modify Order for an order which cannot be modified.
37  struct ONIXS_CBOE_CFE_BOE_API MutableModifyRejected : public OutgoingMessage
38  {
39  /// The time the event occurred in the CFE Matching Engine (not the time the message was sent).
41  {
42  return transactionTime_;
43  }
44 
45  /// The time the event occurred in the CFE Matching Engine (not the time the message was sent).
47  {
48  transactionTime_ = value;
49  }
50 
51  /// Echoed back from the TPH message
52  StrRef clOrdId() const
53  {
54  return clOrdId_;
55  }
56 
57  /// Echoed back from the TPH message
58  void clOrdId(StrRef value)
59  {
60  clOrdId_ = value;
61  }
62 
63  /// The ClOrdId of the original order.
65  {
66  return origClOrdId_;
67  }
68 
69  /// The ClOrdId of the original order.
70  void origClOrdId(StrRef value)
71  {
72  origClOrdId_ = value;
73  }
74 
75  /// Echoed back from the TPH message
77  {
78  return clearingFirm_;
79  }
80 
81  /// Echoed back from the TPH message
82  void clearingFirm(StrRef value)
83  {
84  clearingFirm_ = value;
85  }
86 
87  /// Modify reject reason
89  {
90  return modifyRejectReason_;
91  }
92 
93  /// Modify reject reason
95  {
96  modifyRejectReason_ = value;
97  }
98 
99  /// Human readable text with more information
100  StrRef text() const
101  {
102  return text_;
103  }
104 
105  /// Human readable text with more information
106  void text(StrRef value)
107  {
108  text_ = value;
109  }
110 
111  /// Returns message type
112  MessageType::Enum type() const ONIXS_BATS_BOE_NOEXCEPT ONIXS_BATS_BOE_OVERRIDE { return MessageType::ModifyRejected; };
113 
114  /// Validates message data
115  /// Throws std::invalid_argument exception if message content is invalid.
116  void validate() const ONIXS_BATS_BOE_OVERRIDE;
117 
118  /// Returns the text representation
119  std::string toString() const ONIXS_BATS_BOE_OVERRIDE;
120 
121  /// The text representation
122  void toString(std::string& str) const ONIXS_BATS_BOE_OVERRIDE;
123 
124  private:
125  size_t serializeTo(unsigned char*) const ONIXS_BATS_BOE_NOEXCEPT ONIXS_BATS_BOE_OVERRIDE;
126 
127  DateTime transactionTime_;
128  Text<20> clOrdId_;
129  Text<20> origClOrdId_;
130  Alpha<4> clearingFirm_;
131  OrderReasonCode::Enum modifyRejectReason_;
132  Text<60> text_;
133  };
134 
135  /// Serializes object into string.
136  ONIXS_CBOE_CFE_BOE_API void toStr(std::string&, const MutableModifyRejected&);
137 
138  /// Serializes object into string.
139  inline std::string toStr(const MutableModifyRejected& msg)
140  {
141  std::string str;
142  toStr(str, msg);
143  return str;
144  }
145 
146 }
147 }
148 }
149 }
150 }
StrRef clOrdId() const
Echoed back from the TPH message.
void modifyRejectReason(OrderReasonCode::Enum value)
Modify reject reason.
Provides efficient way of accessing text-based field values.
Definition: String.h:45
void origClOrdId(StrRef value)
The ClOrdId of the original order.
StrRef origClOrdId() const
The ClOrdId of the original order.
StrRef clearingFirm() const
Echoed back from the TPH message.
OrderReasonCode::Enum modifyRejectReason() const
Modify reject reason.
void transactionTime(DateTime value)
The time the event occurred in the CFE Matching Engine (not the time the message was sent)...
DateTime transactionTime() const
The time the event occurred in the CFE Matching Engine (not the time the message was sent)...
MessageType::Enum type() const ONIXS_BATS_BOE_NOEXCEPT ONIXS_BATS_BOE_OVERRIDE
Returns message type.
void clOrdId(StrRef value)
Echoed back from the TPH message.
void text(StrRef value)
Human readable text with more information.
StrRef text() const
Human readable text with more information.
#define ONIXS_BATS_BOE_NOEXCEPT
Definition: ABI.h:49
Modify Rejected messages are sent in response to a Modify Order for an order which cannot be modified...
Base class for outgoing messages.
ONIXS_CBOE_CFE_BOE_API void toStr(std::string &, const ConstantNewOrderV2 &)
Serializes object into string.
void clearingFirm(StrRef value)
Echoed back from the TPH message.