diff -r 000000000000 -r 094583676ce7 PECengine/AuthorizationFramework2/Inc/MPEngAuthorizationManager.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/PECengine/AuthorizationFramework2/Inc/MPEngAuthorizationManager.h Thu Dec 17 08:41:52 2009 +0200 @@ -0,0 +1,182 @@ +/* +* 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: Authorization Manager abstract interface +* +*/ + + +#ifndef __MPENGAUTHORIZATIONMANAGER_H__ +#define __MPENGAUTHORIZATIONMANAGER_H__ + + +// INCLUDES +#include + + +// FORWARD DECLARATIONS +class MPEngAuthorizationRequest; +class MPEngAuthorizationStatus; +class MPEngAuthorizationObserver; + +// CLASS DECLARATION +/** + * Authorization Manager abstract interface + * + */ +class MPEngAuthorizationManager + { + + public: // New functions + + /** + * Close reference + * Clean up stack support + * + * @since 3.0 + */ + virtual void Close() = 0; + + /** + * Coutn of all authorizations + * + * @since 3.0 + * @return count of authorizations + */ + virtual TInt AuthorizationsCount() const = 0; + + /** + * Get authorization request + * + * @since 3.0 + * @param aIndex index of the authorization request + * @return authorization request + */ + virtual MPEngAuthorizationRequest& Authorization( + TInt aIndex ) = 0; + + /** + * Coutn of pending authorizations request + * This also includes authorizations which were + * already responded, but server reissued them again + * + * @since 3.0 + * @return count of authorizations + */ + virtual TInt PendingAuthorizationsCount() const = 0; + + /** + * Get pending authorizations request + * Those authorizations also includes authorizations which were + * already responded, but server reissued them again + * + * @since 3.0 + * @param aIndex index of the authorization request + * @return authorization request + */ + virtual MPEngAuthorizationRequest& PendingAuthorization( + TInt aIndex ) = 0; + + /** + * Issued Authorization status count + * Authorization which were responded by the requesting user + * @since 3.0 + * @return count + */ + virtual TInt RespondedAuthorizationsCount() const = 0; + + /** + * Issued Authorization status + * Authorization which were responded by the requesting user + * @since 3.0 + * @param index of the responded authorization + * @return responded authorization + */ + virtual const MPEngAuthorizationStatus& RespondedAuthorization( + TInt aIndex ) const = 0; + + + /** + * Server denied authorizations count + * @since 3.0 + * @return count + */ + virtual TInt ServerDeniedAuthorizationsCount() const = 0; + + /** + * Server denied authorization + * @since 3.0 + * @param aIndex index of denied authorization + * @return served denied authorization + */ + virtual const MPEngAuthorizationStatus& ServerDeniedAuthorization( + TInt aIndex ) const = 0; + + + /** + * Remove all Authorization responses + * and release lock for editing. + * + * Function removes all buffered authorization responses and + * release lock which was enabled when fisrt authorization + * response was stored. + * + * @since 3.0 + */ + virtual void RemoveAllAuthorizationResponses() = 0; + + /** + * Buffer with all packed authorization responses. + * This buffer is intended to be sent to the Transaction + * server in order to publish buffered transactions. + * Ownership of the buffer is transfered to the client. + * + * @since 3.0 + * @return buffer with packed transaction responses. + */ + virtual HBufC16* BufferedTransactionsLC() = 0; + + + public: // Authorization Observerving from MPEngAuthorizationManager + + /** + * Register authorization observer. + * + * @since 3.0 + * @param aObserver authorization observer + */ + virtual void RegisterAuthorizationObserverL( + MPEngAuthorizationObserver& aObserver ) = 0; + + /** + * Unregister authorization observer. + * + * @since 3.0 + * @param aObserver authorization observer + */ + virtual void UnRegisterAuthorizationObserver( + MPEngAuthorizationObserver& aObserver ) = 0; + + protected: //Destructor + + /** + * Virtual inline destructor. + * Protected destructor to prohibite deletion trough interface. + */ + virtual ~MPEngAuthorizationManager() {}; + + }; +#endif // __MPEngAuthorizationManager_H__ + +// End of File +