diff -r 000000000000 -r dfb7c4ff071f datacommsserver/esockserver/esock_params/src/esock_params.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/datacommsserver/esockserver/esock_params/src/esock_params.cpp Thu Dec 17 09:22:25 2009 +0200 @@ -0,0 +1,61 @@ +// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies). +// All rights reserved. +// This component and the accompanying materials are made available +// under the terms of "Eclipse Public License v1.0" +// which accompanies this distribution, and is available +// at the URL "http://www.eclipse.org/legal/epl-v10.html". +// +// Initial Contributors: +// Nokia Corporation - initial contribution. +// +// Contributors: +// +// Description: +// + +#include "esock_params.h" +#include +#include +#include +#include +#include +#include + +//SMetaDataECom macros + +START_ATTRIBUTE_TABLE( TConnAPPref, TConnAPPref::EUid, TConnAPPref::ETypeId ) + REGISTER_ATTRIBUTE( TConnAPPref, iAP, TMetaNumber ) +END_ATTRIBUTE_TABLE() + +START_ATTRIBUTE_TABLE( TConnCSRPref, TConnCSRPref::EUid, TConnCSRPref::ETypeId ) + REGISTER_ATTRIBUTE( TConnCSRPref, iScope, TMetaNumber ) + REGISTER_ATTRIBUTE( TConnCSRPref, iFlags, TMetaNumber ) + REGISTER_ATTRIBUTE( TConnCSRPref, iSubSessionUniqueId, TMeta) +END_ATTRIBUTE_TABLE() + +START_ATTRIBUTE_TABLE( TConnAutoStartPref, TConnAutoStartPref::EUid, TConnAutoStartPref::ETypeId ) +END_ATTRIBUTE_TABLE() + + +/** +Plugin Implementation +*/ + +Meta::SMetaDataECom* CESockParamaterFactory::NewL(TAny* aConstructionParameters) + { + TInt32 type = reinterpret_cast(aConstructionParameters); + switch (type) + { + case (TConnAPPref::ETypeId): + return new (ELeave) TConnAPPref; + case (TConnCSRPref::ETypeId): + return new (ELeave) TConnCSRPref; + case (TConnAutoStartPref::ETypeId): + return new (ELeave) TConnAutoStartPref; + default: + User::Leave(KErrNotFound); + return NULL; + } + } + +