realtimenetprots/sipfw/ProfileAgent/Client/Api/sipprofileregistryobserver.h
changeset 0 307788aac0a8
equal deleted inserted replaced
-1:000000000000 0:307788aac0a8
       
     1 /*
       
     2 * Copyright (c) 2003-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        : sipprofileregistryobserver.h
       
    16 * Part of     : SIP Profile Client
       
    17 * Interface   : SDK API, SIP Profile API
       
    18 * The observer class for monitoring SIP profiles.
       
    19 * Version     : 1.0
       
    20 *
       
    21 */
       
    22 
       
    23 
       
    24 
       
    25 #ifndef MSIPPROFILEOREGISTRYBSERVER_H
       
    26 #define MSIPPROFILEOREGISTRYBSERVER_H
       
    27 
       
    28 //  INCLUDES
       
    29 #include <e32base.h>
       
    30 #include <e32std.h>
       
    31 
       
    32 // FORWARD DECLARATIONS
       
    33 
       
    34 // CLASS DECLARATION
       
    35 /**
       
    36 *  @publishedAll
       
    37 *  @released
       
    38 *
       
    39 *  The observer class for monitoring SIP profiles.
       
    40 *  Class must be implemented by the user in order to 
       
    41 *  observe changes in the SIP profiles.
       
    42 */
       
    43 class MSIPProfileRegistryObserver 
       
    44     {
       
    45     public: 
       
    46         /** Profile Registry events */
       
    47         enum TEvent
       
    48             {
       
    49             /** 
       
    50             * Signals the creation of a SIP profile, indicating that a new
       
    51             * profile is added into permanent store. This event is sent to
       
    52             * all observers.
       
    53             */
       
    54             EProfileCreated = 0,
       
    55             /** 
       
    56             * Signals the updating of a SIP profile, indicating that the data of 
       
    57             * an existing profile is updated into permanent store. This event is
       
    58             * sent to those observers who have the corresponding profile 
       
    59             * instantiated. 
       
    60             * Newly updated values of the profile are available for clients after
       
    61             * they receive this signal.If profile was registered while updated,
       
    62             * reregistration of the profile may occur. Updated values of the 
       
    63             * profile are uploaded into network when SIP registration process
       
    64             * is completed.It is possible (but not recommended) that profile is
       
    65             * updated even when it is being enabled by the client. If client 
       
    66             * receives this event for enabled profile, client should react as if
       
    67             * error was occurred in the exception that profile is disabled
       
    68             * or deleted first.
       
    69             */
       
    70             EProfileUpdated,
       
    71             /**
       
    72             * Signals the changing of the registration status of a SIP profile
       
    73             * to registered.
       
    74             * This event is sent to those observers who have the corresponding
       
    75             * profile instantiated.
       
    76             */
       
    77             EProfileRegistered,
       
    78             /**
       
    79             * Signals the changing of the registration status of a SIP profile
       
    80             * to deregistered.
       
    81             * This event is sent to those observers who have the corresponding
       
    82             * profile instantiated.
       
    83             */
       
    84             EProfileDeregistered,
       
    85             /**
       
    86             * Signals the destruction of a SIP profile, indicating that the 
       
    87             * profile has been removed from the permanent store and cannot 
       
    88             * be used anymore.This event is sent to those observers who have 
       
    89             * the corresponding profile instantiated.
       
    90             */
       
    91             EProfileDestroyed,
       
    92             /**
       
    93              * Signals the force disabling of a SIP profile, indicating that 
       
    94              * all the users attached to the profile are detached. This event
       
    95              * is sent to all the observers but ForceDisable API can be invoked
       
    96 			 * only by application with Network Control capability.
       
    97              */
       
    98             EProfileForciblyDisabled
       
    99             };
       
   100 
       
   101         /** 
       
   102         * An event related to SIP Profile has accorred
       
   103         * @param aProfileId a profile Id
       
   104         * @param aEvent an occurred event
       
   105         **/
       
   106         virtual void ProfileRegistryEventOccurred(TUint32 aProfileId,
       
   107                                                   TEvent aEvent)=0;
       
   108 
       
   109         /**
       
   110         * An asynchronous error has occurred related to SIP profile
       
   111         * Event is send to those observers, who have the
       
   112         * corresponding profile instantiated.
       
   113         * @param aProfileId the id of failed profile 
       
   114         * @param aError an occurred error
       
   115         */
       
   116         virtual void ProfileRegistryErrorOccurred(TUint32 aProfileId,
       
   117                                                   TInt aError)=0;
       
   118     };
       
   119 
       
   120 #endif // MSIPPROFILEOREGISTRYBSERVER_H