--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/fotaapplication/fotaserver/inc/FotaNetworkRegStatus.h Tue Jul 13 09:51:41 2010 +0530
@@ -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 <e32base.h>
+#include <rconnmon.h>
+
+//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