#include <Client.h>

Inheritance diagram for Dial::Client:
Collaboration diagram for Dial::Client:

Public Types

using Discovered = Delegate< bool(Client &)>
 
- Public Types inherited from UPnP::DeviceControl
using List = ObjectList< DeviceControl >
 
using OwnedList = OwnedObjectList< DeviceControl >
 
- Public Types inherited from UPnP::Device
enum  Field { Field::XX, Field::customStart = domain, Field::MAX }
 
using List = ObjectList< Device >
 
using OwnedList = OwnedObjectList< Device >
 
- Public Types inherited from UPnP::Object
using Version = ObjectClass::Version
 

Public Member Functions

const UPnP::ObjectClassgetClass () const override
 
AppgetApp (const String &applicationId)
 Get application object by name. More...
 
bool sendRequest (HttpRequest *request)
 
void onConnected (HttpConnection &connection) override
 Inherited classes may override this to pull out any additional information from received response headers, etc. Invoked after description has been processed. More...
 
Url getApplicationUrl () const
 
- Public Member Functions inherited from UPnP::DeviceControl
 DeviceControl (DeviceControl &parent)
 
 DeviceControl (DeviceControl *parent=nullptr)
 
bool configureRoot (ControlPoint &controlPoint, const String &location, XML::Node *device)
 Called on root device only during discovery. More...
 
DeviceControlroot ()
 Get the root device. More...
 
const DeviceControlroot () const
 
String getUrl (const String &path) const override
 Get fully-qualified URL given a relative path. More...
 
String getUrlBasePath () const override
 Get relative path for this device. More...
 
ControlPointcontrolPoint () const
 Get managing control point for this device. More...
 
template<typename T >
ServiceControlgetService (const T &serviceType)
 Find a service for this device given its class. More...
 
template<typename T >
DeviceControlgetDevice (const T &deviceType)
 Find a child device given its class. More...
 
String getField (Field desc) const override
 
const String udn () const
 Get UDN for this device. More...
 
bool configure (XML::Node *device)
 Configure device using information from description document. More...
 
DeviceControlgetNext ()
 
DeviceControlparent ()
 
const Descriptiondescription ()
 Get device description. More...
 
- Public Member Functions inherited from UPnP::Device
 Device (Device &parent)
 
 Device (Device *parent=nullptr)
 
String caption () const
 
String resolvePath (const String &path) const
 Resolve a path (relative or absolute) into an absolute path. More...
 
Deviceroot ()
 
const Deviceroot () const
 
bool isRoot () const
 
template<class S , typename T >
S * getService (const T &serviceType)
 
template<typename T >
ServicegetService (const T &serviceType)
 
template<class D , typename T >
D * getDevice (const T &deviceType)
 
template<typename T >
DevicegetDevice (const T &deviceType)
 
void search (const SearchFilter &filter) override
 Called during SSDP search operation. More...
 
bool formatMessage (Message &msg, MessageSpec &ms) override
 Standard fields have been completed. More...
 
Urn objectType () const override
 
String friendlyName () const
 
bool onHttpRequest (HttpServerConnection &connection) override
 Called by framework to handle an incoming HTTP request. More...
 
void addDevice (Device *device)
 
void addService (Service *service)
 
XML::NodegetDescription (XML::Document &doc, DescType descType) const override
 
IDataSourceStreamcreateDescription () override
 Called by framework to construct a device description response stream. More...
 
ItemEnumeratorgetList (unsigned index, String &name) override
 
void sendXml (HttpResponse &response, IDataSourceStream *content)
 
Deviceparent ()
 
Service::OwnedListservices ()
 
OwnedListdevices ()
 
- Public Member Functions inherited from UPnP::ObjectTemplate< Device, Object >
DevicegetNext () const
 
Iterator begin () const
 
Iterator end () const
 
- Public Member Functions inherited from UPnP::Object
ObjectgetNext () const
 
bool typeIs (const Urn &objectType) const
 
bool typeIs (const String &objectType) const
 
bool typeIs (const ObjectClass &objectClass) const
 
virtual Version version () const
 
- Public Member Functions inherited from UPnP::BaseObject
virtual void sendMessage (Message &msg, MessageSpec &ms)
 Called by framework to construct then send a message. More...
 
- Public Member Functions inherited from UPnP::LinkedItem
LinkedItemnext () const override
 
LinkedItemgetNext () const
 
- Public Member Functions inherited from UPnP::Item
virtual ~Item ()
 
bool operator== (const Item &other) const
 

Static Public Member Functions

static UPnP::ObjectcreateObject (UPnP::DeviceControl *owner)
 

Static Public Attributes

static const UPnP::ObjectClass class_
 

Additional Inherited Members

- Protected Attributes inherited from UPnP::DeviceControl
Description description_
 
std::unique_ptr< RootConfigrootConfig
 

Member Typedef Documentation

◆ Discovered

Member Function Documentation

◆ createObject()

static UPnP::Object* Dial::Client::createObject ( UPnP::DeviceControl owner)
inlinestatic

◆ getApp()

App& Dial::Client::getApp ( const String applicationId)

Get application object by name.

Parameters
applicationIdthe unique application. A list of registered ids can be found here: http://www.dial-multiscreen.org/dial-registry/namespace-database#TOC-Registered-Names
Return values
App&Application object reference

◆ getApplicationUrl()

Url Dial::Client::getApplicationUrl ( ) const
inline

◆ getClass()

const UPnP::ObjectClass& Dial::Client::getClass ( ) const
inlineoverridevirtual

Implements UPnP::Object.

◆ onConnected()

void Dial::Client::onConnected ( HttpConnection connection)
overridevirtual

Inherited classes may override this to pull out any additional information from received response headers, etc. Invoked after description has been processed.

Reimplemented from UPnP::DeviceControl.

◆ sendRequest()

bool Dial::Client::sendRequest ( HttpRequest request)
inline

Member Data Documentation

◆ class_

const UPnP::ObjectClass Dial::Client::class_
static

The documentation for this class was generated from the following file: