csubscriber.h File Reference

#include <cybergarage/typedef.h>
#include <cybergarage/util/clist.h>
#include <cybergarage/util/cstring.h>
#include <cybergarage/net/curl.h>
#include <cybergarage/upnp/cstatevariable.h>

Data Structures

struct  _CgUpnpSubscriber

Defines

#define cg_upnp_subscriber_next(sub)   (CgUpnpSubscriber *)cg_list_next((CgList *)sub)
#define cg_upnp_subscriber_remove(sub)   cg_list_remove((CgList *)sub)
#define cg_upnp_subscriber_setsid(sub, value)   cg_string_setvalue(sub->sid, value)
#define cg_upnp_subscriber_getsid(sub)   cg_string_getvalue(sub->sid)
#define cg_upnp_subscriber_settimeout(sub, value)   (sub->timeout = value)
#define cg_upnp_subscriber_gettimeout(sub)   (sub->timeout)
#define cg_upnp_subscriber_setsubscriptiontime(sub, value)   (sub->subscriptionTime = value)
#define cg_upnp_subscriber_getsubscriptiontime(sub)   (sub->subscriptionTime)
#define cg_upnp_subscriber_setnotifycount(sub, value)   (sub->notifyCount = value)
#define cg_upnp_subscriber_getnotifycount(sub)   (sub->notifyCount)
#define cg_upnp_subscriber_setdeliveryurl(sub, value)   cg_net_url_set(sub->deliveryURL, value)
#define cg_upnp_subscriber_getdeliveryhost(sub)   cg_net_url_gethost(sub->deliveryURL)
#define cg_upnp_subscriber_getdeliverypath(sub)   cg_net_url_getpath(sub->deliveryURL)
#define cg_upnp_subscriber_getdeliveryport(sub)   cg_net_url_getport(sub->deliveryURL)
#define cg_upnp_subscriberlist_clear(subList)   cg_list_clear((CgList *)subList, (CG_LIST_DESTRUCTORFUNC)cg_upnp_subscriber_delete)
#define cg_upnp_subscriberlist_size(subList)   cg_list_size((CgList *)subList)
#define cg_upnp_subscriberlist_gets(subList)   (CgUpnpSubscriber *)cg_list_next((CgList *)subList)
#define cg_upnp_subscriberlist_add(subList, sub)   cg_list_add((CgList *)subList, (CgList *)sub)

Typedefs

typedef _CgUpnpSubscriber CgUpnpSubscriber
typedef _CgUpnpSubscriber CgUpnpSubscriberList

Functions

CgUpnpSubscribercg_upnp_subscriber_new ()
void cg_upnp_subscriber_delete (CgUpnpSubscriber *sub)
void cg_upnp_subscriber_clear (CgUpnpSubscriber *sub)
void cg_upnp_subscriber_renew (CgUpnpSubscriber *sub)
long cg_upnp_subscriber_incrementnotifycount (CgUpnpSubscriber *sub)
BOOL cg_upnp_subscriber_isexpired (CgUpnpSubscriber *sub)
BOOL cg_upnp_subscriber_notify (CgUpnpSubscriber *sub, CgUpnpStateVariable *statVar)
CgUpnpSubscriberListcg_upnp_subscriberlist_new ()
void cg_upnp_subscriberlist_delete (CgUpnpSubscriberList *subscriberlist)

Define Documentation

#define cg_upnp_subscriber_getdeliveryhost sub   )     cg_net_url_gethost(sub->deliveryURL)
 

Set the subscriber's delivery host

Parameters:
sub The event subscriber

#define cg_upnp_subscriber_getdeliverypath sub   )     cg_net_url_getpath(sub->deliveryURL)
 

Set the subscriber's delivery path

Parameters:
sub The event subscriber

#define cg_upnp_subscriber_getdeliveryport sub   )     cg_net_url_getport(sub->deliveryURL)
 

Set the subscriber's delivery port

Parameters:
sub The event subscriber

#define cg_upnp_subscriber_getnotifycount sub   )     (sub->notifyCount)
 

Get the notify count

Parameters:
sub The event subscriber
Returns:
Notify count

#define cg_upnp_subscriber_getsid sub   )     cg_string_getvalue(sub->sid)
 

Get the subscriber's SID (Subscription IDentifier) value

Parameters:
sub The current event subscriber
Returns:
Subscriber's SID

#define cg_upnp_subscriber_getsubscriptiontime sub   )     (sub->subscriptionTime)
 

Get the subscription time (duration)

Parameters:
sub The event subscriber
Returns:
Subscription time

#define cg_upnp_subscriber_gettimeout sub   )     (sub->timeout)
 

Get the subscription timeout (expiration time)

