servicediscoveryandcontrol/pnp/test/upnp/Client/upnpplugin/src/upnpparamsextfactory.cpp
changeset 0 f5a58ecadc66
equal deleted inserted replaced
-1:000000000000 0:f5a58ecadc66
       
     1 // Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
       
     2 // All rights reserved.
       
     3 // This component and the accompanying materials are made available
       
     4 // under the terms of "Eclipse Public License v1.0"
       
     5 // which accompanies this distribution, and is available
       
     6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
       
     7 //
       
     8 // Initial Contributors:
       
     9 // Nokia Corporation - initial contribution.
       
    10 //
       
    11 // Contributors:
       
    12 //
       
    13 // Description:
       
    14 //
       
    15 
       
    16 #include <e32base.h>
       
    17 #include <comms-infras/metabuffer.h>
       
    18 #include "upnpparamsextfactory.h"
       
    19 #include "upnpparamset.h"
       
    20 
       
    21 START_ATTRIBUTE_TABLE(CUPnPRequestParamSetBase, KUPnPParamsFactoryUid, EUPnPRequestParamSet)
       
    22 	REGISTER_ATTRIBUTE(CUPnPRequestParamSetBase, iUri, TMetaBuf8)	
       
    23 END_ATTRIBUTE_TABLE()
       
    24 
       
    25 START_ATTRIBUTE_TABLE(CUPnPResponseParamSetBase, KUPnPParamsFactoryUid, EUPnPResponseParamSet)
       
    26 	REGISTER_ATTRIBUTE(CUPnPResponseParamSetBase, iUPnPEvent, TMetaNumber)
       
    27 END_ATTRIBUTE_TABLE_BASE(CUPnPRequestParamSetBase, 0)
       
    28 
       
    29 START_ATTRIBUTE_TABLE(CUPnPRegisterAnnouncementParamSet, KUPnPParamsFactoryUid, EUPnPRegisterAnnouncementParamSet)
       
    30 END_ATTRIBUTE_TABLE_BASE(CUPnPRequestParamSetBase, 0)
       
    31 
       
    32 START_ATTRIBUTE_TABLE(CUPnPAbsenceAnnouncementParamSet, KUPnPParamsFactoryUid, EUPnPAbsenceAnnouncementParamSet)
       
    33 	REGISTER_ATTRIBUTE(CUPnPAbsenceAnnouncementParamSet, iUSN, TMetaBuf8)
       
    34 END_ATTRIBUTE_TABLE_BASE(CUPnPResponseParamSetBase, 0)
       
    35 
       
    36 START_ATTRIBUTE_TABLE(CUPnPPresenceAnnouncementParamSet, KUPnPParamsFactoryUid, EUPnPPresenceAnnouncementParamSet)
       
    37 	REGISTER_ATTRIBUTE(CUPnPPresenceAnnouncementParamSet, iExpiration, TMetaNumber)
       
    38 	REGISTER_ATTRIBUTE(CUPnPPresenceAnnouncementParamSet, iLocation, TMetaBuf8)
       
    39 END_ATTRIBUTE_TABLE_BASE(CUPnPAbsenceAnnouncementParamSet, 0)
       
    40 
       
    41 START_ATTRIBUTE_TABLE(CUPnPDiscoverRequestParamSet, KUPnPParamsFactoryUid, EUPnPDiscoverRequestParamSet)
       
    42 	REGISTER_ATTRIBUTE(CUPnPDiscoverRequestParamSet, iTimeToDelayResponse, TMetaNumber)
       
    43 END_ATTRIBUTE_TABLE_BASE(CUPnPRequestParamSetBase, 0)
       
    44 
       
    45 START_ATTRIBUTE_TABLE(CUPnPDiscoverResponseParamSet, KUPnPParamsFactoryUid, EUPnPDiscoverResponseParamSet)
       
    46 	REGISTER_ATTRIBUTE(CUPnPDiscoverResponseParamSet, iExpiration, TMetaNumber)	
       
    47 	REGISTER_ATTRIBUTE(CUPnPDiscoverResponseParamSet, iDeviceLocation, TMetaBuf8)
       
    48 	REGISTER_ATTRIBUTE(CUPnPDiscoverResponseParamSet, iUSN, TMetaBuf8)
       
    49 END_ATTRIBUTE_TABLE_BASE(CUPnPResponseParamSetBase, 0)
       
    50 
       
    51 START_ATTRIBUTE_TABLE(CUPnPDescribeRequestParamSet, KUPnPParamsFactoryUid, EUPnPDescribeRequestParamSet)
       
    52 	REGISTER_ATTRIBUTE(CUPnPDescribeRequestParamSet, iHostAddr, TMeta<TAppProtAddr>)
       
    53 END_ATTRIBUTE_TABLE_BASE(CUPnPRequestParamSetBase, 0)
       
    54 
       
    55 START_ATTRIBUTE_TABLE(CUPnPDescribeResponseParamSet, KUPnPParamsFactoryUid, EUPnPDescribeResponseParamSet)
       
    56 	REGISTER_ATTRIBUTE(CUPnPDescribeResponseParamSet, iDescription, TMetaBuf8)
       
    57 END_ATTRIBUTE_TABLE_BASE(CUPnPResponseParamSetBase, EUPnPResponseParamSet)
       
    58 
       
    59 START_ATTRIBUTE_TABLE(CUPnPSubscribeRequestParamSet, KUPnPParamsFactoryUid, EUPnPSubscribeRequestParamSet)
       
    60 	REGISTER_ATTRIBUTE(CUPnPSubscribeRequestParamSet, iTimeoutSeconds, TMetaNumber)
       
    61 	REGISTER_ATTRIBUTE(CUPnPSubscribeRequestParamSet, iRemoteHost, TMeta<TAppProtAddr>)
       
    62 END_ATTRIBUTE_TABLE_BASE(CUPnPRequestParamSetBase, 0)
       
    63 
       
    64 START_ATTRIBUTE_TABLE(CUPnPSubscribeResponseParamSet, KUPnPParamsFactoryUid, EUPnPSubscribeResponseParamSet)
       
    65 	REGISTER_ATTRIBUTE(CUPnPSubscribeResponseParamSet, iTimeoutSeconds, TMetaNumber)	
       
    66 END_ATTRIBUTE_TABLE_BASE(CUPnPResponseParamSetBase, 0)
       
    67 
       
    68 START_ATTRIBUTE_TABLE(CUPnPNotifyEventParamSet, KUPnPParamsFactoryUid, EUPnPNotifyEventParamSet)		
       
    69 	REGISTER_ATTRIBUTE(CUPnPNotifyEventParamSet, iNotifyData, TMetaBuf8)
       
    70 END_ATTRIBUTE_TABLE_BASE(CUPnPResponseParamSetBase, 0)
       
    71 
       
    72 START_ATTRIBUTE_TABLE(CUPnPCancelDiscoverParamSet, KUPnPParamsFactoryUid, EUPnPCancelDiscoverParamSet)		
       
    73 END_ATTRIBUTE_TABLE_BASE(CUPnPRequestParamSetBase, 0)
       
    74 
       
    75 START_ATTRIBUTE_TABLE(CUPnPCancelDescribeParamSet, KUPnPParamsFactoryUid, EUPnPCancelDescribeParamSet)		
       
    76 END_ATTRIBUTE_TABLE_BASE(CUPnPRequestParamSetBase, 0)
       
    77 
       
    78 START_ATTRIBUTE_TABLE(CUPnPCancelSubscribeParamSet, KUPnPParamsFactoryUid, EUPnPCancelSubscribeParamSet)		
       
    79 END_ATTRIBUTE_TABLE_BASE(CUPnPRequestParamSetBase, 0)
       
    80 
       
    81 START_ATTRIBUTE_TABLE(CUPnPCancelRegisterNotifyParamSet, KUPnPParamsFactoryUid, EUPnPCancelRegisterNotifyParamSet)		
       
    82 END_ATTRIBUTE_TABLE_BASE(CUPnPRequestParamSetBase, 0)
       
    83 
       
    84 START_ATTRIBUTE_TABLE(CUPnPServiceRegisterParamSet, KUPnPParamsFactoryUid, EUPnPServiceRegisterParamSet)
       
    85 	REGISTER_ATTRIBUTE(CUPnPServiceRegisterParamSet, iDeviceUid, TMetaBuf8)
       
    86 	REGISTER_ATTRIBUTE(CUPnPServiceRegisterParamSet, iCacheControl, TMetaNumber)
       
    87 	REGISTER_ATTRIBUTE(CUPnPServiceRegisterParamSet, iServiceDescription, TMetaBuf8)
       
    88 	REGISTER_ATTRIBUTE(CUPnPServiceRegisterParamSet, iInitialEventMessage, TMetaBuf8)
       
    89 	REGISTER_ATTRIBUTE(CUPnPServiceRegisterParamSet, iTimeOut, TMetaNumber)
       
    90 END_ATTRIBUTE_TABLE_BASE(CUPnPRequestParamSetBase, 0)
       
    91 
       
    92 START_ATTRIBUTE_TABLE(CUPnPDeviceRegisterParamSetBase, KUPnPParamsFactoryUid, EUPnPDeviceRegisterParamSetBase)
       
    93 	REGISTER_ATTRIBUTE(CUPnPDeviceRegisterParamSetBase, iCacheControl, TMetaNumber)
       
    94 	REGISTER_ATTRIBUTE(CUPnPDeviceRegisterParamSetBase, iParentDeviceUid, TMetaBuf8)
       
    95 	REGISTER_ATTRIBUTE(CUPnPDeviceRegisterParamSetBase, iFriendlyName , TMetaBuf8)
       
    96 	REGISTER_ATTRIBUTE(CUPnPDeviceRegisterParamSetBase, iManufacturer , TMetaBuf8)
       
    97 	REGISTER_ATTRIBUTE(CUPnPDeviceRegisterParamSetBase, iManufacturerURL , TMetaBuf8)
       
    98 	REGISTER_ATTRIBUTE(CUPnPDeviceRegisterParamSetBase, iModelDescription , TMetaBuf8)
       
    99 	REGISTER_ATTRIBUTE(CUPnPDeviceRegisterParamSetBase, iModelName , TMetaBuf8)
       
   100 	REGISTER_ATTRIBUTE(CUPnPDeviceRegisterParamSetBase, iModelNumber , TMetaBuf8)
       
   101 	REGISTER_ATTRIBUTE(CUPnPDeviceRegisterParamSetBase, iModelURL , TMetaBuf8)
       
   102 	REGISTER_ATTRIBUTE(CUPnPDeviceRegisterParamSetBase, iPresentationURL , TMetaBuf8)
       
   103 	REGISTER_ATTRIBUTE(CUPnPDeviceRegisterParamSetBase, iSerialNumber , TMetaBuf8)
       
   104 	REGISTER_ATTRIBUTE(CUPnPDeviceRegisterParamSetBase, iUDN , TMetaBuf8)
       
   105 	REGISTER_ATTRIBUTE(CUPnPDeviceRegisterParamSetBase, iUPC , TMetaBuf8)	
       
   106 END_ATTRIBUTE_TABLE_BASE(CUPnPRequestParamSetBase, 0)
       
   107 
       
   108 START_ATTRIBUTE_TABLE(CUPnPDeviceRegisterParamSet, KUPnPParamsFactoryUid, EUPnPDeviceRegisterParamSet)
       
   109 END_ATTRIBUTE_TABLE_BASE(CUPnPDeviceRegisterParamSetBase, 0)
       
   110 
       
   111 START_ATTRIBUTE_TABLE(CUPnPDeviceRegisterParamSetExt, KUPnPParamsFactoryUid, EUPnPDeviceRegisterParamSetExt)
       
   112 	REGISTER_ATTRIBUTE(CUPnPDeviceRegisterParamSetExt, iIconData, TMetaBuf8)
       
   113 END_ATTRIBUTE_TABLE_BASE(CUPnPDeviceRegisterParamSetBase, 0)
       
   114 
       
   115 START_ATTRIBUTE_TABLE(CUPnPServiceNotificationParamSet, KUPnPParamsFactoryUid, EUPnPServiceNotificationParamSet)	
       
   116 	REGISTER_ATTRIBUTE(CUPnPServiceNotificationParamSet, iNotifyData, TMetaBuf8)	
       
   117 END_ATTRIBUTE_TABLE_BASE(CUPnPRequestParamSetBase, 0)
       
   118 
       
   119 START_ATTRIBUTE_TABLE(CUPnPPublishResponseParamSet, KUPnPParamsFactoryUid, EUPnPPublishResponseParamSet)		
       
   120 END_ATTRIBUTE_TABLE_BASE(CUPnPResponseParamSetBase, 0)
       
   121 
       
   122 
       
   123 CUPnPParamSetBase* CUPnPParamsExtFactory::NewL ( TAny* aConstructionParams )
       
   124 	{
       
   125 	//TUPnPParamSetFamily familyType = REINTERPRET_CAST ( TUPnPParamSetFamily, *aConstructionParams );	
       
   126 	const TInt32 familyType = reinterpret_cast<TInt32>(aConstructionParams);
       
   127 	CUPnPParamSetBase* myUPnPParamBase = NULL;
       
   128 	switch ( familyType )
       
   129 		{
       
   130 		case EUPnPRegisterAnnouncementParamSet:		
       
   131 			myUPnPParamBase = new (ELeave) CUPnPRegisterAnnouncementParamSet;
       
   132 		break;
       
   133 
       
   134 		case EUPnPAbsenceAnnouncementParamSet:
       
   135 			myUPnPParamBase = new (ELeave) CUPnPAbsenceAnnouncementParamSet;
       
   136 		break;
       
   137 
       
   138 		case EUPnPPresenceAnnouncementParamSet:
       
   139 			myUPnPParamBase = new (ELeave) CUPnPPresenceAnnouncementParamSet;
       
   140 		break;
       
   141 
       
   142 		case EUPnPDiscoverRequestParamSet:
       
   143 			myUPnPParamBase = new (ELeave) CUPnPDiscoverRequestParamSet;
       
   144 		break;
       
   145 
       
   146 		case EUPnPDiscoverResponseParamSet:
       
   147 			myUPnPParamBase = new (ELeave) CUPnPDiscoverResponseParamSet;
       
   148 		break;
       
   149 
       
   150 		case EUPnPDescribeRequestParamSet:
       
   151 			myUPnPParamBase = new (ELeave) CUPnPDescribeRequestParamSet;
       
   152 		break;
       
   153 
       
   154 		case EUPnPDescribeResponseParamSet:
       
   155 			myUPnPParamBase = new (ELeave) CUPnPDescribeResponseParamSet;
       
   156 		break;
       
   157 				
       
   158 		case EUPnPSubscribeRequestParamSet:
       
   159 			myUPnPParamBase = new (ELeave) CUPnPSubscribeRequestParamSet;
       
   160 		break;
       
   161 
       
   162 		case EUPnPSubscribeResponseParamSet:
       
   163 			myUPnPParamBase = new (ELeave) CUPnPSubscribeResponseParamSet;
       
   164 		break;
       
   165 
       
   166 		case EUPnPNotifyEventParamSet:
       
   167 			myUPnPParamBase = new (ELeave) CUPnPNotifyEventParamSet;
       
   168 		break;
       
   169 
       
   170 
       
   171 		case EUPnPCancelDiscoverParamSet:
       
   172 			myUPnPParamBase = new (ELeave) CUPnPCancelDiscoverParamSet;
       
   173 		break;
       
   174 		
       
   175 		case EUPnPCancelDescribeParamSet:
       
   176 			myUPnPParamBase = new (ELeave) CUPnPCancelDescribeParamSet;
       
   177 		break;
       
   178 		
       
   179 		case EUPnPCancelSubscribeParamSet:
       
   180 			myUPnPParamBase = new (ELeave) CUPnPCancelSubscribeParamSet;
       
   181 		break;
       
   182 		
       
   183 		case EUPnPCancelRegisterNotifyParamSet:
       
   184 			myUPnPParamBase = new (ELeave) CUPnPCancelRegisterNotifyParamSet;
       
   185 		break;
       
   186 		
       
   187 		case EUPnPServiceRegisterParamSet:
       
   188 			myUPnPParamBase = new (ELeave) CUPnPServiceRegisterParamSet;
       
   189 		break;
       
   190 		
       
   191 		case EUPnPDeviceRegisterParamSet:
       
   192 			myUPnPParamBase = new (ELeave) CUPnPDeviceRegisterParamSet;
       
   193 		break;
       
   194 		
       
   195 		case EUPnPServiceNotificationParamSet:
       
   196 			myUPnPParamBase = new (ELeave) CUPnPServiceNotificationParamSet;
       
   197 		break;
       
   198 				
       
   199 		case EUPnPPublishResponseParamSet:
       
   200 			myUPnPParamBase	= new (ELeave) CUPnPPublishResponseParamSet;
       
   201 		break;
       
   202 		
       
   203 		case EUPnPDeviceRegisterParamSetExt:
       
   204 			myUPnPParamBase = new (ELeave) CUPnPDeviceRegisterParamSetExt;
       
   205 		break;
       
   206 		
       
   207 		default:
       
   208 			ASSERT(0);
       
   209 		break;
       
   210 		}
       
   211 	return myUPnPParamBase;
       
   212 	}
       
   213