00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #if !defined(__ONIXS_ENGINE_SETTINGS_H__)
00021 #define __ONIXS_ENGINE_SETTINGS_H__
00022
00023 #include <vector>
00024 #include <string>
00025
00026 #include "OnixS/FIX/ABI.h"
00027 #include "OnixS/FIX/Session.h"
00028
00029 namespace OnixS
00030 {
00031 namespace System
00032 {
00033
00034 class ISettings;
00035 }
00036 }
00037
00038 namespace OnixS
00039 {
00040 namespace FIX
00041 {
00043 typedef std::vector<int> ListenPorts;
00044
00046 class ONIXS_FIXENGINE_API EngineSettings
00047 {
00048 public:
00050 EngineSettings ();
00051
00053 EngineSettings (const EngineSettings&);
00054
00056 ~EngineSettings ();
00057
00059 EngineSettings& operator = (const EngineSettings&);
00060
00062 void automaticallyCreatedSessionStorageType (Session::SessionStorageType value);
00063
00065 Session::SessionStorageType automaticallyCreatedSessionStorageType () const;
00066
00068 void createEngineLogFile (bool value);
00069
00071 bool createEngineLogFile () const;
00072
00074 void dialect (const std::string& value);
00075
00077 const std::string& dialect () const;
00078
00083 void listenPort (int value);
00084
00089 int listenPort () const;
00090
00092 void listenPorts (const ListenPorts& value);
00093
00095 const ListenPorts& listenPorts () const;
00096
00100 void licenseFile (const std::string& value);
00101
00105 const std::string& licenseFile () const;
00106
00108 void licenseStore (const std::string& value);
00109
00111 const std::string& licenseStore () const;
00112
00114 void logDirectory (const std::string& value);
00115
00117 const std::string& logDirectory () const;
00118
00120 void processDeliverToCompID (bool value);
00121
00123 bool processDeliverToCompID () const;
00124
00132 void reasonableTransmissionTime (int value);
00133
00141 int reasonableTransmissionTime () const;
00142
00144 void tcpNoDelayOption(bool value);
00145
00147 bool tcpNoDelayOption() const;
00148
00150 void reconnectAttempts (int value);
00151
00153 int reconnectAttempts () const;
00154
00156 void reconnectInterval (int value);
00157
00159 int reconnectInterval () const;
00160
00162 void resendingQueueSize (int value);
00163
00165 int resendingQueueSize () const;
00166
00168 void sendLogoutOnException (bool value);
00169
00171 bool sendLogoutOnException () const;
00172
00174 void sslCertificateFile (const std::string& value);
00175
00177 const std::string& sslCertificateFile () const;
00178
00180 void sslPrivateKeyFile (const std::string& value);
00181
00183 const std::string& sslPrivateKeyFile () const;
00184
00186 void sslPrivateKeyPassword (const std::string& value);
00187
00189 const std::string& sslPrivateKeyPassword () const;
00190
00195 void sslListenPort (int value);
00196
00201 int sslListenPort () const;
00202
00204 const OnixS::System::ISettings& getSettings () const;
00205
00206 private:
00207 struct Implementation;
00208 Implementation* impl;
00209 };
00210 }
00211 }
00212
00213 #endif // __ONIXS_ENGINE_SETTINGS_H__