diff -r 13d7c31c74e0 -r b183ec05bd8c fotaapplication/fotaserver/inc/FotaNetworkRegStatus.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/fotaapplication/fotaserver/inc/FotaNetworkRegStatus.h Tue Aug 31 16:04:06 2010 +0300 @@ -0,0 +1,165 @@ +/* + * Copyright (c) 2005 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: GPRS and Wlan status getter for sending Generic Alerts + * + */ + +#ifndef __FOTANETWORKREGSTATUS_H__ +#define __FOTANETWORKREGSTATUS_H__ + +// SYSTEM INCLUDES +#include +#include + +//Forward declarations +class CFotaServer; + +//Constants used in this class + +const TTimeIntervalMicroSeconds32 KTimeInterval = 1000000; //1 second, duration between each retry. +const TInt KRetries = 10; //Maximum number of retries. + +/** + * Actice object class that runs a timer for probing network status (GPRS & WLAN) + * @lib fotaserver + * @since S60 v3.2 + */ +NONSHARABLE_CLASS (CFotaNetworkRegStatus) : public CActive + { +public: + //Symbian 2-Phase construction + + static CFotaNetworkRegStatus* NewL(CFotaServer* aObserver); + static CFotaNetworkRegStatus* NewLC(CFotaServer* aObserver); + + /** + * Destructor. + */ + virtual ~CFotaNetworkRegStatus(); + +public: + /** + * Starts monitoring for Network status before sending Generic Alert + * + * @since S60 v3.2 + * @param None + * @return None + */ + + void StartMonitoringL(); + + /** + * Checks whether the network connection possible with the IAP Id provided + * + * @since S60 v3.2 + * @param None + * @return ETrue if yes, EFalse when not possible + */ + //TBool IsConnectionPossibleL(TInt aIapid); + +public: + // Functions from base classes + /** + * From CActive,DoCancel. + */ + void DoCancel(); + + /** + * From CActive,RunL. + */ + void RunL(); + + /** + * From CActive,RunError. + */ + TInt RunError(TInt aError); + +private: + //functions + + //Constructors + + CFotaNetworkRegStatus(); + CFotaNetworkRegStatus(CFotaServer* aObserver); + + //Symbian 2-Phase construction + void ConstructL(); + + /** + * Checks GlobalRFs status + * + * @since S60 v3.2 + * @param None + * @return ETrue if success, EFalse if failure + */ + TBool CheckGlobalRFState(); + + /** + * Checks Network status, basically Network Registration + * + * @since S60 v3.2 + * @param None + * @return ETrue if success, EFalse if failure + */ + TBool CheckNetworkRegStateL(); + + /** + * Checks Wlan status + * + * @since S60 v3.2 + * @param None + * @return ETrue if success, EFalse if failure + */ + TBool IsWlanSupportedL(); + + /** + * To find the bearer of the IapId + * + * @since S60 v3.2 + * @param aIapId + * @return ETrue/EFalse + */ + //TUint32 FindBearerL(TInt aIapId); + +private: + // data + + /** + * timer used for monitoring + */ + RTimer iTimer; + + /** + * S60 monitory class used for monitoring network status + */ + RConnectionMonitor iMonitor; + + /** + * FotaServer + */ + CFotaServer* iObserver; + + /** + * Number of retries + */ + TInt iRetriesLeft; + + /** + * GlobalRFs state + */ + TBool iGlobalRFState; + }; + +#endif // __FOTANETWORKREGSTATUS_H__ +// End of File