xdmprotocols/XcapProtocol/XcapAppUsage/XcapDirectoryUsage/src/XcapDirectoryUsage.cpp
branchRCL_3
changeset 34 2669f8761a99
parent 31 2580314736af
child 35 fbd2e7cec7ef
--- a/xdmprotocols/XcapProtocol/XcapAppUsage/XcapDirectoryUsage/src/XcapDirectoryUsage.cpp	Thu Aug 19 10:19:02 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,234 +0,0 @@
-/*
-* Copyright (c) 2005 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:  CXcapDirectoryUsage
-*
-*/
-
-
-
-
-#include <XdmErrors.h>
-#include <XdmDocumentNode.h>
-#include <XdmNodeAttribute.h>
-#include "XcapDirectoryUsage.h"
-
-
-// Used specification
-// OMA-TS-XDM_Core-V1_0-20051103-C, 03 November 2005
-
-// ----------------------------------------------------
-// CXcapDirectoryUsage::CXcapDirectoryUsage
-// 
-// ----------------------------------------------------
-//
-CXcapDirectoryUsage::CXcapDirectoryUsage( const CXdmEngine& aXdmEngine ) :
-                                          CXcapAppUsage( aXdmEngine )
-    {
-    }
-
-// ----------------------------------------------------
-// CXcapDirectoryUsage::NewL
-// 
-// ----------------------------------------------------
-//
-CXcapDirectoryUsage* CXcapDirectoryUsage::NewL( const TXcapAppUsageParams& aParameters )
-    {
-    CXcapDirectoryUsage* self = new ( ELeave ) CXcapDirectoryUsage( aParameters.iXdmEngine );
-    CleanupStack::PushL( self );    // << self
-    self->ConstructL();
-    CleanupStack::Pop( self );      // >> self
-    return self;
-    }
-
-// ----------------------------------------------------
-// CXcapDirectoryUsage::~CXcapDirectoryUsage
-// 
-// ----------------------------------------------------
-//
-CXcapDirectoryUsage::~CXcapDirectoryUsage()
-    {
-    }
-        
-// ----------------------------------------------------
-// CXcapDirectoryUsage::ConstructL
-// 
-// ----------------------------------------------------
-//
-void CXcapDirectoryUsage::ConstructL()
-    {
-    }
-
-// ----------------------------------------------------
-// CXcapDirectoryUsage::AUID
-// 
-// ----------------------------------------------------
-//
-TPtrC8 CXcapDirectoryUsage::AUID() const
-    {
-    return TPtrC8( KXdmDirectoryUsageAUID );
-    }
-                 
-// ----------------------------------------------------
-// CXcapDirectoryUsage::ContentType
-// 
-// ----------------------------------------------------
-//
-TPtrC8 CXcapDirectoryUsage::ContentType() const
-    {
-    return TPtrC8( KXdmDirectoryUsageContType );
-    }
-
-// ----------------------------------------------------
-// CXcapDirectoryUsage::DefaultNamespace
-// 
-// ----------------------------------------------------
-//
-TPtrC8 CXcapDirectoryUsage::DefaultNamespace() const
-    {
-    return TPtrC8( KXdmDirectoryNamespace );
-    }   
-    
-// ----------------------------------------------------
-// CXcapDirectoryUsage::ValidateNodeL
-// 
-// ----------------------------------------------------
-//
-TBool CXcapDirectoryUsage::ValidateNodeL( CXdmDocumentNode& aXdmNode ) 
-    {
-    // This method is called by base class for each element
-    // in document, here we have to declare every element, check element 
-    // datatype, restrictions for values and also do all checking that concerns  
-    // the structure of the element. If the datatype is some of
-    // the common datatypes defined in xcapappusage.h, the node
-    // can pe passed to the base class for value validation.
-    // If the node belongs to this namespace, the return value
-    // should be true, false otherwise.
-
-    TBool found( EFalse );
-    TPtrC element = aXdmNode.NodeName();
-        
-    // <xcap-directory>
-    if ( Match( element, KXdmXcapDirectory ) ) 
-        {
-        found = ETrue;  
-        }
-    // <folder>
-    else if ( Match( element, KXdmFolder ) )
-        {
-        // required attribute auid
-        if ( !aXdmNode.HasAttribute( KXdmAuid ) )
-            {
-            LeaveWithErrorL( KXcapErrorMissingRequiredAttribute );
-            }
-        // there should be either <entry> or <error-code>
-        // element, not both
-        TBool entry( EFalse );
-        TBool errorcode( EFalse ) ;
-        TInt count( aXdmNode.NodeCount() );
-        for ( TInt i(0); i < count; i++ )
-            {
-            TPtrC childName = aXdmNode.ChileNode(i)->NodeName();            
-            if ( childName.CompareF( KXdmEntry ) ) 
-                {
-                entry = ETrue;
-                }
-            else if ( childName.CompareF( KXdmErrorCode ) ) 
-                {
-                errorcode = ETrue;
-                }
-            }
-        if ( entry && errorcode )   
-            {
-            LeaveWithErrorL( KXcapErrorSchemaViolation );   
-            }
-        found = ETrue;  
-        }
-    // <entry>
-    else if ( Match( element, KXdmEntry ) )
-        {
-        // required attributes uri and etag
-        if ( !aXdmNode.HasAttribute( KXdmUri ) )
-            {
-            LeaveWithErrorL( KXcapErrorMissingRequiredAttribute );
-            }
-        if ( !aXdmNode.HasAttribute( KXdmEtag ) )
-            {
-            LeaveWithErrorL( KXcapErrorMissingRequiredAttribute);
-            }
-        found = ETrue;  
-        }
-    // <error-code>
-    else if ( Match( element, KXdmErrorCode ) ) 
-        {
-        ValidateDataL( EDataTypeString, aXdmNode );
-        found = ETrue;  
-        }
-    return found;
-    }
-        
-// ----------------------------------------------------
-// CXcapDirectoryUsage::ValidateAttributeL
-// 
-// ----------------------------------------------------
-//
-void CXcapDirectoryUsage::ValidateAttributeL( const CXdmNodeAttribute& aXdmNodeAttr )
-    {
-    // This method is called by base class for each attribute
-    // in document, here we have to define data types
-    // for attributes, and pass them to the base class
-    // for the actual data checking.
-    
-    TDataType dataType ( EDataTypeUndefined );
-    TPtrC attribute = aXdmNodeAttr.NodeName();
-    // uri
-    if ( Match( attribute, KXdmUri ) )
-        {
-        dataType = EDataTypeAnyURI;
-        }
-    // etag
-    else if ( Match( attribute, KXdmEtag ) )
-        {
-        dataType = EDataTypeString;
-        }
-    // last-modified
-    else if ( Match( attribute, KXdmLastModified ) )
-        {
-        dataType = EDataTypeDateTime;
-        }
-    // size
-    else if ( Match( attribute, KXdmSize ) )
-        {
-        dataType = EDataTypeNonNegativeInteger;
-        }
-    // auid
-    else if ( Match( attribute, KXdmAuid ) )
-        {
-        dataType = EDataTypeString;
-        }
-    // pass to base class for data validation
-    ValidateDataL( dataType, aXdmNodeAttr );
-    }
-
-// ----------------------------------------------------
-// CXcapDirectoryUsage::AddNamespaceInformationL
-// 
-// ----------------------------------------------------
-//
-void CXcapDirectoryUsage::AddNamespaceInformationL( CXdmDocument& aXdmDocument )
-    {
-    aXdmDocument.AppendNamespaceL( KXdmDirectoryNamespace, KNullDesC8 );
-    }
-    
-// End of File
-