alwayson_net_plugin/pdpcontextmanager2/inc/taostateexternalconnection.h
changeset 0 5a93021fdf25
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/alwayson_net_plugin/pdpcontextmanager2/inc/taostateexternalconnection.h	Thu Dec 17 08:55:21 2009 +0200
@@ -0,0 +1,212 @@
+/*
+* Copyright (c) 2004 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:  TAOStateExternalConnection class.
+*
+*/
+
+
+#ifndef TAOSTATEEXTERNALCONNECTION_H
+#define TAOSTATEEXTERNALCONNECTION_H
+
+// INCLUDE FILES
+#include "taostate.h"
+
+// FORWARD DECLARATIONS
+class MAOStateContext;
+class MAOStatePool;
+
+// CLASS DESCRIPTION
+
+/**
+*  External connection state class.
+*
+*  @lib PDPContextManager2.lib
+*  @since S60 v3.1
+*/
+NONSHARABLE_CLASS( TAOStateExternalConnection ): public TAOState
+	{
+	public: // Constructors & destructors
+	
+    /**
+     * Constructor.
+     *
+     * @since S60 v3.1
+     * @param aStateContext Reference to MAOStateContext
+     * @param aStatePool Reference to MAOStatePool
+     */
+    TAOStateExternalConnection(
+            MAOStateContext& aStateContext,
+            MAOStatePool& aStatePool );
+        
+    protected: // From base class TAOState
+    
+    /**
+     * From TAOState.
+     * Returns state name (ID).
+     *
+     * @since S60 v3.1
+     */
+    virtual TAOStateName StateName() const;
+        
+    /**
+     * Handles connection deleted notification.
+     *
+     * @since S60 v3.1
+     * @return New state or NULL if state is not needed to be changed.
+     */
+    virtual TAOState* HandleConnectionDeletedL();
+		
+    /**
+     * Handles reset factory settings notification.
+     * If this is overridden it must be remembered that
+     * connection MUST be closed after this method has been
+     * called. Otherwise factory resetting will fail.
+     *
+     * @since S60 v3.1
+     * @return New state or NULL if state is not needed to be changed.
+     */
+    virtual TAOState* HandleResetFactorySettingsL( TBool aReset );
+        
+    // These all must be ignored in external connection settings state.
+    // Though in real device these are impossible to receive.
+
+    /**
+     * From TAOState.
+     * This is ignored in external connection setting state. 
+     * Always returns NULL.
+     *
+     * @since S60 v3.1
+     */
+    virtual TAOState* HandlePDPContextActivatedL();
+
+    /**
+     * From TAOState.
+     * This is ignored in external connection setting state. 
+     * Always returns NULL.
+     *
+     * @since S60 v3.1
+     */
+    virtual TAOState* HandlePDPContextActivationFailedL();
+
+    /**
+     * From TAOState.
+     * This is ignored in external connection setting state. 
+     * Always returns NULL.
+     *
+     * @since S60 v3.1
+     */
+    virtual TAOState* HandlePDPContextDisconnectedL( TInt /*aReason*/ );
+
+    /**
+     * From TAOState.
+     * This is ignored in external connection setting state. 
+     * Always returns NULL.
+     *
+     * @since S60 v3.1
+     */
+	virtual TAOState* HandleNetworkChangedL(
+		    MAOConnectionManager::TNetworkType /*aNetworkType*/ );
+
+    /**
+     * From TAOState.
+     * This is ignored in external connection setting state. 
+     * Always returns NULL.
+     *
+     * @since S60 v3.1
+     */
+    virtual TAOState* HandleSuccesfulRAUEventL();
+
+    /**
+     * From TAOState.
+     * This is ignored in external connection setting state. 
+     * Always returns NULL.
+     *
+     * @since S60 v3.1
+     */
+    virtual TAOState* HandleRetryTimerTriggeredL();
+
+    /**
+     * From TAOState.
+     * This is ignored in external connection setting state. 
+     * Always returns NULL.
+     *
+     * @since S60 v3.1
+     */
+	virtual TAOState* HandleConnectionTimerTriggeredL();
+	
+	    /**
+     * From TAOState.
+     * This is ignored in external connection state. Always returns NULL.
+     *
+     * @since S60 v3.2
+     */
+    virtual TAOState* HandleSettingsReceivedL();
+
+    /**
+     * From TAOState.
+     * This is ignored in external connection setting state. 
+     * Always returns NULL.
+     *
+     * @since S60 v3.1
+     */
+    virtual TAOState* HandlePDPContextTemporarilyBlockedL();
+
+    /**
+     * From TAOState.
+     * This is ignored in external connection setting state. 
+     * Always returns NULL.
+     *
+     * @since S60 v3.1
+     */
+    virtual TAOState* HandleGeneralError();
+
+    /**
+     * From TAOState.
+     * This is ignored in external connection setting state. 
+     * Always returns NULL.
+     *
+     * @since S60 v3.1
+     */
+    virtual TAOState* HandleEnableAlwaysOnL();
+
+    /**
+     * From TAOState.
+     * This is ignored in external connection setting state. 
+     * Always returns NULL.
+     *
+     * @since S60 v3.1
+     */
+    virtual TAOState* HandleSwitchFromDisconnectedL(
+		    MAOConnectionManager::TFailureReason /*aReason*/ );
+
+    /**
+     * From TAOState.
+     * This is ignored in external connection setting state. 
+     * Always returns NULL.
+     *
+     * @since S60 v3.1
+     */
+    virtual TAOState* HandleExternalConnectionCreatedL();
+
+    /**
+     * From TAOState.
+     * This is ignored in external connection setting state. 
+     * Always returns NULL.
+     *
+     * @since S60 v3.1
+     */
+    virtual TAOState* HandleUnconnectTimerExpiredL();
+	};
+
+#endif // TAOSTATEEXTERNALCONNECTION_H