--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/upnpmediaserver/contentdirectoryservice/inc/upnpelementbean.h Thu Dec 17 08:52:00 2009 +0200
@@ -0,0 +1,198 @@
+/** @file
+* Copyright (c) 2005-2006 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: Element table data handler
+*
+*/
+
+
+
+#ifndef C_CUPNPELEMENTBEAN_H
+#define C_CUPNPELEMENTBEAN_H
+
+// INCLUDES
+#include "upnptablebean.h"
+#include <e32base.h>
+#include <d32dbms.h>
+
+class CUpnpElement;
+class CUpnpObject;
+class CUri8;
+
+// CLASS DECLARATION
+
+/**
+* Stores the data of element table row.
+*
+* @lib AVContentDirectory.lib
+* @since Series60 3.1
+*/
+class CUpnpElementBean: public CUpnpTableBean
+{
+public: // Constructors and destructor
+
+ /**
+ * Two-phased constructor.
+ */
+ static CUpnpElementBean* NewLC();
+
+ /**
+ * Two-phased constructor.
+ * @param aRowSet
+ */
+ static CUpnpElementBean* NewLC(const RDbRowSet& aRowSet);
+
+
+ /**
+ * Destructor.
+ */
+ virtual ~CUpnpElementBean();
+
+public: // New functions
+
+ CUpnpElement* AttachElmL(CUpnpObject* aElm);
+ /**
+ * Sets all values of the object value.
+ * @since Series S60 3.0
+ * @param aRowSet
+ */
+ void SetL(const RDbRowSet& aRowSet);
+
+ /**
+ * Sets iElmId value.
+ * @since Series S60 3.0
+ * @param aElId value of elm_id in the element table
+ */
+ void SetElmId(TInt aElId);
+
+ /**
+ * Sets iElmName value.
+ * @since Series S60 3.0
+ * @param aElmName value of elm_name in the element table
+ */
+ void SetElmNameL(const TDesC8& aElmName);
+
+ /**
+ * Sets iElmHasAttribute value.
+ * @since Series S60 3.0
+ * @param aElmHasAttribute value of elm_has_attribute in the element table
+ */
+ void SetElmHasAttribute(TBool aElmHasAttribute);
+
+ /**
+ * Sets iElmIsRequired value.
+ * @since Series S60 3.0
+ * @param aElmIsRequired value of elm_is_required in the element table
+ */
+ void SetElmIsRequired(TBool aElmIsRequired);
+
+ /**
+ * Sets iElmValue value.
+ * @since Series S60 3.0
+ * @param aElmValue value of elm_value in the element table
+ */
+ void SetElmValueL(const RDbRowSet& aRowSet, const TInt aColNo);
+ void SetElmValueL(const TDesC8& aVal);
+
+ /**
+ * Sets iElmObjId value.
+ * @since Series S60 3.0
+ * @param aElmObjId value of elm_obj_id in the element table
+ */
+ void SetElmObjId(TInt aElmObjId);
+
+ /**
+ * Gets iElmId value.
+ * @since Series S60 3.0
+ * @return Gets the value of iElmId
+ */
+ TInt ElmId() const;
+
+ /**
+ * Gets iElmName value.
+ * @since Series S60 3.0
+ * @return Value of iElmName
+ */
+ TDesC8& ElmName() const;
+
+ /**
+ * Gets iElmHasAttribute value.
+ * @since Series S60 3.0
+ * @return Gets the value of iElmHasAttribute
+ */
+ TBool ElmHasAttribute() const;
+
+ /**
+ * Gets iElmIsRequired value.
+ * @since Series S60 3.0
+ * @return Gets the value of iElmIsRequired
+ */
+ TBool ElmIsRequired() const;
+
+ /**
+ * Gets iElmValue value.
+ * @since Series S60 3.0
+ * @return Value of iElmValue
+ */
+ TDesC8& ElmValue() const;
+
+ /**
+ * Gets iElmObjId value.
+ * @since Series S60 3.0
+ * @return Gets the value of iElmObjId
+ */
+ TInt ElmObjId() const;
+
+ /**
+ * Adds the whole element to the given TXmlEngElement.
+ * @param aElement a element to which the value will be attached
+ * @since Series S60 3.0
+ */
+ TXmlEngElement AttachElmL(TXmlEngElement aElement) const;
+
+
+private:
+
+ /**
+ * C++ default constructor.
+ */
+ CUpnpElementBean();
+
+ /**
+ * By default Symbian 2nd phase constructor is private.
+ */
+ void ConstructL();
+
+ HBufC8* ValAsUriL() const;
+
+private: // Data
+ // Element Id
+ TInt iElmId;
+ // Element Name
+ HBufC8* iElmName;
+ //
+ TBool iElmHasAttribute;
+ //
+ TInt iElmObjId;
+ //
+ TBool iElmIsRequired;
+ // Element Value
+ HBufC8* iElmValue;
+};
+
+// inline functions
+#include"upnpelementbean.inl"
+
+#endif // C_CUPNPELEMENTBEAN_H
+
+// End of File