OnixS C++ Eurex T7 Market and Reference Data Interface (EMDI, RDI, EOBI) Handlers  7.4.2
API documentation
FeedEngine.cpp
Go to the documentation of this file.
1 // Copyright Onix Solutions Limited [OnixS]. All rights reserved.
2 //
3 // This software owned by Onix Solutions Limited [OnixS] and is
4 // protected by copyright law and international copyright treaties.
5 //
6 // Access to and use of the software is governed by the terms of the applicable
7 // OnixS Software Services Agreement (the Agreement) and Customer end user license
8 // agreements granting a non-assignable, non-transferable and non-exclusive license
9 // to use the software for it's own data processing purposes under the terms defined
10 // in the Agreement.
11 //
12 // Except as otherwise granted within the terms of the Agreement, copying or
13 // reproduction of any part of this source code or associated reference material
14 // to any other location for further reproduction or redistribution, and any
15 // amendments to this copyright notice, are expressly prohibited.
16 //
17 // Any reproduction or redistribution for sale or hiring of the Software not in
18 // accordance with the terms of the Agreement is a violation of copyright law.
19 //
20 
21 #include "FeedEngineImpl.h"
22 
24 
25 #include <OnixS/HandlerCore/ErrorBuilder.h>
26 
27 namespace OnixS {
28 namespace Eurex {
29 namespace MarketData {
30 
32  : impl_(nullptr)
33 {
34  try
35  {
36  impl_ = new FeedEngineImpl(settings, listener, this);
37  impl_->start();
38  }
39  catch (const std::exception& ex)
40  {
41  using namespace HandlerCore::Common;
42 
43  ErrorBuilder errorBuilder;
44  errorBuilder << "Unable to create FeedEngine: " << ex.what();
45  errorBuilder.toError();
46  }
47  catch (...)
48  {
49  throw OperationException(BOOST_CURRENT_FUNCTION, "Unable to create FeedEngine");
50  }
51 }
52 
54 {
55  if (impl_ != nullptr)
56  delete impl_;
57 }
58 
60 {
61  return impl_->settings();
62 }
63 
64 std::string FeedEngine::info() const
65 {
66  std::string res = "FeedEngineInfo ";
67 
68  return res += impl_->info();
69 }
70 
71 
72 }
73 }
74 }
75 
76 
FeedEngine(const FeedEngineSettings &, FeedEngineListener *=ONIXS_EUREX_EMDI_NULLPTR)
Initializes engine with given configuration.
Definition: FeedEngine.cpp:31
std::string info() const
Feed engine info.
Definition: FeedEngine.cpp:64
Definition: Defines.h:30
~FeedEngine()
Destructs given instance.
Definition: FeedEngine.cpp:53
const FeedEngineSettings & settings() const
Settings used define behavior of given instance.
Definition: FeedEngine.cpp:59
Collection of settings affecting Feed Engine behavior.
Definition: FeedEngine.h:97