satengine/SatServer/Engine/inc/CSatBIPUtils.h
changeset 46 2fa1fa551b0b
parent 42 35488577e233
child 48 78df25012fda
--- a/satengine/SatServer/Engine/inc/CSatBIPUtils.h	Mon Aug 23 15:50:31 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,427 +0,0 @@
-/*
-* Copyright (c) 2002-2008 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:  CSatBIPUtils is responsible for handling Bearer Independent
-                 Protocol data channels.
-*
-*/
-
-
-#ifndef CSATBIPUTILS_H
-#define CSATBIPUTILS_H
-
-#include    <e32base.h>
-#include    <es_sock.h>
-#include    <etelpckt.h>
-#include    <etelmm.h>
-#include    <etelqos.h>
-#include    "MSatBIPUtils.h"
-#include    "MSatBIPEventNotifier.h"
-#include    "MSatEventObserver.h"
-#include    "MSatBIPDataChannel.h"
-
-class MSatBIPChannelStatusObserver;
-class MSatBIPDataAvailableObserver;
-class TSatChannelIdInfo;
-class MSatUtils;
-class CSatApnHandler;
-class CSatSActiveWrapper;
-class CSatBIPConnectionObserver;
-
-/**
- *  CSatBIPUtils is responsible for handling data channels used by
- *
- *  Bearer Independent Protocol (BIP)
- *
- *  @lib SatEngine.lib
- *  @since S60 3.0
- */
-class CSatBIPUtils : public CBase,
-                     public MSatBIPUtils,
-                     public MSatBIPEventNotifier,
-                     public MSatEventObserver
-    {
-public:  
-// Constructors and destructor
-    /**
-     * Two-phased constructor.
-     * @param aUtils Reference to common Utils class
-     */
-    static CSatBIPUtils* NewL( MSatUtils& aUtils );
-    
-    /**
-     * Destructor.
-     */
-    virtual ~CSatBIPUtils();
-    
-// from base class MSatEventObserver
-    /**
-     * From MSatEventObserver
-     * Handles event
-     *
-     * @since S60 3.0
-     * @param aEvent Event that has occured
-     */       
-    void Event( TInt aEvent );
-    
-// from base class MSatBIPUtils
-    /**
-     * From MSatBIPUtils 
-     * Creates new data channel and returns reference to it
-     *
-     * @since S60 3.0
-     * @param TSatBIPError code indicating the execution status.
-     * @return Pointer to created data channel
-     */
-    MSatBIPDataChannel* CreateChannelL(
-        const TSatBearerType aBearerType,
-        TInt& aErrCode );
-    
-    /**
-     * From MSatBIPUtils 
-     * Request to close specified data channel.
-     *
-     * @since S60 3.0
-     * @param aChannelId Identifies the channel to be closed.
-     * @return TSatBIPError code indicating the execution status.
-     */
-    TInt CloseChannel( const TInt aChannelId );
-
-    /**
-     * From MSatBIPUtils 
-     * Request to open new data channel
-     *
-     * @since S60 3.0
-     * @param aChannelId Identifies the channel.
-     * @param aErrCode TSatBIPError code indicating the execution status.
-     * @return Pointer to requested data channel
-     */
-    MSatBIPDataChannel* DataChannel(
-        const TInt aChannelId,
-        TInt& aErrCode );
-    
-    /**
-     * From MSatBIPUtils 
-     * Generates channel status object from given 
-     * parameters to be used in terminal responses.
-     *
-     * @since S60 3.0
-     * @param aChannelId Data channel identifier.
-     * @param aStatus Data channel's status.
-     * @return channel status object that can be put into terminal responses.
-     */
-    RSat::TChannelStatus GenerateChannelStatusL(
-        const TInt aChannelId,
-        TInt aStatus );
-
-    /**
-     * From MSatBIPUtils 
-     * Reference to APN handler
-     *
-     * @since S60 3.0
-     * @return Interface reference to CSatApnHandler
-     */
-    MSatApnHandler& ApnHandler();
-    
-    /**
-     * From MSatBIPUtils 
-     * Status of the PDP Context
-     *
-     * @since S60 3.0
-     * @return ETrue, if there is active PDP Context
-     */
-    TBool IsContextActive();
-    
-    /**
-     * From MSatBIPUtils 
-     * Request to close specified data channel.
-     *
-     * @since S60 3.0
-     * @return Array containing all available data channels.
-     */
-    CArrayPtrFlat<MSatBIPDataChannel>* DataChannels();
-    
-// from base class MSatBIPUtils
-                
-    /**
-     * From MSatBIPEventNotifier
-     * Notification request for DataAvailable event.
-     *
-     * @since S60 3.0
-     * @param aObserver An observer of the event.
-     */
-    void NotifyDataAvailable(
-        MSatBIPDataAvailableObserver* aObserver );
-
-    /**
-     * From MSatBIPEventNotifier
-     * Notification request for ChannelStatus event.
-     *
-     * @since S60 3.0
-     * @param aObserver An observer of the event.
-     */
-    void NotifyChannelStatus(
-        MSatBIPChannelStatusObserver* aObserver );
-    
-    /**
-     * From MSatBIPEventNotifier 
-     * Cancels DataAvailable event notification request.
-     *
-     * @since S60 3.0
-     */
-    void CancelDataAvailable();
-    
-    /**
-     * From MSatBIPEventNotifier 
-     * Cancels ChannelStatus event notification request.
-     *
-     * @since S60 3.0
-     */
-    void CancelChannelStatus();
-
-// New Member Function
-    /**
-     * DataAvailable event from data channel.
-     *
-     * @since S60 S60 3.0
-     * @param aChannelId ID of the channel that called this function.
-     * @param aLength Number of bytes available.
-     */
-    void DataAvailable( const TInt aChannelId, const TInt aLength );
-    
-    /**
-     * ChannelStatus event from data channel.
-     *
-     * @since S60 S60 3.0
-     * @param aChannelId ID of the channel that called this function.
-     * @param aStatus Status that caused this event.
-     */
-    void ChannelStatus(
-        const TInt aChannelId,
-        const TInt aStatus );
-
-    
-    /**
-     * Closes all active data channels. This function is called
-     * when SAP is enabled or SAT Server closes
-     * @since S60 S60 3.0
-     */
-    void CloseAllChannels();
-
-    /**
-     * Proposes QoS parameters for the last created primary or secondary context
-     * and returns negotioated QoS parameters as a result.
-     *
-     * @since S60 S60 3.0
-     * @param aQoSParams Requested QoS parameters to propose for the context
-     * @return Negotioated QoS parameters, which may differ from requested
-     *         parameters.
-     */
-    RPacketQoS::TQoSGPRSNegotiated ProposeQoSParametersL(
-        const RPacketQoS::TQoSGPRSRequested& aQoSParams );
-       
-    /**
-     * Gives reference to RPacketService
-     *
-     * @since S60 S60 3.0
-     */
-    RPacketService& PacketService();
-    
-    
-    /**
-     * Current status of the GPRS service
-     *
-     * @since S60 S60 3.0
-     * @return Current status of the GPRS service
-     */     
-    RPacketService::TStatus ConnectionStatus() const;
-        
-    /**
-     * Stop all udp connection.
-     *
-     * @since S60 S60 3.2
-     */  
-    void StopUdpLink();
-        
-    /**
-     * Set the state for subconnection
-     *
-     * @since S60 S60 3.2
-     * @param aSet State to be set
-     */  
-    void SetConnectionActivated( TBool aSet );
-        
-    /**
-     * Get the state of connection
-     *
-     * @since S60 S60 3.2
-     * @param aSet State to be set
-     */  
-    TBool IsConnectionActivated();
-        
-    /**
-     * Set the state for subconnection
-     *
-     * @since S60 S60 3.2
-     * @param aSet State to be set
-     */  
-    void SetSubConnectionActivated( TBool aSet );
-        
-    /**
-     * Get the state of subconnection
-     *
-     * @since S60 S60 3.2
-     * @param aSet State to be set
-     */  
-    TBool IsSubConnectionActivated();  
-        
-private:
-
-    /**
-     * C++ default constructor.
-     * @param aUtils Reference to common utils class
-     */
-    CSatBIPUtils( MSatUtils& aUtils );
-
-    /**
-     * By default Symbian 2nd phase constructor is private.
-     */
-    void ConstructL();
-
-    /**
-     * Defines next available channel ID
-     * @return Pointer to next available channel id
-     */
-    TSatChannelIdInfo* AvailableChannelID();
-    
-    /**
-     * Reference to RPacketContex handle
-     * @return Error code indicating the success of function completion
-     */
-    TInt GprsService();
-    
-    /**
-     * Number of contexts currently in Gprs service
-     *
-     * @since S60 S60 3.0
-     * @return Number of active PDP contexts
-     */  
-    TInt ContextCount();
-
-private: // Data
-
-    /**
-     * Array containing all data channels
-     * Own
-     */
-    CArrayPtrFlat<MSatBIPDataChannel>* iDataChannels;
-
-    /**
-     * DataAvailable event observer
-     * Own
-     */
-    MSatBIPDataAvailableObserver* iDataAvailableObserver;
-
-    /**
-     * ChannelStatus event observer
-     * Own
-     */
-    MSatBIPChannelStatusObserver* iChannelStatusObserver;
-
-    /**
-     * Main session to Socket Server
-     * 
-     */
-    RSocketServ iSocketServer;
-
-    /**
-     * Indicates is there channel active or not
-     * 
-     */
-    TBool iDataChannelActivated;
-
-    /**
-     * Array containing datachannel IDs
-     * Own
-     */
-    CArrayPtrFlat<TSatChannelIdInfo>* iChannelIds;
-
-    /**
-     * Temporary Channel ID pointer, used for ~CSatBIPUtils to 
-     * cleanup when AppendL leave. Look into ConstructL and
-     * ~CSatBIPUtils to see how it be used.
-     * Not Own
-     */
-    TSatChannelIdInfo* iChannelId;
-   
-   /**
-     * Utils class
-     * Not Own
-     */
-    MSatUtils& iUtils;
-
-    /**
-     * Blocker for synchronous requests
-     * Own
-     */
-    CSatSActiveWrapper* iWrapper;
-
-    /**
-     * Classes for GPRS context activation
-     * 
-     */
-    RPacketService iPacketService;
-
-    /**
-     * Indicates is the Session to PacketService active
-     * 
-     */
-    TBool iPacketServiceActive;
-
-    /**
-     * Pointer to APN handler
-     * Own
-     */
-    MSatApnHandler* iApnHandler;
-
-    /**
-     * Pointer to connection status observer
-     * Own
-     */
-    CSatBIPConnectionObserver* iConnObserver;
-        
-    /**
-     * Represent the primary PDP context
-     * Own
-     */
-    RConnection iConnection;
-        
-    /**
-     * Represent the secondary PDP context
-     * Own
-     */
-    RSubConnection iSubConnection;
-        
-    /**
-     * iSubConnectionActivated
-     */
-    TBool iSubConnectionActivated;
-        
-    /**
-     * iConnectionActivated
-     */
-    TBool iConnectionActivated;
-    };
-
-#endif      // CSATBIPUTILS_H
-