Arduino DLNA Server
Loading...
Searching...
No Matches
Public Member Functions | List of all members
tiny_dlna::ISubscriptionMgrDevice Class Referenceabstract

Abstract interface for UPnP event subscription management. More...

#include <ISubscriptionMgrDevice.h>

Inheritance diagram for tiny_dlna::ISubscriptionMgrDevice:
Inheritance graph
[legend]

Public Member Functions

virtual ~ISubscriptionMgrDevice ()=default
 
virtual Str subscribe (DLNAServiceInfo &service, const char *callbackUrl, const char *sid=nullptr, uint32_t timeoutSec=1800)=0
 Subscribe to service events with callback URL.
 
virtual bool unsubscribe (DLNAServiceInfo &service, const char *sid)=0
 Unsubscribe from service events.
 
virtual void addChange (DLNAServiceInfo &service, std::function< size_t(Print &, void *)> changeWriter, void *ref)=0
 Add state change event for notification.
 
virtual int publish ()=0
 Publish pending event notifications.
 
virtual size_t subscriptionsCount ()=0
 Provide actual number of subscriptions.
 
virtual size_t pendingCount ()=0
 Provide actual number of open (unprocessed) notifications.
 
virtual void setSubscriptionsActive (bool flag)=0
 Enable/disable subscription processing.
 
virtual void end ()=0
 Cleanup and stop subscription manager.
 
virtual bool isSubscriptionsActive ()=0
 Check if subscriptions are active.
 
virtual bool processSubscribeRequest (IHttpServer &server, DLNAServiceInfo &service)=0
 Process HTTP SUBSCRIBE request.
 
virtual bool processUnsubscribeRequest (IHttpServer &server, DLNAServiceInfo &service)=0
 Process HTTP UNSUBSCRIBE request.
 

Detailed Description

Abstract interface for UPnP event subscription management.

Defines the contract for managing UPnP event subscriptions on DLNA devices. Handles subscription lifecycle, event notification publishing, and HTTP request processing for SUBSCRIBE/UNSUBSCRIBE operations. Manages event queues and ensures timely delivery of state change notifications.

Constructor & Destructor Documentation

◆ ~ISubscriptionMgrDevice()

virtual tiny_dlna::ISubscriptionMgrDevice::~ISubscriptionMgrDevice ( )
virtualdefault

Member Function Documentation

◆ addChange()

virtual void tiny_dlna::ISubscriptionMgrDevice::addChange ( DLNAServiceInfo service,
std::function< size_t(Print &, void *)>  changeWriter,
void *  ref 
)
pure virtual

Add state change event for notification.

Implemented in tiny_dlna::SubscriptionMgrDevice< ClientType >.

◆ end()

virtual void tiny_dlna::ISubscriptionMgrDevice::end ( )
pure virtual

Cleanup and stop subscription manager.

Implemented in tiny_dlna::SubscriptionMgrDevice< ClientType >.

◆ isSubscriptionsActive()

virtual bool tiny_dlna::ISubscriptionMgrDevice::isSubscriptionsActive ( )
pure virtual

Check if subscriptions are active.

Implemented in tiny_dlna::SubscriptionMgrDevice< ClientType >.

◆ pendingCount()

virtual size_t tiny_dlna::ISubscriptionMgrDevice::pendingCount ( )
pure virtual

Provide actual number of open (unprocessed) notifications.

Implemented in tiny_dlna::SubscriptionMgrDevice< ClientType >.

◆ processSubscribeRequest()

virtual bool tiny_dlna::ISubscriptionMgrDevice::processSubscribeRequest ( IHttpServer server,
DLNAServiceInfo service 
)
pure virtual

Process HTTP SUBSCRIBE request.

Implemented in tiny_dlna::SubscriptionMgrDevice< ClientType >.

◆ processUnsubscribeRequest()

virtual bool tiny_dlna::ISubscriptionMgrDevice::processUnsubscribeRequest ( IHttpServer server,
DLNAServiceInfo service 
)
pure virtual

Process HTTP UNSUBSCRIBE request.

Implemented in tiny_dlna::SubscriptionMgrDevice< ClientType >.

◆ publish()

virtual int tiny_dlna::ISubscriptionMgrDevice::publish ( )
pure virtual

Publish pending event notifications.

Implemented in tiny_dlna::SubscriptionMgrDevice< ClientType >.

◆ setSubscriptionsActive()

virtual void tiny_dlna::ISubscriptionMgrDevice::setSubscriptionsActive ( bool  flag)
pure virtual

Enable/disable subscription processing.

Implemented in tiny_dlna::SubscriptionMgrDevice< ClientType >.

◆ subscribe()

virtual Str tiny_dlna::ISubscriptionMgrDevice::subscribe ( DLNAServiceInfo service,
const char *  callbackUrl,
const char *  sid = nullptr,
uint32_t  timeoutSec = 1800 
)
pure virtual

Subscribe to service events with callback URL.

Implemented in tiny_dlna::SubscriptionMgrDevice< ClientType >.

◆ subscriptionsCount()

virtual size_t tiny_dlna::ISubscriptionMgrDevice::subscriptionsCount ( )
pure virtual

Provide actual number of subscriptions.

Implemented in tiny_dlna::SubscriptionMgrDevice< ClientType >.

◆ unsubscribe()

virtual bool tiny_dlna::ISubscriptionMgrDevice::unsubscribe ( DLNAServiceInfo service,
const char *  sid 
)
pure virtual

Unsubscribe from service events.

Implemented in tiny_dlna::SubscriptionMgrDevice< ClientType >.


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