voipplugins/sipconnectionprovider/inc/scpsubservice.h
branchRCL_3
changeset 21 f742655b05bf
parent 20 65a3ef1d5bd0
child 22 d38647835c2e
--- a/voipplugins/sipconnectionprovider/inc/scpsubservice.h	Thu Aug 19 09:45:22 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,369 +0,0 @@
-/*
-* Copyright (c) 2007-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 T_SCPSUBSERVICE_H
-#define T_SCPSUBSERVICE_H
-
-#include <e32std.h>
-#include <cchservice.h>
-
-#include "scpdefs.h"
-#include "scpsipconnectionobserver.h"
-
-class MCchServiceObserver;
-class MScpSubServiceObserver;
-class CScpServiceHandlerBase;
-class TScpSubServiceState;
-class CScpServiceStorage;
-class CScpProfileHandler;
-class CScpService;
-
-/**
- *  SCP sub service.
- *  @lib sipconnectionprovider.dll
- */
-class CScpSubService : public CBase,
-                       public MScpConnectionObserver
-    {    
-public:
-
-    enum TEnableState
-        {
-        EScpNoRequest,
-        EScpEnabled,
-        EScpDisabled,
-        EScpRefreshed
-        };
-
-    static CScpSubService* NewL( TInt aId, 
-                                 TInt aSubServiceId,
-                                 TCCHSubserviceType aSubServiceType,
-                                 CScpService& aService );
-
-        
-    /**
-     * Destructor
-     */ 
-    ~CScpSubService();
-
-    /**
-     * Enables this sub service
-     */ 
-    void EnableL();
-
-    /**
-     * Disables this sub service
-     * @return Symbian error codes
-     */ 
-    TInt Disable();
-
-    /**
-     * Returns internal id of this subservice
-     * @return Internal id
-     */ 
-    TInt Id() const;
-
-    /**
-     * Returns service id of this subservice
-     * @return Sub service id
-     */ 
-    TInt SubServiceId() const;
-
-    /**
-     * Return state of the subservice
-     * @return State
-     */ 
-    TCCHSubserviceState State() const;
-
-    /**
-     * Returns sub service type of the subservice
-     * @return Sub service type
-     */ 
-    TCCHSubserviceType SubServiceType() const;
-
-    /**
-     * Returns service storage
-     * @return Service storage
-     */
-    CScpServiceStorage& ServiceStorage() const;
-
-    /**
-     * Returns profile handler
-     * @return Service storage
-     */
-    CScpProfileHandler& ProfileHandler() const;
-
-    /**
-     * Sets sip profile id for the subservice
-     * @param aSipProfileId Sip profile id
-     */ 
-    void SetSipProfileId( TInt aSipProfileId );
-    
-    /**
-     * Returns sip profile id of the subservice
-     * @return sip profile id
-     */ 
-    TInt SipProfileId() const;
-
-    /**
-     * Sets enable requested state
-     * @param aEnableRequestedState State
-     */ 
-    void SetEnableRequestedState( TEnableState aEnableRequestedState );  
-
-    /**
-     * Return info about if enable or disable is requested
-     * @return Enable requested state
-     */ 
-    TEnableState EnableRequestedState() const;  
-
-    /**
-     * Raises the flag that sub service is succesfully disconnected
-     * its service (e.g. unsubscribed message received from network).
-     * When disconnected it's ok for this sub service to disable SIP 
-     * profile
-     * @param aSubServiceDisconnected Sub service disconnected
-     */ 
-    void SetSubServiceDisconnected( TBool aSubServiceDisconnected );
-
-    /**
-     * Return Sub service disconnceted flag
-     * @return Sub service disconnected
-     */ 
-    TBool SubServiceDisconnected() const; 
-
-    /**
-     * Sets access point for the sub service
-     * @param aApId Access point
-     */ 
-    void SetApId( TUint32 aApId );
-
-    /**
-     * Returns access point id of the subservice
-     * @return Access point id
-     */    
-    TUint32 ApId() const;
-
-    /**
-     * Sets snap id or the subservice
-     * @param aSnapId Snap id
-     */ 
-    void SetSnapId( TUint32 aSnapId );
-
-    /**
-     * Returns the iap type the subservice is using
-     * @return Iap type
-     */ 
-    TScpIapType GetIapType() const;
-
-    /**
-     * Returns snap id id of the subservice
-     * @return Snap id
-     */ 
-    TUint32 SnapId() const;
-
-    /**
-     * Returns service handler
-     */
-    CScpServiceHandlerBase& ServiceHandler() const;
-
-    /**
-     * Handle connection event. Based on event a corresponging 
-     * method from current state is called.
-     * @param aEvent Connection event
-     */
-    void HandleConnectionEvent( TScpConnectionEvent aEvent );
-
-    /**
-     * Returns last reported error from a state change
-     * @return Last error
-     */
-    TInt LastReportedError() const;
-    
-    /**
-     * Last reported error setter
-     * @param aError error which to be set
-     */
-    void SetLastReportedError( const TInt aError );
-
-    /**
-     * Sets the sub service as reserved
-     * @param aReserved Reserved
-     */
-    void SetReserved( TBool aReserved );
-
-    /**
-     * Returns reserved info of the sub service
-     * @return ETrue if reserved
-     */
-    TBool IsReserved() const;
-    
-    /**
-     * Returns roaming info of the sub service
-     * @return ETrue if roaming
-     */
-    TBool IsRoaming() const;
-    
-    /**
-     * Set subservice observer
-     */
-    void SetSubServiceObserver( MScpSubServiceObserver* aSubServiceObserver );
-    
-    /**
-     * Enable counter getter.
-     */
-    TInt EnableCounter();
-    
-    /**
-     * Reset enable counter.
-     */
-    void ResetEnableCounter();
-
-private:
-
-    /**
-     * Constructor
-     */ 
-    CScpSubService( TInt aId, 
-                    TInt aSubServiceId,
-                    TCCHSubserviceType aType,
-                    CScpService& aService );
-
-    /**
-     * 2nd phase constructor
-     */
-    void ConstructL();
-   
-    /**
-     * TScpStates use this function to change the state
-     * of the subservice.
-     * @param aState New state
-     * @param aError CCH errors
-     */ 
-    void ChangeState( TCCHSubserviceState aState, TInt aError );
-    
-    /**
-     * Adds presencehandler to voip's subserviceobserver if 
-     * presencesubservice exists.
-     */
-    void SetPresenceToObserveVoIP();
-
-    /**
-     * Enable occured.
-     */
-    void EnableOccured();
-
-private:
-
-    /**
-     * Internal id.
-     */       
-    TInt iId;
-
-    /**
-     * Service id.
-     */     
-    TInt iSubServiceId;
-
-    /**
-     * Subservice type.
-     */     
-    TCCHSubserviceType iSubServiceType;
-
-    /**
-     * Service that contains this sub service
-     */
-    CScpService& iService;
-
-    /**
-     * Service handler. Owned.
-     */ 
-    CScpServiceHandlerBase* iServiceHandler;
-    
-    /**
-     * Protocol profile id.
-     */     
-    TInt iSipProfileId;
-
-    /**
-     * Enable requested state
-     */     
-    TEnableState iEnableRequestedState;
-
-    /**
-     * Sub service disconnected
-     */
-    TBool iSubServiceDisconnected;
-            
-    /**
-     * IAP id.
-     */     
-    TUint32 iApId;
-    
-    /**
-     * Snap id.
-     */     
-    TUint32 iSnapId;
-
-    /**
-     * Last reported error
-     */
-    TInt iLastReportedError;
-
-    /**
-     * Reserved
-     */
-    TBool iReserved;
-    
-    /**
-     * Indicates is roaming ongoing
-     */
-    TBool iRoaming;
-
-    /**
-     * Points to current sub service state.
-     */
-    TScpSubServiceState* iSubServiceState;
-    
-    /**
-     * Sub service observer
-     */
-     MScpSubServiceObserver* iSubServiceObserver;
-     
-     /**
-      * Counting enable requests, max count is sub service specific
-      */
-     TInt iEnableCounter;
-
-private:
-
-    // Needs access to call the private ChangeState
-    friend class TScpSubServiceState;
-
-#ifdef _DEBUG
-    friend class T_CScpService;
-    friend class T_CScpServiceStorage;
-    friend class T_CScpServiceManager;
-    friend class T_CScpVmbxHandler;
-    friend class T_CScpVoipHandler;
-    friend class T_CScpPresenceHandler;
-    friend class T_CScpImHandler;
-#endif
-    };    
-
-#endif // T_SCPDEFS_H