URLRequestBase Class
(ExternalControlIO::URLRequestBase)Abstract base class for all types of URLrequests of ExternalControlBroker. More...
Header: | #include <URLRequestBase> |
Inherits: | RequestBase |
Inherited By: | ExternalControlIO::FILERequest, ExternalControlIO::FTPRequest, ExternalControlIO::HTTPRequest, ExternalControlIO::SMTPRequest, and ExternalControlIO::TFTPRequest |
Public Functions
URLRequestBase() | |
~URLRequestBase() override |
Reimplemented Public Functions
virtual void | Configure(XMLElementEx *xml, ExternalControlBroker *parentComp, RequestBase *parentRequest) override |
- 7 public functions inherited from ExternalControlIO::RequestBase
- 26 public functions inherited from CDP::StudioAPI::CDPNode
- 1 public function inherited from OSAPIThread
- 2 public functions inherited from ServerIO::ISendTrigger
- 22 public functions inherited from CDP::StudioAPI::ICDPNode
- 14 public functions inherited from OSAPITask
Protected Functions
std::string | Encryption() const |
int | LastStatusCode() const |
virtual long | LibCURLProtocol() const = 0 |
std::string | Method() const |
std::string | Protocol() const |
const URLRequestBase * | RootParent() const |
virtual void | SetConnectionOptions(LibCURLRequest &request) const |
void | SetLastModifiedTimestamp(const std::string ×tamp) |
void | SetLastRequestTimestamp() |
void | SetLastStatusCode(int code) |
virtual bool | TLSSupported() const |
std::string | URL() const |
Reimplemented Protected Functions
virtual void | FillNodeChildren(CDP::StudioAPI::NodeStream &stream) const override |
virtual void | ProcessRequest() override |
- 33 protected functions inherited from ExternalControlIO::RequestBase
- 1 protected function inherited from CDP::StudioAPI::CDPNode
- 1 protected function inherited from OSAPIThread
Additional Inherited Members
- 2 static public members inherited from ExternalControlIO::RequestBase
- 1 protected type inherited from OSAPITask
Detailed Description
Abstract base class for all types of URLrequests of ExternalControlBroker.
Uses LibCURL to invoke actual requests. Derived classes must implement:
- LibCURLProtocol() - to return CURL protocol types that are supported by this request
Derived classes can override:
- SetConnectionOptions() - to set additional CURL options before request is invoked
- TLSSupported() - return true if request supports TLS, so TLS options will be set before request is made
PS! This C++ class is used also for URLSubRequestBase CDP template model. For URLSubRequestBase parent URLRequestBase property values are queried recursively when child does not overwrite them.
Member Function Documentation
URLRequestBase::URLRequestBase()
Default constructs an instance of URLRequestBase.
URLRequestBase::~URLRequestBase()
Destroys the instance of URLRequestBase.
[override virtual]
void URLRequestBase::Configure(XMLElementEx *xml, ExternalControlBroker *parentComp, RequestBase *parentRequest)
[protected]
std::string URLRequestBase::Encryption() const
[override virtual protected]
void URLRequestBase::FillNodeChildren(CDP::StudioAPI::NodeStream &stream) const
[protected]
int URLRequestBase::LastStatusCode() const
[pure virtual protected]
long URLRequestBase::LibCURLProtocol() const
[protected]
std::string URLRequestBase::Method() const
[override virtual protected]
void URLRequestBase::ProcessRequest()
[protected]
std::string URLRequestBase::Protocol() const
[protected]
const URLRequestBase *URLRequestBase::RootParent() const
[virtual protected]
void URLRequestBase::SetConnectionOptions(LibCURLRequest &request) const
[protected]
void URLRequestBase::SetLastModifiedTimestamp(const std::string ×tamp)
[protected]
void URLRequestBase::SetLastRequestTimestamp()
[protected]
void URLRequestBase::SetLastStatusCode(int code)
[virtual protected]
bool URLRequestBase::TLSSupported() const
[protected]
std::string URLRequestBase::URL() const
Get started with CDP Studio today
Let us help you take your great ideas and turn them into the products your customer will love.