--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/omadmadapters/connmoadapter/inc/Utils.h Tue Jul 13 03:48:30 2010 +0530
@@ -0,0 +1,156 @@
+/*
+* ==============================================================================
+* Copyright (c) 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:
+*
+* ==============================================================================
+*/
+
+#ifndef UTILS_H_
+#define UTILS_H_
+
+// ------------------------------------------------------------------------------------------------
+// Includes
+// ------------------------------------------------------------------------------------------------
+#include "ConnMoAdapter.h"
+
+class TLuid;
+
+/**
+ * Utilities class for ConnMo adapter needs
+ *
+ * Class contains useful helper functions etc. for parsing URI and TLuid
+ */
+class CUtils : public CBase
+ {
+public:
+
+ virtual ~CUtils();
+
+ /**
+ * Returns first segment of URI.
+ *
+ * @param aUri URI to be searched.
+ * @return First segment of URI.
+ */
+ static TPtrC8 GetFirstURISeg( const TDesC8& aURI );
+
+ /**
+ * Returns second segment of URI.
+ *
+ * @param aUri URI to be searched.
+ * @return Second segment of URI.
+ */
+ static TPtrC8 GetSecondURISeg( const TDesC8& aURI );
+
+ /**
+ * Returns last segment of URI.
+ *
+ * @param aUri URI to be searched.
+ * @return Last segment of URI.
+ */
+ static TPtrC8 GetLastURISeg( const TDesC8& aURI );
+
+ /**
+ * Returns the end of URI starting from passed segment.
+ *
+ * @param aUri URI to be parsed.
+ * @param aName Segment to start.
+ * @return End of URI starting from aName.
+ */
+ static TPtrC8 GetEndOfURIFromSeg( const TDesC8& aURI, const TDesC8& aName );
+
+ /**
+ * This function converts string value to 8-bit value.
+ *
+ * @param aSource String to convert.
+ * @return Pointer to 8-bit value.
+ */
+ static TDesC8& ConvertTo8LC( const TDesC& aSource );
+
+ /**
+ * This function converts string value to 16-bit value.
+ *
+ * @param aSource String to convert.
+ * @return Pointer to 16-bit value.
+ */
+ static TDesC16& ConvertTo16LC( const TDesC8& aSource );
+
+ /**
+ * This function sets given information to given node.
+ *
+ * @param aNode Target node.
+ * @param aAccTypes Node's access types.
+ * @param aOccurrence Amount of possible nodes of same type.
+ * @param aScope Describes if node is static or dynamic.
+ * @param aFormat Node's format.
+ * @param aDescription String containing description of the node.
+ * @return Pointer integer value.
+ */
+ static void FillNodeInfoL( MSmlDmDDFObject& aNode,
+ TSmlDmAccessTypes aAccTypes,
+ MSmlDmDDFObject::TOccurence aOccurrence,
+ MSmlDmDDFObject::TScope aScope,
+ MSmlDmDDFObject::TDFFormat aFormat,
+ const TDesC8& aDescription);
+
+ /**
+ * This function removes characters that are not allowed in URI from given descriptor.
+ *
+ * @param aString String to be modified.
+ */
+ static void RemoveIllegalCharsFromURI( TDes8& aString );
+
+ /**
+ * This function returns string as bool value.
+ *
+ * @param aSource String to convert.
+ * @param aBool conversion result.
+ * @return TInt32 KErrNone if succesful conversion.
+ */
+ static TInt32 DesToBool( const TDesC8& aString, TBool& aBool );
+
+ /**
+ * This function convert integer value to string presentation.
+ *
+ * @param aObject Int value to convert.
+ * @return TDesC8& Int as string.
+ */
+ static TDesC8& IntToCharL( const TInt& aObject );
+
+ /**
+ * This function takes first segment from uri and adds it to target
+ *
+ * @param aURI Contains source uri.
+ * @param aTarget Target string.
+ * @return TInt Index of first uri delimiter.
+ */
+ static TInt AppendFirstURISeg( TDes8& aURI, TDes8& aTarget );
+
+ static TInt IntLUID(const TDesC8& aLUID);
+
+private:
+
+ //-----------------------------------------------------------------------------
+ // Private functions
+ //-----------------------------------------------------------------------------
+ CUtils();
+
+ //-----------------------------------------------------------------------------
+ // Private member variables
+ //-----------------------------------------------------------------------------
+
+ };
+
+#endif /* UTILS_H_ */