diff -r 000000000000 -r 08ec8eefde2f persistentstorage/sql/SRC/Common/SqlPanic.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/persistentstorage/sql/SRC/Common/SqlPanic.h Fri Jan 22 11:06:30 2010 +0200 @@ -0,0 +1,70 @@ +// Copyright (c) 2005-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 __SQLPANIC_H__ +#define __SQLPANIC_H__ + +#include "SqlAssert.h" + +//Forward declarations +class RMessage2; + +/** +TSqlPanic contains panic codes which may used by the SQL component (SqlDb.dll and SqlSrv.exe). + +@publishedAll +@released +*/ +enum TSqlPanic + { + ESqlPanicObjExists = 1, + ESqlPanicInvalidObj = 2, + ESqlPanicBadHandle = 3, + ESqlPanicBadArgument = 4, + ESqlPanicBadColumnIndex = 5, + ESqlPanicTypeMismatch = 6, + ESqlPanicInternalError = 7, + ESqlPanicStreamMarkInvalid = 8, + ESqlPanicStreamLocationInvalid= 9, + ESqlPanicValueNotPresent = 10, + ESqlPanicInvalidRow = 11, + ESqlPanicMisuse = 12, + ESqlPanicBadDescriptor = 13 + }; + +/** +This function panics the thread where it is called from with aPanicCode panic code. + +@param aPanicCode Panic code + +@internalComponent +*/ +void SqlPanic(TSqlPanic aPanicCode); + +/** +This function is used inside the SQL server to panic the calling client. + +@param aMessage The message which processing causes the panic. +@param aPanicCode Panic code + +@leave KSqlLeavePanic + +@return KErrNone + +@internalComponent +*/ +TInt SqlPanicClientL(const RMessage2& aMessage, TSqlPanic aPanicCode); + +#endif //__SQLPANIC_H__