--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/datacommsserver/esockserver/inc/es_connectionservparameterbundletraceimpl.h Thu Dec 17 09:22:25 2009 +0200
@@ -0,0 +1,213 @@
+// Copyright (c) 2006-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:
+//
+
+/**
+ @file
+ @publishedPartner
+ @released
+*/
+
+#ifndef CONNECTIONSERVPARAMETERBUNDLETRACEIMPL_H
+#define CONNECTIONSERVPARAMETERBUNDLETRACEIMPL_H
+
+#ifdef __CFLOG_ACTIVE
+
+// Implementation of functions declared in es_connectionservparameterbundletrace.h
+
+#define __PULL_IN_BUNDLE_TRACE_CODE
+
+
+// t_esock specific kludge to prevent duplicated symbols
+#ifdef __BUILDING_T_ESOCK
+#ifdef SYMBIAN_SS_TIER_MANAGER_H
+#undef __PULL_IN_BUNDLE_TRACE_CODE
+#endif
+#endif
+
+
+
+#ifdef __PULL_IN_BUNDLE_TRACE_CODE
+
+#include <comms-infras/ss_log.h>
+
+using namespace ConnectionServ;
+
+namespace ParameterBundleTrace
+{
+
+
+
+
+void ParamSetToString(const XParameterSetBase *baseSet,TDes8& aBuf)
+ {
+ aBuf.Append(_L8(" {"));
+ if(baseSet->IsTypeOf(Meta::STypeId::CreateSTypeId(KParameterSetTypeUid,Meta::KNetMetaTypeAny)))
+ {
+ const XParameterSet* set = static_cast<const XParameterSet*>(baseSet);
+
+ // perform des16->des8 conversion and safe bounds checking...:
+
+ RBuf16 tmp;
+ // length limitation only in place for users of this legacy method
+ const TInt max_supported_length = 256; // characters
+ TRAPD(res,tmp.CreateL(max_supported_length));
+ if(res == KErrNone)
+ {
+ if(set->AppendPrintableTo(tmp) == KErrNone)
+ {
+ if( tmp.Length() <= aBuf.MaxLength()-aBuf.Length() )
+ {
+ RBuf8 tmp2;
+ TRAP(res,tmp2.CreateL(tmp.Length()));
+ if(res == KErrNone)
+ {
+ tmp2.Copy(tmp);
+ aBuf.Append(tmp2);
+ tmp2.Close();
+ }
+ }
+ }
+ tmp.Close();
+ }
+ }
+ else // no other polymorphic trace..
+ {
+ aBuf.Append(_L8("????"));
+ }
+ aBuf.Append(_L8("}"));
+ }
+
+
+// deprecated methods for specific types. use the XParameterSet::AppendPrintableTo method instead.
+void GenericParamsToString(const XParameterSet* aSet,TDes8& aBuf)
+ {ParamSetToString(aSet,aBuf);}
+void GenericQueryToString(const XParameterSet* aSet,TDes8& aBuf)
+ {ParamSetToString(aSet,aBuf);}
+void CacheParamsToString(const XParameterSet* aSet,TDes8& aBuf)
+ {ParamSetToString(aSet,aBuf);}
+void CoreCollectorSharedParametersToString(const XParameterSet* aSet,TDes8& aBuf)
+ {ParamSetToString(aSet,aBuf);}
+void IpProtoParamsToString(const XParameterSet* aSet,TDes8& aBuf)
+ {ParamSetToString(aSet,aBuf);}
+void PlaneStatusParamsToString(const XParameterSet* aSet,TDes8& aBuf)
+ {ParamSetToString(aSet,aBuf);}
+void PlaneStatusQueryToString(const XParameterSet* aSet,TDes8& aBuf)
+ {ParamSetToString(aSet,aBuf);}
+void WifiParamsToString(const XParameterSet* aSet,TDes8& aBuf)
+ {ParamSetToString(aSet,aBuf);}
+
+
+void ParamSetCtrToString(const CParameterSetContainer* aCtnr,TDes8& aBuf)
+ {
+ aBuf.Append(_L8("Ctnr id: "));
+ aBuf.AppendNum(aCtnr->Id());
+ const XParameterSetBase *set;
+ TInt i=0;
+ while(1)
+ {
+ set = aCtnr->GetParameterSet(i++);
+ if(set==NULL)break;
+
+ ParamSetToString(set,aBuf);
+ }
+ aBuf.Append(_L8("\r\n"));
+ }
+
+void ParamSetCtrToLog(const TDesC8& aSubsystem, const TDesC8& aComponent, char* aText, const CParameterSetContainer* aCtnr)
+ {
+ #ifdef __CFLOG_ACTIVE
+ __CFLOG_VAR((aSubsystem,aComponent,_L8("%s Ctnr id: %d:"), aText, aCtnr->Id()));
+
+ TInt i=0;
+ while(1)
+ {
+ const XParameterSetBase* set = aCtnr->GetParameterSet(i++);
+ if(set==NULL)break;
+
+ TBuf8<512> buf;
+ buf.Append(_L8(" "));
+ ParamSetToString(set,buf);
+ __CFLOG_0(aSubsystem,aComponent,buf);
+ }
+ #else
+ // Preventing unused variable warnings.
+ (void)aSubsystem;
+ (void)aComponent;
+ (void)aText;
+ (void)aCtnr;
+ #endif
+ }
+
+void BundleToString(const CParameterBundleBase* aBundle,TDes8& aBuf)
+ {
+ if(aBundle==NULL)
+ {
+ aBuf.Append(_L8("Bundle:null\r\n"));
+ return;
+ }
+ aBuf.Append(_L8("Bundle:\r\n"));
+ const CParameterSetContainer* ctnr;
+ TInt i=0;
+ while(1)
+ {
+ ctnr = aBundle->GetParamSetContainer(i++);
+ if(ctnr==NULL)break;
+
+ ParamSetCtrToString(ctnr,aBuf);
+ }
+ }
+
+void BundleToLog(const TDesC8& aSubsystem, const TDesC8& aComponent, char* aText, const CParameterBundleBase* aBundle)
+ {
+ #ifdef __CFLOG_ACTIVE
+ if(aBundle==NULL)
+ {
+ __CFLOG_VAR((aSubsystem,aComponent,_L8("%s Bundle:null"), aText));
+ return;
+ }
+ __CFLOG_VAR((aSubsystem,aComponent,_L8("%s Bundle:"), aText));
+ const CParameterSetContainer* ctnr;
+ TInt i=0;
+ while(1)
+ {
+ ctnr = aBundle->GetParamSetContainer(i++);
+ if(ctnr==NULL)break;
+
+ ParamSetCtrToLog(aSubsystem,aComponent," ",ctnr);
+ }
+ #else
+ // Preventing unused variable warnings.
+ (void)aSubsystem;
+ (void)aComponent;
+ (void)aText;
+ (void)aBundle;
+ #endif
+ }
+
+
+
+
+} // namespace ParameterBundleTrace
+
+
+#endif
+// __PULL_IN_BUNDLE_TRACE_CODE
+
+#endif
+// __CFLOG_ACTIVE
+
+#endif
+// CONNECTIONSERVPARAMETERBUNDLETRACEIMPL_H
+