trader  v0.1a
A framework to build trading applications
exchangeratelab.h
1 // <copyright file="exchangeratelab.h" company="FinSec Systems">
3 // Copyright (c) 2018 finsec.systems. All rights reserved.
4 // </copyright>
5 // <author>Viknash</author>
6 // <date>12/5/2018</date>
7 // <summary>Declares the exchangeratelab class</summary>
9 
10 
11 #pragma once
12 
13 #include "api.h"
14 #include "db.h"
15 #include "exchangeratelabapi.h"
16 #include "interface.h"
17 
18 namespace trader
19 {
20 
21  namespace ExchangeratelabApi
22  {
23  class EndPoints;
24  };
25 
26  class Exchangeratelab;
27 
29  class ExchangeratelabConnection : public Interface::CallConnection, public Poco::Runnable
30  {
31  public:
38  ExchangeratelabConnection(const std::string &connectionid, Exchangeratelab *_exchange)
39  : exchange(_exchange)
40  {
41  (void)connectionid;
42  }
43 
45  void run() {}
46 
47  private:
48  Exchangeratelab *exchange;
49  };
50 
52  class Exchangeratelab : public Api
53  {
54  public:
57 
59  ~Exchangeratelab();
60 
69  Poco::Dynamic::Var invoke(const std::string &httpMethod, Poco::URI &uri);
70 
78  static AutoPtr< Interface::Connection > getConnection(const std::string &connectionId);
79 
81 
82  protected:
89 
97  Exchangeratelab &operator=(const Exchangeratelab &);
98  };
99 
100 } // namespace trader
ExchangeratelabApi::EndPoints api
The API.
Definition: exchangeratelab.h:80
Definition: exchangeratelabapi.h:117
An exchangeratelab connection.
Definition: exchangeratelab.h:29
Definition: api.h:15
ExchangeratelabConnection(const std::string &connectionid, Exchangeratelab *_exchange)
Initializes a new instance of the ExchangeratelabConnection class.
Definition: exchangeratelab.h:38
void run()
Runs this object.
Definition: exchangeratelab.h:45
An exchangeratelab.
Definition: exchangeratelab.h:52
Definition: app.h:7
Definition: interface.h:18267