realtimenetprots/sipfw/ProfileAgent/profile_fsm/inc/sipprofilefsmuser.h
changeset 0 307788aac0a8
equal deleted inserted replaced
-1:000000000000 0:307788aac0a8
       
     1 /*
       
     2 * Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
       
     3 * All rights reserved.
       
     4 * This component and the accompanying materials are made available
       
     5 * under the terms of "Eclipse Public License v1.0"
       
     6 * which accompanies this distribution, and is available
       
     7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
       
     8 *
       
     9 * Initial Contributors:
       
    10 * Nokia Corporation - initial contribution.
       
    11 *
       
    12 * Contributors:
       
    13 *
       
    14 * Description:
       
    15 * Name        : sipprofilefsmuser.h
       
    16 * Part of     : sip profile fsm
       
    17 * Version     : SIP 4.1
       
    18 *
       
    19 */
       
    20 
       
    21 
       
    22 
       
    23 
       
    24 /**
       
    25  @internalComponent
       
    26 */
       
    27 
       
    28 #ifndef MSIPPROFILEFSMUSER_H
       
    29 #define MSIPPROFILEFSMUSER_H
       
    30 
       
    31 //INCLUDES
       
    32 #include <e32std.h>
       
    33 
       
    34 // FORWARD DECLARATIONS
       
    35 class CSIPConcreteProfile;
       
    36 
       
    37 // CLASS DECLARATION
       
    38 /**
       
    39  * Callback for SIP Profile FSM to register / deregister SIP profiles.
       
    40  */
       
    41 class MSIPProfileFSMUser
       
    42     {
       
    43     public:
       
    44 
       
    45         /**
       
    46         * Registers a SIP profile.
       
    47         * @param aSIPProfile sip profile to register
       
    48         */
       
    49         virtual void RegisterProfileL(
       
    50             CSIPConcreteProfile& aSIPProfile) = 0;
       
    51 
       
    52         /**
       
    53         * Deregisters a SIP profile.
       
    54         * @param aSIPProfile sip profile to deregister
       
    55         */
       
    56         virtual void DeregisterProfileL(
       
    57             CSIPConcreteProfile& aSIPProfile) = 0;
       
    58 
       
    59         /**
       
    60         * Retries registration for a SIP profile for which 
       
    61         * a previously attempted registration has failed. 
       
    62         * @param aSIPProfile sip profile to be registered
       
    63         */
       
    64         virtual void RetryProfileRegistrationL( 
       
    65             CSIPConcreteProfile& aSIPProfile ) = 0;
       
    66 
       
    67         /**
       
    68         * Checks whether a SIP profile has to be added into the 
       
    69         * registration/deregistration queue.
       
    70         * @return ETrue if the profile has to be added to queue,
       
    71         *         otherwise EFalse.
       
    72         */        
       
    73         virtual TBool AddProfileIntoQueue( 
       
    74             CSIPConcreteProfile& aSIPProfile ) const = 0;
       
    75 
       
    76         /**
       
    77         * Registers a SIP profile that was pending in registration queue.
       
    78         * @param aSIPProfile sip profile to register
       
    79         */            
       
    80         virtual void RegisterProfileAfterQueueL( 
       
    81             CSIPConcreteProfile& aSIPProfile ) = 0;
       
    82 
       
    83         /**
       
    84         * Deregisters a SIP profile that was pending in deregistration queue.
       
    85         * @param aSIPProfile sip profile to deregister
       
    86         */                           
       
    87         virtual void DeregisterProfileAfterQueueL( 
       
    88             CSIPConcreteProfile& aSIPProfile ) = 0;
       
    89 
       
    90         /**
       
    91         * Retries registration for a SIP profile for which 
       
    92         * a previously attempted registration has failed. 
       
    93         * and that was pending in the registration queue.
       
    94         * @param aSIPProfile sip profile to register
       
    95         */
       
    96         virtual void RetryProfileRegistrationAfterQueueL( 
       
    97             CSIPConcreteProfile& aSIPProfile ) = 0;
       
    98             
       
    99         /**
       
   100         * Check if the profile is in queue.
       
   101         * @return ETrue if idle, EFalse otherwise
       
   102         * @param aSIPProfile sip profile to register
       
   103         */
       
   104         virtual TBool IsInQueue( 
       
   105             CSIPConcreteProfile& aSIPProfile ) const = 0;
       
   106             
       
   107         virtual void SetInterimProfile( 
       
   108         			CSIPConcreteProfile* aSIPConcreteProfile ) = 0;
       
   109    
       
   110         
       
   111     };
       
   112 
       
   113 #endif // MSIPPROFILEFSMUSER_H
       
   114