videofeeds/server/IptvEpgManager/inc/CIptvEpgMsgHandler.h
branchRCL_3
changeset 23 befca0ec475f
parent 0 96612d01cf9f
equal deleted inserted replaced
22:839377eedc2b 23:befca0ec475f
       
     1 /*
       
     2 * Copyright (c) 2002 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 the License "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:    ?Description*
       
    15 */
       
    16 
       
    17 
       
    18 
       
    19 
       
    20 #ifndef CIPTVEPGMSGHANDLER_H
       
    21 #define CIPTVEPGMSGHANDLER_H
       
    22 
       
    23 //  INCLUDES
       
    24 #include <e32std.h>
       
    25 #include <e32base.h>
       
    26 #include "CIptvUtil.h"
       
    27           
       
    28 #include "MIptvVodContentClientObserver.h"
       
    29           
       
    30 // FORWARD DECLARATIONS
       
    31 class CIptvEpgVodMsqQueue;
       
    32 class CIptvEpgSession;
       
    33 class CIptvServer;
       
    34 class CIptvEpgManagerImpl;
       
    35 class CIptvVodContentCategoryBriefDetails;
       
    36 class CIptvVodContentContentBriefDetails;
       
    37 class CIptvVodContentContentFullDetails;
       
    38 class CIptvMediaContent;
       
    39 class CIptvEpgDatabase;
       
    40 
       
    41 // CLASS DECLARATION
       
    42 class CIptvEpgMsgHandler : public CBase
       
    43     {
       
    44     public:  // Constructors and destructor
       
    45         
       
    46         /**
       
    47         * Two-phased constructor.
       
    48         */
       
    49         static CIptvEpgMsgHandler* NewL(CIptvServer& aServer);
       
    50         
       
    51         /**
       
    52         * Destructor.
       
    53         */
       
    54         virtual ~CIptvEpgMsgHandler();
       
    55                       
       
    56     public: // New functions
       
    57         
       
    58         /**
       
    59          * Handles EIptvEngineServerGetAllEpgsReq and
       
    60          * EIptvEngineServerGetAllSelectedEpgsReq messages.
       
    61          * @param aMessage, IPC message where the response is written.
       
    62          * @param aCriteria criteria which limits the get results.
       
    63          */
       
    64         void HandleEpgMsgL(const RMessage2& aMessage);
       
    65 
       
    66         /**
       
    67         * Send message from EPG manager to client.
       
    68         * @since            Engine 1.1
       
    69         * @param aMsg       Message         
       
    70         * @param aInfo      Optional info parameter.       
       
    71         */
       
    72         void SendMessageToClientL(TInt aMsg, TInt aInfo);
       
    73 
       
    74     private:
       
    75 
       
    76         /**
       
    77         * C++ default constructor.
       
    78         */
       
    79         CIptvEpgMsgHandler(CIptvServer& aServer);
       
    80 
       
    81         /**
       
    82         * By default Symbian 2nd phase constructor is private.
       
    83         */
       
    84         void ConstructL();
       
    85 
       
    86     private:
       
    87 
       
    88         /**
       
    89          * Handle EIptvEngineVodContentGetEcgCategoryListSizeReq
       
    90          * @param aMessage
       
    91          */
       
    92         void HandleGetEcgCategoryListSizeReqL(const RMessage2& aMessage);
       
    93 
       
    94         /**
       
    95          * Handle EIptvEngineVodContentGetEcgCategoryListDataReq
       
    96          * @param aMessage
       
    97          */
       
    98         void HandleGetEcgCategoryListDataReqL(const RMessage2& aMessage);
       
    99 
       
   100         /**
       
   101          * Handle EIptvEngineVodContentGetCategoryDetailsSizeReq
       
   102          * @param aMessage
       
   103          */
       
   104         void HandleGetCategoryDetailsSizeReqL(const RMessage2& aMessage);
       
   105     
       
   106         /**
       
   107          * Handle EIptvEngineVodContentGetCategoryDetailsDataReq
       
   108          * @param aMessage
       
   109          */
       
   110         void HandleGetCategoryDetailsDataReqL(const RMessage2& aMessage);
       
   111 
       
   112         /**
       
   113          * Handle EIptvEngineVodContentGetParentCategoryReq
       
   114          * @param aMessage
       
   115          */
       
   116         void HandleGetParentCategoryReqL(const RMessage2& aMessage);
       
   117 
       
   118         /**
       
   119          * Handle EIptvEngineVodContentGetEcgListSizeReq
       
   120          * @param aMessage
       
   121          */
       
   122         void HandleGetEcgListSizeReqL(const RMessage2& aMessage);
       
   123 
       
   124         /**
       
   125          * Handle EIptvEngineVodContentGetEcgListDataReq
       
   126          * @param aMessage
       
   127          */
       
   128         void HandleGetEcgListDataReqL(const RMessage2& aMessage);
       
   129 
       
   130         /**
       
   131          * Handle EIptvEngineVodContentGetEcgAllListSizeReq
       
   132          * @param aMessage
       
   133          */
       
   134         void HandleGetEcgAllListSizeReqL(const RMessage2& aMessage);
       
   135 
       
   136         /**
       
   137          * Handle EIptvEngineVodContentGetEcgAllListDataReq
       
   138          * @param aMessage
       
   139          */
       
   140         void HandleGetEcgAllListDataReqL(const RMessage2& aMessage);
       
   141 
       
   142         /**
       
   143          * Handle EIptvEngineVodContentGetContentDetailsSizeReq
       
   144          * @param aMessage
       
   145          */
       
   146         void HandleGetContentDetailsSizeReqL(const RMessage2& aMessage);
       
   147 
       
   148         /**
       
   149          * Handle EIptvEngineVodContentGetContentDetailsDataReq
       
   150          * @param aMessage
       
   151          */            
       
   152         void HandleGetContentDetailsDataReqL(const RMessage2& aMessage);
       
   153       
       
   154         /**
       
   155          * Handle EIptvEngineVodContentServiceId message from client and get
       
   156          * CIptvEpgManagerImpl pointer from server.
       
   157          * @param aMessage
       
   158          */
       
   159         void HandleServiceIdL(const RMessage2& aMessage);
       
   160 
       
   161         /**
       
   162         * Handle EIptvEngineLiveTvUpdateChannelReq message
       
   163         * @param aMessage Reference to RMessage2
       
   164         */
       
   165 
       
   166         void HandleGetCAListSizeReqL(const RMessage2& aMessage);
       
   167         void HandleGetCAListDataReqL(const RMessage2& aMessage);
       
   168         void SetLastPositionL(const RMessage2& aMessage);
       
   169         void HandleSetMpxIdL(const RMessage2& aMessage);
       
   170         
       
   171         /**
       
   172         * Handle EIptvEngineVodContentCheckUpdate message
       
   173         * @param aMessage Reference to RMessage2
       
   174         */
       
   175         void HandleContentCheckUpdateL( const RMessage2& aMessage );
       
   176 
       
   177         /**
       
   178         *
       
   179         */
       
   180         void HandleUpdateChannelOrderReqL( const RMessage2& aMessage );
       
   181 
       
   182         /**
       
   183         * Handle EIptvEngineVodGetUpdateTime message
       
   184         * @param aMessage Reference to RMessage2
       
   185         */
       
   186         void HandleGetUpdateTimeL(const RMessage2& aMessage);
       
   187 
       
   188         /**
       
   189         * Handle EIptvEngineVodContentSetIap message
       
   190         * @param aMessage Reference to RMessage2
       
   191         */
       
   192         void HandleSetIapL(const RMessage2& aMessage);
       
   193 
       
   194         /*
       
   195          * Handle Reset Global Id request.
       
   196          *
       
   197          * @aMessage Message from client.
       
   198          */
       
   199         void HandleResetGlobalIdL(
       
   200             const RMessage2& aMessage );
       
   201                    
       
   202     private:    // Data
       
   203         CIptvEpgVodMsqQueue* iVodMsgQueue;
       
   204         CIptvEpgSession* iEpgSession;
       
   205         CIptvServer& iServer;
       
   206         RPointerArray<CIptvVodContentCategoryBriefDetails> iCategoryBriefDetailsArray;
       
   207         RPointerArray<CIptvVodContentContentBriefDetails> iContentBriefDetailsArray;
       
   208         RPointerArray<CIptvMediaContent> iMediaContentArray;
       
   209         TUint32 iDataSize;
       
   210         CIptvVodContentCategoryBriefDetails* iCategory;
       
   211         CIptvVodContentContentFullDetails* iContentFullDetails;
       
   212         TUint32 iTotalAmount;
       
   213         TIptvServiceId iServiceId; 
       
   214         TUint32 iIapId;
       
   215         CIptvEpgDatabase* iEpgDatabase;     
       
   216     };
       
   217 
       
   218 #endif // CIPTVEPGMSGHANDLER_H