diff -r 000000000000 -r 094583676ce7 PECengine/StorageManager2/ClientInc/RPEngStorageAdminSubClient.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/PECengine/StorageManager2/ClientInc/RPEngStorageAdminSubClient.h Thu Dec 17 08:41:52 2009 +0200 @@ -0,0 +1,141 @@ +/* +* Copyright (c) 2002 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: it is used to update session slot state and signal new +* session slot events +* +*/ + + +#ifndef __RPENGSTORAGEADMINSUBCLIENT_H__ +#define __RPENGSTORAGEADMINSUBCLIENT_H__ + +// INCLUDES +#include +#include "PEngStorageGlobals.h" + +// FORWARD DECLARATIONS +class RPEngStorageAdminClient; + +/** + * Storage Admin sub-client + * it is used to update session slot state and + * signal new session slot events + * + * @lib PEngStoreMan2.dll + * @since 3.0 + */ + +// CLASS DECLARATION +class RPEngStorageAdminSubClient: public RSubSessionBase + + { + public: // Constructors and destructors + + /** + * C++ default constructor. + */ + IMPORT_C RPEngStorageAdminSubClient( ); + + /** + * Destructor. + */ + IMPORT_C ~RPEngStorageAdminSubClient( void ); + + public: // new methods + + /** + * Connects to the presence server + * + * @since 3.0 + * @param aAdminClient main admin client + * @param aSessionName packed session slot Id + * @return KErrNone or any of system wide error codes + */ + IMPORT_C TInt Connect( + RPEngStorageAdminClient& aAdminClient, + const TDesC8& aSesssionName ); + + /** + * Close connection to the presence server + * When this sub-session is closed it is assumed that + * State of the connection is closed + * + * @since 3.0 + */ + IMPORT_C void Close(); + + public: // new Storage management Functions + + /** + * Update Presence State of defined connection. + * + * @since 3.0 + * @param aState state of the Session Slot, in case + * aEven is not reconstructed, this value + * is used instead to determine state of the + * session + * @param aEvent new event of session slot from the Presence Server + * @return KErrNone if notification went OK, + * otherwise system wide error code + */ + IMPORT_C TInt NotifyEvent( const TDesC8& aEvent ); + + /** + * Notify error from to the listeners + * + * @since 3.0 + * @param aError code to be notified to listeners + */ + IMPORT_C TInt NotifyError( TInt aError ); + + /** + * Check if Application Id is registered for given session slot + * + * @since 3.0 + * @param aAppId application Id + * @return KErrNone if registered, KErrNotFound if not + * system wide error code if something other goes wrong + */ + IMPORT_C TInt CheckAppIdRegistration( const TDesC& aAppId ); + + private: // Data + + /// Flag if sub Session is connected to the Server + TBool iConnected; + + + }; + +#endif // __RPENGSTORAGEADMINSUBCLIENT_H__ + + + + + + + + + + + + + + + + + + + + +