diff --git a/upnp/src/gena/gena_ctrlpt.c b/upnp/src/gena/gena_ctrlpt.c index 1bdbdb8..1ee5ac1 100644 --- a/upnp/src/gena/gena_ctrlpt.c +++ b/upnp/src/gena/gena_ctrlpt.c @@ -131,7 +131,7 @@ static int ScheduleGenaAutoRenew( /*! [in] The time out value of the subscription. */ IN int TimeOut, /*! [in] Subscription being renewed. */ - IN ClientSubscription *sub) + IN GenlibClientSubscription *sub) { UpnpEventSubscribe *RenewEventStruct = NULL; upnp_timeout *RenewEvent = NULL; @@ -398,7 +398,7 @@ static int gena_subscribe( int genaUnregisterClient(UpnpClient_Handle client_handle) { - ClientSubscription *sub_copy = GenlibClientSubscription_new(); + GenlibClientSubscription *sub_copy = GenlibClientSubscription_new(); int return_code = UPNP_E_SUCCESS; struct Handle_Info *handle_info = NULL; http_parser_t response; @@ -446,10 +446,10 @@ int genaUnSubscribe( UpnpClient_Handle client_handle, const UpnpString *in_sid) { - ClientSubscription *sub = NULL; + GenlibClientSubscription *sub = NULL; int return_code = GENA_SUCCESS; struct Handle_Info *handle_info; - ClientSubscription *sub_copy = GenlibClientSubscription_new(); + GenlibClientSubscription *sub_copy = GenlibClientSubscription_new(); http_parser_t response; // validate handle and sid @@ -501,7 +501,7 @@ int genaSubscribe( UpnpString *out_sid) { int return_code = GENA_SUCCESS; - ClientSubscription *newSubscription = GenlibClientSubscription_new(); + GenlibClientSubscription *newSubscription = GenlibClientSubscription_new(); uuid_upnp uid; Upnp_SID temp_sid; Upnp_SID temp_sid2; @@ -582,8 +582,8 @@ int genaRenewSubscription( int *TimeOut) { int return_code = GENA_SUCCESS; - ClientSubscription *sub = NULL; - ClientSubscription *sub_copy = GenlibClientSubscription_new(); + GenlibClientSubscription *sub = NULL; + GenlibClientSubscription *sub_copy = GenlibClientSubscription_new(); struct Handle_Info *handle_info; UpnpString *ActualSID = UpnpString_new(); ThreadPoolJob tempJob; @@ -682,7 +682,7 @@ void gena_process_notification_event( IXML_Document *ChangedVars = NULL; int eventKey; token sid; - ClientSubscription *subscription = NULL; + GenlibClientSubscription *subscription = NULL; struct Handle_Info *handle_info; void *cookie; Upnp_FunPtr callback; diff --git a/upnp/src/genlib/client_table/ClientSubscription.c b/upnp/src/genlib/client_table/ClientSubscription.c index 498cca2..166827e 100644 --- a/upnp/src/genlib/client_table/ClientSubscription.c +++ b/upnp/src/genlib/client_table/ClientSubscription.c @@ -1,200 +1,18 @@ -/************************************************************************ - * Purpose: This file defines the functions for clients. It defines - * functions for adding and removing clients to and from the client table, - * adding and accessing subscription and other attributes pertaining to the - * client - ************************************************************************/ - +/*! + * \file + * + * \brief GenlibClientSubscription object implementation. + * + * \author Marcelo Roberto Jimenez + */ #include "config.h" - -#include "ClientSubscription.h" - - #ifdef INCLUDE_CLIENT_APIS +#define TEMPLATE_GENERATE_SOURCE +#include "ClientSubscription.h" -#include // for calloc(), free() - - -struct SClientSubscription { - int m_renewEventId; - UpnpString *m_SID; - UpnpString *m_actualSID; - UpnpString *m_eventURL; - struct SClientSubscription *m_next; -}; - - -ClientSubscription *GenlibClientSubscription_new() -{ - struct SClientSubscription *p = calloc(1, sizeof (struct SClientSubscription)); -#if 0 - p->renewEventId = 0; -#endif - p->m_SID = UpnpString_new(); - p->m_actualSID = UpnpString_new(); - p->m_eventURL = UpnpString_new(); - p->m_next = NULL; - - return (ClientSubscription *)p; -} - - -void GenlibClientSubscription_delete(ClientSubscription *p) -{ - struct SClientSubscription *q = (struct SClientSubscription *)p; - - if (!q) return; - - q->m_renewEventId = 0; - - UpnpString_delete(q->m_SID); - q->m_SID = NULL; - - UpnpString_delete(q->m_actualSID); - q->m_actualSID = NULL; - - UpnpString_delete(q->m_eventURL); - q->m_eventURL = NULL; - - q->m_next = NULL; - - free(p); -} - - -ClientSubscription *GenlibClientSubscription_dup(const ClientSubscription *p) -{ - ClientSubscription *q = GenlibClientSubscription_new(); - - GenlibClientSubscription_assign(q, p); - - return q; -} - - -void GenlibClientSubscription_assign(ClientSubscription *q, const ClientSubscription *p) -{ - if (q != p) { - /*struct SClientSubscription *_p = (struct SClientSubscription *)p;*/ - struct SClientSubscription *_q = (struct SClientSubscription *)q; - // Do not copy RenewEventId - _q->m_renewEventId = -1; - GenlibClientSubscription_set_SID(q, GenlibClientSubscription_get_SID(p)); - GenlibClientSubscription_set_ActualSID(q, GenlibClientSubscription_get_ActualSID(p)); - GenlibClientSubscription_set_EventURL(q, GenlibClientSubscription_get_EventURL(p)); - // Do not copy m_next - _q->m_next = NULL; - } -} - - -int GenlibClientSubscription_get_RenewEventId(const ClientSubscription *p) -{ - return ((struct SClientSubscription *)p)->m_renewEventId; -} - - -void GenlibClientSubscription_set_RenewEventId(ClientSubscription *p, int n) -{ - ((struct SClientSubscription *)p)->m_renewEventId = n; -} - - -const UpnpString *GenlibClientSubscription_get_SID(const ClientSubscription *p) -{ - return ((struct SClientSubscription *)p)->m_SID; -} - -const char *GenlibClientSubscription_get_SID_cstr(const ClientSubscription *p) -{ - return UpnpString_get_String(GenlibClientSubscription_get_SID(p)); -} - - -void GenlibClientSubscription_set_SID(ClientSubscription *p, const UpnpString *s) -{ - UpnpString_delete(((struct SClientSubscription *)p)->m_SID); - ((struct SClientSubscription *)p)->m_SID = UpnpString_dup(s); -} - - -void GenlibClientSubscription_strcpy_SID(ClientSubscription *p, const char *s) -{ - UpnpString_delete(((struct SClientSubscription *)p)->m_SID); - ((struct SClientSubscription *)p)->m_SID = UpnpString_new(); - UpnpString_set_String(((struct SClientSubscription *)p)->m_SID, s); -} - - -const UpnpString *GenlibClientSubscription_get_ActualSID(const ClientSubscription *p) -{ - return ((struct SClientSubscription *)p)->m_actualSID; -} - - -const char *GenlibClientSubscription_get_ActualSID_cstr(const ClientSubscription *p) -{ - return UpnpString_get_String(GenlibClientSubscription_get_ActualSID(p)); -} - - -void GenlibClientSubscription_set_ActualSID(ClientSubscription *p, const UpnpString *s) -{ - UpnpString_delete(((struct SClientSubscription *)p)->m_actualSID); - ((struct SClientSubscription *)p)->m_actualSID = UpnpString_dup(s); -} - - -void GenlibClientSubscription_strcpy_ActualSID(ClientSubscription *p, const char *s) -{ - UpnpString_delete(((struct SClientSubscription *)p)->m_actualSID); - ((struct SClientSubscription *)p)->m_actualSID = UpnpString_new(); - UpnpString_set_String(((struct SClientSubscription *)p)->m_actualSID, s); -} - - -const UpnpString *GenlibClientSubscription_get_EventURL(const ClientSubscription *p) -{ - return ((struct SClientSubscription *)p)->m_eventURL; -} - - -const char *GenlibClientSubscription_get_EventURL_cstr(const ClientSubscription *p) -{ - return UpnpString_get_String(GenlibClientSubscription_get_EventURL(p)); -} - - -void GenlibClientSubscription_set_EventURL(ClientSubscription *p, const UpnpString *s) -{ - UpnpString_delete(((struct SClientSubscription *)p)->m_eventURL); - ((struct SClientSubscription *)p)->m_eventURL = UpnpString_dup(s); -} - - -void GenlibClientSubscription_strcpy_EventURL(ClientSubscription *p, const char *s) -{ - UpnpString_delete(((struct SClientSubscription *)p)->m_eventURL); - ((struct SClientSubscription *)p)->m_eventURL = UpnpString_new(); - UpnpString_set_String(((struct SClientSubscription *)p)->m_eventURL, s); -} - - -ClientSubscription *GenlibClientSubscription_get_Next(const ClientSubscription *p) -{ - return (ClientSubscription *)(((struct SClientSubscription *)p)->m_next); -} - - -void GenlibClientSubscription_set_Next(ClientSubscription *p, ClientSubscription *q) -{ - ((struct SClientSubscription *)p)->m_next = (struct SClientSubscription *)q; -} - - - #endif /* INCLUDE_CLIENT_APIS */ +#endif /* INCLUDE_CLIENT_APIS */ diff --git a/upnp/src/genlib/client_table/client_table.c b/upnp/src/genlib/client_table/client_table.c index 080dd9e..895fbfe 100644 --- a/upnp/src/genlib/client_table/client_table.c +++ b/upnp/src/genlib/client_table/client_table.c @@ -19,7 +19,7 @@ #include // for calloc(), free() -void free_client_subscription(ClientSubscription *sub) +void free_client_subscription(GenlibClientSubscription *sub) { upnp_timeout *event; ThreadPoolJob tempJob; @@ -40,9 +40,9 @@ void free_client_subscription(ClientSubscription *sub) } -void freeClientSubList(ClientSubscription *list) +void freeClientSubList(GenlibClientSubscription *list) { - ClientSubscription *next; + GenlibClientSubscription *next; while (list) { free_client_subscription(list); next = GenlibClientSubscription_get_Next(list); @@ -52,10 +52,10 @@ void freeClientSubList(ClientSubscription *list) } -void RemoveClientSubClientSID(ClientSubscription **head, const UpnpString *sid) +void RemoveClientSubClientSID(GenlibClientSubscription **head, const UpnpString *sid) { - ClientSubscription *finger = *head; - ClientSubscription *previous = NULL; + GenlibClientSubscription *finger = *head; + GenlibClientSubscription *previous = NULL; int found = 0; while (finger) { found = !strcmp( @@ -79,9 +79,9 @@ void RemoveClientSubClientSID(ClientSubscription **head, const UpnpString *sid) } -ClientSubscription *GetClientSubClientSID(ClientSubscription *head, const UpnpString *sid) +GenlibClientSubscription *GetClientSubClientSID(GenlibClientSubscription *head, const UpnpString *sid) { - ClientSubscription *next = head; + GenlibClientSubscription *next = head; int found = 0; while (next) { found = !strcmp( @@ -98,9 +98,9 @@ ClientSubscription *GetClientSubClientSID(ClientSubscription *head, const UpnpSt } -ClientSubscription *GetClientSubActualSID(ClientSubscription *head, token *sid) +GenlibClientSubscription *GetClientSubActualSID(GenlibClientSubscription *head, token *sid) { - ClientSubscription *next = head; + GenlibClientSubscription *next = head; while (next) { if (!memcmp( GenlibClientSubscription_get_ActualSID_cstr(next), diff --git a/upnp/src/inc/ClientSubscription.h b/upnp/src/inc/ClientSubscription.h index d999c18..2d49358 100644 --- a/upnp/src/inc/ClientSubscription.h +++ b/upnp/src/inc/ClientSubscription.h @@ -1,198 +1,27 @@ + #ifndef CLIENTSUBSCRIPTION_H #define CLIENTSUBSCRIPTION_H /*! * \file + * + * \brief GenlibClientSubscription object declararion. + * + * \author Marcelo Roberto Jimenez */ +#define CLASS GenlibClientSubscription -#ifdef __cplusplus -extern "C" { -#endif +#define EXPAND_CLASS_MEMBERS(CLASS) \ + EXPAND_CLASS_MEMBER_INT(CLASS, RenewEventId, int) \ + EXPAND_CLASS_MEMBER_STRING(CLASS, SID) \ + EXPAND_CLASS_MEMBER_STRING(CLASS, ActualSID) \ + EXPAND_CLASS_MEMBER_STRING(CLASS, EventURL) \ + EXPAND_CLASS_MEMBER_INT(CLASS, Next, GenlibClientSubscription *) \ - -#include "UpnpString.h" - - -#include -#include -#include - - -#ifdef INCLUDE_CLIENT_APIS - - -typedef struct s_ClientSubscription ClientSubscription; - - -/*! - * \brief Constructor. - */ -ClientSubscription *GenlibClientSubscription_new(); - - -/*! - * \brief Destructor. - */ -void GenlibClientSubscription_delete( - /*! [in] The \b this pointer. */ - ClientSubscription *p); - - -/*! - * \brief Copy Constructor. - */ -ClientSubscription *GenlibClientSubscription_dup( - /*! [in] The \b this pointer. */ - const ClientSubscription *p); - - -/*! - * \brief Assignment operator. - */ -void GenlibClientSubscription_assign( - /*! [in] The \b this pointer. */ - ClientSubscription *q, - const ClientSubscription *p); - - -/*! - * \brief - */ -int GenlibClientSubscription_get_RenewEventId( - /*! [in] The \b this pointer. */ - const ClientSubscription *p); - - -/*! - * \brief - */ -void GenlibClientSubscription_set_RenewEventId( - /*! [in] The \b this pointer. */ - ClientSubscription *p, - /*! [in] . */ - int n); - - -/*! - * \brief - */ -const UpnpString *GenlibClientSubscription_get_SID( - /*! [in] The \b this pointer. */ - const ClientSubscription *p); - - -/*! - * \brief - */ -const char *GenlibClientSubscription_get_SID_cstr( - /*! [in] The \b this pointer. */ - const ClientSubscription *p); - - -/*! - * \brief - */ -void GenlibClientSubscription_set_SID( - /*! [in] The \b this pointer. */ - ClientSubscription *p, - const UpnpString *s); - - -/*! - * \brief - */ -void GenlibClientSubscription_strcpy_SID( - /*! [in] The \b this pointer. */ - ClientSubscription *p, - const char *s); - - -/*! - * \brief - */ -const UpnpString *GenlibClientSubscription_get_ActualSID( - /*! [in] The \b this pointer. */ - const ClientSubscription *p); - - -/*! - * \brief - */ -const char *GenlibClientSubscription_get_ActualSID_cstr( - /*! [in] The \b this pointer. */ - const ClientSubscription *p); - - -/*! - * \brief - */ -void GenlibClientSubscription_set_ActualSID( - /*! [in] The \b this pointer. */ - ClientSubscription *p, - const UpnpString *s); - - -/*! - * \brief - */ -void GenlibClientSubscription_strcpy_ActualSID( - /*! [in] The \b this pointer. */ - ClientSubscription *p, - const char *s); - - -/*! - * \brief - */ -const UpnpString *GenlibClientSubscription_get_EventURL( - /*! [in] The \b this pointer. */ - const ClientSubscription *p); - - -/*! - * \brief - */ -void GenlibClientSubscription_set_EventURL( - /*! [in] The \b this pointer. */ - ClientSubscription *p, - const UpnpString *s); - - -/*! - * \brief - */ -void GenlibClientSubscription_strcpy_EventURL( - /*! [in] The \b this pointer. */ - ClientSubscription *p, - const char *s); - - -/*! - * \brief - */ -ClientSubscription *GenlibClientSubscription_get_Next( - /*! [in] The \b this pointer. */ - const ClientSubscription *p); - - -/*! - * \brief - */ -void GenlibClientSubscription_set_Next( - /*! [in] The \b this pointer. */ - ClientSubscription *p, - ClientSubscription *q); - - -#endif /* INCLUDE_CLIENT_APIS */ - - -#ifdef __cplusplus -} -#endif /* __cplusplus */ +#include "TemplateInclude.h" #endif /* CLIENTSUBSCRIPTION_H */ diff --git a/upnp/src/inc/client_table.h b/upnp/src/inc/client_table.h index bd33cd8..1555be6 100644 --- a/upnp/src/inc/client_table.h +++ b/upnp/src/inc/client_table.h @@ -40,7 +40,7 @@ extern TimerThread gTimerThread; */ void free_client_subscription( /*! [in] Client subscription to be freed. */ - ClientSubscription *sub); + GenlibClientSubscription *sub); /*! @@ -48,7 +48,7 @@ void free_client_subscription( */ void freeClientSubList( /*! [in] Client subscription list to be freed. */ - ClientSubscription *list); + GenlibClientSubscription *list); /*! @@ -58,7 +58,7 @@ void freeClientSubList( */ void RemoveClientSubClientSID( /*! [in] Head of the subscription list. */ - ClientSubscription **head, + GenlibClientSubscription **head, /*! [in] Subscription ID to be mactched. */ const UpnpString *sid); @@ -69,9 +69,9 @@ void RemoveClientSubClientSID( * * \return The matching subscription. */ -ClientSubscription *GetClientSubClientSID( +GenlibClientSubscription *GetClientSubClientSID( /*! [in] Head of the subscription list. */ - ClientSubscription *head, + GenlibClientSubscription *head, /*! [in] Subscription ID to be mactched. */ const UpnpString *sid); @@ -82,9 +82,9 @@ ClientSubscription *GetClientSubClientSID( * * \return The matching subscription. */ -ClientSubscription *GetClientSubActualSID( +GenlibClientSubscription *GetClientSubActualSID( /*! [in] Head of the subscription list. */ - ClientSubscription *head, + GenlibClientSubscription *head, /*! [in] Subscription ID to be mactched. */ token *sid); diff --git a/upnp/src/inc/upnpapi.h b/upnp/src/inc/upnpapi.h index 4b81cb0..c68d6bf 100644 --- a/upnp/src/inc/upnpapi.h +++ b/upnp/src/inc/upnpapi.h @@ -103,7 +103,7 @@ struct Handle_Info /* Client only */ #ifdef INCLUDE_CLIENT_APIS /*! Client subscription list. */ - ClientSubscription *ClientSubList; + GenlibClientSubscription *ClientSubList; /*! Active SSDP searches. */ LinkedList SsdpSearchList; #endif