appinstaller/AppinstUi/Plugin/SisxUI/Src/SisxUIResult.cpp
changeset 0 ba25891c3a9e
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/appinstaller/AppinstUi/Plugin/SisxUI/Src/SisxUIResult.cpp	Thu Dec 17 08:51:10 2009 +0200
@@ -0,0 +1,346 @@
+/*
+* Copyright (c) 2002-2004 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:   This file contains the implementation of CSisxUI
+*                class member functions.
+*
+*/
+
+
+// INCLUDE FILES
+
+#include <SWInstDefs.h>
+
+#include "SisxUIResult.h"
+
+using namespace SwiUI;
+
+// -----------------------------------------------------------------------------
+// TSisxUIResult::TSisxUIResult
+// C++ default constructor can NOT contain any code, that
+// might leave.
+// -----------------------------------------------------------------------------
+//
+TSisxUIResult::TSisxUIResult()
+    : iResult( EUiResultNoResult ), iDetailedErrorCode( 0 )
+    {
+    }
+
+// -----------------------------------------------------------------------------
+// TSisxUIResult::TSisxUIResult
+// C++ default constructor can NOT contain any code, that
+// might leave.
+// -----------------------------------------------------------------------------
+//
+TSisxUIResult::TSisxUIResult( const TSisxResultCode& aResult )
+    : iResult( aResult ), iDetailedErrorCode( 0 )
+    {
+    }
+
+// -----------------------------------------------------------------------------
+// TSisxUIResult::TSisxUIResult
+// C++ default constructor can NOT contain any code, that
+// might leave.
+// -----------------------------------------------------------------------------
+//
+TSisxUIResult::TSisxUIResult( const Swi::TRevocationDialogMessage& aResult )
+    {
+    switch ( aResult )
+        {
+        case Swi::EInvalidRevocationServerUrl:
+            iResult = EUiResultInvalidRevocationServerUrl;            
+            break;
+            
+        case Swi::EUnableToObtainCertificateStatus: 
+            iResult = EUiResultUnableToObtainCertificateStatus;
+            break;
+
+        case Swi::EResponseSignatureValidationFailure:
+            iResult = EUiResultResponseSignatureValidationFailure;
+            break;
+
+        case Swi::EInvalidRevocationServerResponse:
+            iResult = EUiResultInvalidRevocationServerResponse;
+            break;
+
+        case Swi::EInvalidCertificateStatusInformation:
+            iResult = EUiResultInvalidCertificateStatusInformation;
+            break;
+
+        case Swi::ECertificateStatusIsUnknown:
+            iResult = EUiResultCertificateStatusIsUnknown;
+            break;
+
+        case Swi::ECertificateStatusIsRevoked:  
+            iResult = EUiResultCertificateStatusIsRevoked;
+            break;
+
+        case Swi::ECertificateStatusIsUnknownSelfSigned:
+            iResult = EUiResultCertificateStatusIsUnknownSelfSigned;
+            break;
+
+        default:
+            iResult = EUiResultGeneralError;
+            iDetailedErrorCode = aResult;
+            break; 
+        }
+    }
+
+// -----------------------------------------------------------------------------
+// TSisxUIResult::TSisxUIResult
+// C++ default constructor can NOT contain any code, that
+// might leave.
+// -----------------------------------------------------------------------------
+//
+TSisxUIResult::TSisxUIResult( const Swi::TSignatureValidationResult& aResult )
+    {
+    switch ( aResult )
+        {
+        case Swi::ESignatureNotPresent:
+            iResult = EUiResultSignatureNotPresent;            
+            break;    
+ 
+        case Swi::ENoCertificate:
+            iResult = EUiResultNoCertificate;            
+            break; 
+    
+        case Swi::ECertificateValidationError:
+            iResult = EUiResultCertificateValidationError;            
+            break; 
+    
+        case Swi::ENoCodeSigningExtension:
+            iResult = EUiResultNoCodeSigningExtension;
+            break; 
+    
+        case Swi::ENoSupportedPolicyExtension:
+            iResult = EUiResultNoSupportedPolicyExtension;
+            break;
+     
+        case Swi::ESignatureCouldNotBeValidated:
+            iResult = EUiResultSignatureCouldNotBeValidated;
+            break;  
+   
+        case Swi::EMandatorySignatureMissing:
+            iResult = EUiResultMandatorySignatureMissing;
+            break;
+
+        case Swi::ESignatureSelfSigned:
+            iResult = EUiResultSignatureSelfSigned;            
+            break;
+            
+        default:
+            iResult = EUiResultGeneralError;
+            iDetailedErrorCode = aResult;
+            break;            
+        }
+    }
+
+// -----------------------------------------------------------------------------
+// TSisxUIResult::TSisxUIResult
+// C++ default constructor can NOT contain any code, that
+// might leave.
+// -----------------------------------------------------------------------------
+//
+TSisxUIResult::TSisxUIResult( const Swi::TErrorDialog& aResult )
+    {
+    switch ( aResult )
+        {
+        case Swi::EUiAlreadyInRom:
+            iResult = EUiResultAlreadyInRom;
+            break;
+
+        case Swi::EUiMissingDependency:
+            iResult = EUiResultMissingDependency;
+            break;
+
+        case Swi::EUiRequireVer:	
+            iResult = EUiResultRequireVer;
+            break;
+
+        case Swi::EUiRequireVerOrGreater:
+            iResult = EUiResultRequireVerOrGreater;
+            break;
+
+        case Swi::EUiFileCorrupt:	
+            iResult = EUiResultFileCorrupt;
+            break;
+
+        case Swi::EUiDiskNotPresent:
+            iResult = EUiResultDiskNotPresent;
+            break;
+
+        case Swi::EUiCannotRead: 
+            iResult = EUiResultCannotRead;
+            break;
+
+        case Swi::EUiCannotDelete:  
+            iResult = EUiResultCannotDelete;
+            break;
+
+        case Swi::EUiInvalidFileName:
+            iResult = EUiResultInvalidFileName;
+            break;
+
+        case Swi::EUiFileNotFound: 
+            iResult = EUiResultFileNotFound;
+            break;
+
+        case Swi::EUiInsufficientSpaceOnDrive:
+        case Swi::EUiNoMemoryInDrive:
+            iResult = EUiResultInsufficientSpaceOnDrive;
+            break;
+
+        case Swi::EUiCapabilitiesCannotBeGranted:
+            iResult = EUiResultCapabilitiesCannotBeGranted;
+            break;
+
+        case Swi::EUiUnknownFile:
+            iResult = EUiResultUnknownFile;
+            break;
+
+        case Swi::EUiMissingBasePackage:
+            iResult = EUiResultMissingBasePackage;
+            break;
+
+        case Swi::EUiConstraintsExceeded:
+            iResult = EUiResultConstraintsExceeded;            
+            break;
+            
+        case Swi::EUiSIDViolation:
+            iResult = EUiResultSIDViolation;            
+            break;
+            
+        case Swi::EUiVIDViolation:
+            iResult = EUiResultVIDViolation;            
+            break;
+
+        case Swi::EUiUIDPackageViolation:
+            iResult = EUiResultUIDPackageViolation;
+            break;            
+
+        case Swi::EUiBlockingEclipsingFile:
+            iResult = EUiResultBlockingEclipsingFile;
+            break;            
+
+        case Swi::EUiOSExeViolation:
+            iResult = EUiResultOSExeViolation;
+            break;
+
+        case Swi::EUiSIDMismatch:
+            iResult = EUiResultSIDMismatch;
+            break;
+
+        default:
+            iResult = EUiResultGeneralError;
+            iDetailedErrorCode = aResult;
+            break;     
+        }     
+    }
+
+// -----------------------------------------------------------------------------
+// TSisxUIResult::CommonResult
+// Returns the common SWInst result code for this result.
+// (other items were commented in a header).
+// -----------------------------------------------------------------------------
+//
+TInt TSisxUIResult::CommonResult() const
+    {
+    TInt result( KErrNone );
+    
+    switch ( iResult )
+        {
+        case EUiResultOk:
+            result = KErrNone;            
+            break;
+            
+        case EUiResultCancelled:
+            result = KSWInstErrUserCancel;            
+            break;
+
+        case EUiResultAlreadyInRom:
+        case EUiResultUnableToOverwrite:
+        case EUiResultCannotDelete:          	
+            result = KSWInstErrFileInUse;
+            break;
+
+        case EUiResultUnknownFile:
+        case EUiResultFileNotFound:
+        case EUiResultInvalidFileName:		
+        case EUiResultFileCorrupt:
+        case EUiResultCannotRead:  
+            result = KSWInstErrFileCorrupted;            
+            break;            
+
+        case EUiResultInsufficientMemory:
+        case EUiResultInsufficientSpaceOnDrive:
+            result = KSWInstErrInsufficientMemory;
+            break;            
+            
+        case EUiResultNoCertificate:
+        case EUiResultCertificateValidationError:
+        case EUiResultSignatureNotPresent:
+        case EUiResultSignatureCouldNotBeValidated:
+        case EUiResultNoCodeSigningExtension:
+        case EUiResultNoSupportedPolicyExtension:  
+        case EUiResultMandatorySignatureMissing:
+        case EUiResultInvalidRevocationServerResponse:
+        case EUiResultInvalidRevocationServerUrl:
+        case EUiResultUnableToObtainCertificateStatus:  
+        case EUiResultResponseSignatureValidationFailure:
+        case EUiResultInvalidCertificateStatusInformation:
+        case EUiResultCertificateStatusIsUnknown:
+        case EUiResultCertificateStatusIsRevoked: 
+        case EUiResultCertificateStatusIsUnknownSelfSigned:
+        case EUiResultCertificateExpired:
+        case EUiResultCertificateValidInFuture:
+        case EUiResultSignatureSelfSigned:
+        case EUiResultCapabilitiesCannotBeGranted:
+        case EUiResultSIDViolation:
+        case EUiResultVIDViolation:
+        case EUiResultConstraintsExceeded:
+        case EUiResultUIDPackageViolation:
+        case EUiResultSIDMismatch:
+            result = KSWInstErrSecurityFailure;
+            break;
+
+        case EUiResultAccessDenied:
+        case EUiResultCannotUninstallPartialUpgrade:
+        case EUiResultOSExeViolation:
+            result = KSWInstErrAccessDenied;
+            break;
+            
+        case EUiResultMissingDependency:			
+        case EUiResultRequireVer:		
+        case EUiResultRequireVerOrGreater:
+        case EUiResultMissingBasePackage:
+            result = KSWInstErrMissingDependency;
+            break;  
+
+        case EUiResultInvalidUpgrade:
+        case EUiResultBlockingEclipsingFile:
+            result = KSWInstUpgradeError;
+            break;            
+
+        case EUiResultGeneralError:            
+        case EUiResultDiskNotPresent:
+        case EUiResultNoResult:
+        default:            
+            result = KSWInstErrGeneralError;
+            break;            
+        }  
+
+    return result;    
+    }
+
+
+//  End of File