EMA C++ Edition
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
OmmIProviderConfig.h
Go to the documentation of this file.
1 /*|-----------------------------------------------------------------------------
2  *| This source code is provided under the Apache 2.0 license --
3  *| and is provided AS IS with no warranty or guarantee of fit for purpose. --
4  *| See the project's LICENSE.md for details. --
5  *| Copyright (C) 2019 Refinitiv. All rights reserved. --
6  *|-----------------------------------------------------------------------------
7  */
8 
9 #ifndef __thomsonreuters_ema_access_OmmIProviderConfig_h
10 #define __thomsonreuters_ema_access_OmmIProviderConfig_h
11 
33 
34 namespace thomsonreuters {
35 
36 namespace ema {
37 
38 namespace access {
39 
40 class Data;
41 class RefreshMsg;
42 class OmmIProviderConfigImpl;
43 
45 {
46 public :
47 
51  {
53  ApiDispatchEnum
54  };
55 
59  {
61  ApiControlEnum
62  };
63 
65 
66 
70 
72 
73 
77  OmmIProviderConfig(const EmaString & path);
79 
81 
82 
84  virtual ~OmmIProviderConfig();
86 
88 
89 
92  ProviderRole getProviderRole() const;
94 
96 
97 
101  OmmIProviderConfig& clear();
102 
108  OmmIProviderConfig& port( const EmaString& port = "14002" );
109 
115  OmmIProviderConfig& operationModel( OperationModel operationModel = ApiDispatchEnum );
116 
121  OmmIProviderConfig& adminControlDirectory( AdminControl control = ApiControlEnum );
122 
127  OmmIProviderConfig& adminControlDictionary( AdminControl control = ApiControlEnum );
128 
134  OmmIProviderConfig& providerName( const EmaString& providerName );
135 
140  OmmIProviderConfig& config( const Data& config );
141 
146  OmmIProviderConfig& libSslName(const EmaString& libsslName);
147 
152  OmmIProviderConfig& libCryptoName(const EmaString& libcryptoName);
153 
159  OmmIProviderConfig& libCurlName(const EmaString& libcurlName);
160 
161 
166  OmmIProviderConfig& serverCert(const EmaString& serverCert);
167 
172  OmmIProviderConfig& serverPrivateKey(const EmaString& serverPrivateKey);
173 
178  OmmIProviderConfig& cipherSuite(const EmaString& cipherSuite);
179 
184  OmmIProviderConfig& dhParams(const EmaString& dhParams);
185 
191  OmmIProviderConfig& addAdminMsg( const RefreshMsg& refreshMsg );
193 
194 private:
195 
196  friend class OmmIProviderImpl;
197  friend class OmmProvider;
198 
199  OmmIProviderConfigImpl* _pImpl;
200 
201  OmmIProviderConfigImpl* getConfigImpl() const;
202 
204  OmmIProviderConfig& operator=( const OmmIProviderConfig& );
205 };
206 
207 }
208 
209 }
210 
211 }
212 
213 #endif // __thomsonreuters_ema_access_OmmIProviderConfig_h
OmmProvider class encapsulates functionality of an Interactive and NonInteractive OmmProvider applica...
Definition: OmmProvider.h:161
EmaString class is a container of a null terminated Ascii character string.
Definition: EmaString.h:56
#define EMA_ACCESS_API
Definition: Common.h:95
RefreshMsg conveys item image, state, permission and group information.
Definition: RefreshMsg.h:78
OmmIProviderConfig is used to specify configuration and behaviour of Interactive OmmProvider.
OmmProviderConfig is a base class for the OmmNiProviderConfig.
Data class is a parent abstract class defining common interfaces for all Data type classes...
Definition: Data.h:38