Parameters:
sub The event subscriber
Returns:
Timeout

#define cg_upnp_subscriber_next sub   )     (CgUpnpSubscriber *)cg_list_next((CgList *)sub)
 

Get the next subscriber in a subscriber list. Use as an iterator.

Parameters:
sub The current event subscriber
Returns:
Next subscriber or NULL

#define cg_upnp_subscriber_remove sub   )     cg_list_remove((CgList *)sub)
 

Remove the event subscriber from a subscriber list.

Parameters:
sub The event subscriber to remove

#define cg_upnp_subscriber_setdeliveryurl sub,
value   )     cg_net_url_set(sub->deliveryURL, value)
 

Set the subscriber's delivery URL

Parameters:
sub The event subscriber
value The delivery URL

#define cg_upnp_subscriber_setnotifycount sub,
value   )     (sub->notifyCount = value)
 

Set the notify count to a certain value.

Parameters:
sub The event subscriber
value Notify count

#define cg_upnp_subscriber_setsid sub,
value   )     cg_string_setvalue(sub->sid, value)
 

Set the subscriber's SID (Subscription IDentifier) value

Parameters:
sub The event subscriber
value The SID value

#define cg_upnp_subscriber_setsubscriptiontime sub,
value   )     (sub->subscriptionTime = value)
 

Set the subscription time (duration) to a certain value.

Parameters:
sub The event subscriber
value Subscription time

#define cg_upnp_subscriber_settimeout sub,
value   )     (sub->timeout = value)
 

Set the subscription timeout (expiration time) to a certain value.

Parameters:
sub The event subscriber
value Timeout

#define cg_upnp_subscriberlist_add subList,
sub   )     cg_list_add((CgList *)subList, (CgList *)sub)
 

Add a new event subscriber to a subscriber list

Parameters:
subList The subscriber list to add to
sub The subscriber to add

#define cg_upnp_subscriberlist_clear subList   )     cg_list_clear((CgList *)subList, (CG_LIST_DESTRUCTORFUNC)cg_upnp_subscriber_delete)
 

Clear the contents of a subscriber list

Parameters:
subList The subscriber list to clear

#define cg_upnp_subscriberlist_gets subList   )     (CgUpnpSubscriber *)cg_list_next((CgList *)subList)
 

Get the first item in a subscriber list (use as the first step in iteration).

Parameters:
subList The subscriber list to evaluate

#define cg_upnp_subscriberlist_size subList   )     cg_list_size((CgList *)subList)
 

Get the size (node count) of a subscriber list

Parameters:
subList The subscriber list to evaluate


Typedef Documentation

typedef struct _CgUpnpSubscriber CgUpnpSubscriber
 

The device-side structure for an event subscriber

typedef struct _CgUpnpSubscriber CgUpnpSubscriberList
 

The device-side structure for an event subscriber


Function Documentation

void cg_upnp_subscriber_clear CgUpnpSubscriber sub  ) 
 

Clear the contents of an event subscriber

Todo:
Lacks implementation (is it necessary?)
Parameters:
sub The event subscriber

void cg_upnp_subscriber_delete CgUpnpSubscriber sub  ) 
 

Destroy an event subscriber

Parameters:
sub The event subscriber

long cg_upnp_subscriber_incrementnotifycount CgUpnpSubscriber sub  ) 
 

Increment the event notify count by one

Parameters:
sub The event subscriber
Returns:
The new notify count

BOOL cg_upnp_subscriber_isexpired CgUpnpSubscriber sub  ) 
 

Check, whether a subscriber's event subscription has been expired

Parameters:
sub The subscriber
Returns:
TRUE if the subscription has been expired; otherwise FALSE

CgUpnpSubscriber* cg_upnp_subscriber_new  ) 
 

Create a new event subscriber

BOOL cg_upnp_subscriber_notify CgUpnpSubscriber sub,
CgUpnpStateVariable statVar
 

Post a notification to an event subscriber. This is called in a device.

Parameters:
sub The event subscriber
statVar The evented state variable
Returns:
TRUE if succesful; otherwise FALSE

void cg_upnp_subscriber_renew CgUpnpSubscriber sub  ) 
 

Renew a subscription. Essentially sets subscription time (duration) to zero and resets notify count (== event key).

Parameters:
sub The event subscriber

void cg_upnp_subscriberlist_delete CgUpnpSubscriberList subscriberlist  ) 
 

Destroy an event subscriber list

Parameters:
subscriberlist The list to destroy

CgUpnpSubscriberList* cg_upnp_subscriberlist_new  ) 
 

Create a new event subscriber list


Generated on Fri Jun 16 16:58:33 2006 for CyberLinkC by  doxygen 1.4.6