--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/webservices/wsutils/src/sensoapfault.cpp Thu Jan 07 16:19:19 2010 +0200
@@ -0,0 +1,179 @@
+/*
+* Copyright (c) 2002-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:
+*
+*/
+
+
+
+
+
+
+
+
+// INCLUDE FILES
+#include "SenSoapFault.h"
+#include "SenSoapEnvelope.h"
+
+EXPORT_C CSenSoapFault* CSenSoapFault::NewL(const TDesC8& aNsUri,
+ const TDesC8& aLocalName,
+ const TDesC8& aQName,
+ const RAttributeArray& aAttributes)
+ {
+ CSenSoapFault* pNew = new (ELeave) CSenSoapFault;
+ CleanupStack::PushL(pNew);
+ pNew->ConstructL(aNsUri, aLocalName, aQName, aAttributes);
+ CleanupStack::Pop(); // pNew;
+ return pNew;
+ }
+
+EXPORT_C CSenSoapFault* CSenSoapFault::NewL(CSenElement& aCopiedSource)
+ {
+ CSenSoapFault* pNew = new (ELeave) CSenSoapFault;
+ CleanupStack::PushL(pNew);
+ pNew->ConstructL(aCopiedSource);
+ CleanupStack::Pop(); // pNew;
+ return pNew;
+ }
+
+
+EXPORT_C CSenSoapFault::~CSenSoapFault()
+ {
+ }
+
+EXPORT_C CSenSoapFault::CSenSoapFault()
+ {
+ }
+
+EXPORT_C void CSenSoapFault::ConstructL(CSenElement& aCopiedSource)
+ {
+ BaseConstructL(aCopiedSource.LocalName());
+ CopyFromL(aCopiedSource);
+ }
+
+
+EXPORT_C void CSenSoapFault::ConstructL(const TDesC8& aNsUri,
+ const TDesC8& aLocalName,
+ const TDesC8& aQName,
+ const RAttributeArray& aAttributes)
+ {
+ BaseConstructL(aNsUri, aLocalName, aQName, aAttributes);
+ }
+EXPORT_C TPtrC8 CSenSoapFault::FaultCode()
+ {
+ if (NamespaceURI().Compare(KSenSoap12EnvelopeXmlns)!=0)
+ {
+
+ CSenElement* pChild = Element(KNullDesC8, KFaultCodeLocalname);
+ if(pChild)
+ {
+ return pChild->Content();
+ }
+ }
+ else
+ {
+ CSenElement* pChild = Element(KFault12CodeLocalname);
+ if (pChild)
+ {
+ CSenElement* pValue = pChild->Element(KFault12ValueLocalname);
+ if (pValue)
+ {
+ return pValue->Content();
+ }
+ }
+
+ }
+ return KNullDesC8();
+ }
+
+EXPORT_C TPtrC8 CSenSoapFault::FaultSubcode()
+ {
+ if (NamespaceURI().Compare(KSenSoap12EnvelopeXmlns)==0)
+ {
+ CSenElement* pChild = Element(KFault12CodeLocalname);
+ if (pChild)
+ {
+ CSenElement* pSubcode = pChild->Element(KFault12SubcodeLocalname);
+ if (pSubcode)
+ {
+ CSenElement* pValue = pSubcode->Element(KFault12ValueLocalname);
+ if (pValue)
+ {
+ return pValue->Content();
+ }
+ }
+ }
+
+ }
+ return KNullDesC8();
+ }
+
+
+EXPORT_C TPtrC8 CSenSoapFault::FaultString()
+ {
+ if (NamespaceURI().Compare(KSenSoap12EnvelopeXmlns)!=0)
+ {
+ CSenElement* pChild = Element(KNullDesC8, KFaultStringLocalname);
+ if(pChild)
+ {
+ return pChild->Content();
+ }
+ }
+ else
+ {
+ CSenElement* pChild = Element(KNullDesC8, KFault12ReasonLocalname);
+ if (pChild)
+ {
+ CSenElement* pText = pChild->Element(KFault12TextLocalname);
+ if (pText)
+ {
+ return pText->Content();
+ }
+ }
+ }
+ return KNullDesC8();
+ }
+
+EXPORT_C TPtrC8 CSenSoapFault::FaultActor()
+ {
+ CSenElement* pChild = Element(KNullDesC8, KFaultActorLocalname);
+ if(pChild)
+ {
+ return pChild->Content();
+ }
+ return KNullDesC8();
+ }
+
+EXPORT_C TPtrC8 CSenSoapFault::Detail()
+ {
+ if (NamespaceURI().Compare(KSenSoap12EnvelopeXmlns)!=0)
+ {
+ CSenElement* pChild = Element(KNullDesC8, KDetailLocalname);
+ if(pChild)
+ {
+ return pChild->Content();
+ }
+ }
+ else
+ {
+ CSenElement* pChild = Element(KFault12DetailLocalname);
+ if (pChild)
+ {
+ return pChild->Content();
+ }
+ }
+ return KNullDesC8();
+ }
+
+// End of File