diff -r 000000000000 -r dd21522fd290 web_plat/connection_manager_api/inc/MConnection.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/web_plat/connection_manager_api/inc/MConnection.h Mon Mar 30 12:54:55 2009 +0300 @@ -0,0 +1,209 @@ +/* +* Copyright (c) 2000 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of the License "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: +* This interface class defines a protocolconnection/session +* handling. +* +* +*/ + + +#ifndef M_Connection_H +#define M_Connection_H + +// INCLUDES + +#include // TEMP +#include + +//FORWARD DECLARATIONS +class TIdPair; +class MApChangeObserver; +class CApAccessPointItem; +class RSocketServ; +class RConnection; + +enum TAPValidity + { + EFirst, + ESecond, + EBoth, + ENeither, + }; + +enum TConManChangeConn + { + EConManDoNothing, + EConManCloseAndStart, + EConManStartAgain, + }; + +//This class provides a standerd interface for the WML Browser towards any concrete implementation of a connection manager +class MConnection + { +public: + /** + *Sets the requested AP later it may not be the one to be used + *@param aRequestedAPs the requested AP idpair + */ + virtual void SetRequestedAPs( TIdPair aRequestedAPs ) = 0; + + /** + *Sets RequestedAP + *@param aRequestedAP the requested AP id + */ + virtual void SetRequestedAP( TUint32 aRequestedAPId , TBool aDefault = EFalse ) = 0; + + /** + *Functions that are used to store the connection type and the snap ID + */ + virtual void SetConnectionType( CMManager::TCmSettingSelectionMode aConnectionType ) = 0; + + virtual void SetRequestedSnap (TUint32 aRequestedSnapId) = 0; + + virtual TAPValidity RequestedAPValidityL() = 0; + + /** + *A query function to find out whether there is a connection which + *was matches with the "current" connection parameters + *@return ETrue if the condition above is satisfied EFalse otherwise. + */ + virtual TBool Connected() = 0; + + /** + *Call this for obtaining the AP for the current connection + *@return the AP for the latest connection + * NULL if there isn't any + */ + virtual const CApAccessPointItem* CurrentAccessPoint() const = 0; + + /** + *Returns the currently (or the last used) AP id + *@return the currently (or the last used) AP id + */ + virtual TUint32 CurrentAPId() const = 0; + + /** + *Call this the find out the session security mode for the current AP + *@retun the security mode for the current AP + */ + virtual TBool CurrentSessionSecure() const = 0; + + /** + *Call this the find out the connection type for the current AP + *@retun the conection type for the current AP + */ + virtual TBool CurrentSessionConnectionOriented() const = 0; + + /** + *Call this the get the gateway address to be used + *@retun the address of the gateway associated with the current AP, space for zero terminator should also be allocated + */ + virtual HBufC* CurrentGatewayLC() const = 0; + + + /** + *Call this the get the start page to be used + *@return the address of the start page associated with the current AP, space for zero terminator should also be allocated + */ + virtual HBufC* CurrentStartPageLC() const = 0; + + /** + *Call this function to get the name of the current Wap AP, space for zero terminator should also allocated + *return + */ + virtual HBufC* CurrentApNameLC() const = 0; + + /** + *Call this the get the current connection speed to be used + *@return the the connection speed + */ + virtual TApCallSpeed CurrentConnectionSpeed() const = 0; + + /** + *Call this the get the current bearer to be used + *@return the bearer type associated with the current AP + */ + virtual TApBearerType CurrentBearerTypeL() const = 0; + + /** + *It closes the connection and sets the manager to offline mode + */ + virtual void Disconnect() = 0; + + /** + *Sets an observer on the AP changes + *@param aObserver reference to the the AP change observer + */ + virtual void SetApChangeObserver( MApChangeObserver& aObserver ) = 0; + + /** + *Removes the AP change observer + */ + virtual void UnsetApChangeObserver() = 0; + + + /** + *Returns whether a new connection needed to be established or the old one is used. + */ + virtual TBool NewConnectionEstablished() const = 0; + + /** + *Starts the connection process + *@param aDisableConnNeeded if set to ETrue the initial dialog indicating that there is no connection will not appear + *@param aIgnoreSecureAttribute if set to ETrue the security of the AP will not be taken into account when making + making decisions about which AP to use the requested or the active + */ + virtual TInt StartConnectionL( TBool aDisableConnNeeded = EFalse, TBool aIgnoreSecureAttribute = EFalse ) = 0; + + /** + *Returns the RConnection object used to create connection. + *@return RConnection object + */ + virtual RConnection& Connection() = 0; + + /** + *Return name of the connection created. + *Ownership of name is handed over. + *@return name of the connection + */ + virtual TName* ConnectionNameL() = 0; + + /** + * Return socket server + * @return socket server + */ + virtual RSocketServ& SocketServer() = 0; + + /** + * Change Internet Accespoint ( Change Connection ) + * @return + */ + virtual void ChangeIapL( TConManChangeConn& aCangeConn, + TUint32& aNewAp ) = 0; + + /** + * Ask Internet Accespoint from dialog + * @return KErrNone if the user selected an Iap or and error code + */ + virtual TInt AskIap( TUint32& aNewAp ) = 0; + + /** + * Shows the connection changed dialog. + * @return none. + */ + virtual void ShowConnectionChangedDlg() = 0; + }; + +#endif \ No newline at end of file