os/persistentdata/loggingservices/eventlogger/LogServ/inc/LogServOperationFactory.h
author sl
Tue, 10 Jun 2014 14:32:02 +0200
changeset 1 260cb5ec6c19
permissions -rw-r--r--
Update contrib.
     1 // Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies).
     2 // All rights reserved.
     3 // This component and the accompanying materials are made available
     4 // under the terms of "Eclipse Public License v1.0"
     5 // which accompanies this distribution, and is available
     6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
     7 //
     8 // Initial Contributors:
     9 // Nokia Corporation - initial contribution.
    10 //
    11 // Contributors:
    12 //
    13 // Description:
    14 //
    15 
    16 #ifndef __LOGSERVOPERATIONFACTORY_H__
    17 #define __LOGSERVOPERATIONFACTORY_H__
    18 
    19 #include <e32base.h>
    20 #include "LogServDefs.h"
    21 #include "LogCliServShared.h"
    22 
    23 // Classes referenced
    24 class CLogPackage;
    25 class CLogServViewBase;
    26 class CLogServOperationBase;
    27 class MLogServTaskInterface;
    28 class MLogServBackupInterface;
    29 class MLogServOperationManager;
    30 class MLogServDatabaseTransactionInterface;
    31 
    32 /**
    33 A factory class, used for creation of operation objects and queueing them for execution.
    34 
    35 Operation objects. Every operation class derives from CLogServOperationBase.
    36 
    37 @see CLogServOperationBase
    38 
    39 @see CLogServOpEventAdd
    40 @see CLogServOpEventGet
    41 @see CLogServOpEventChange
    42 @see CLogServOpEventDelete
    43 @see CLogServOpTypeAdd
    44 @see CLogServOpTypeGet
    45 @see CLogServOpTypeChange
    46 @see CLogServOpTypeDelete
    47 @see CLogServOpClearLog
    48 @see CLogServOpClearRecent
    49 @see CLogServOpConfigGet
    50 @see CLogServOpConfigChange
    51 @see CLogServOpMaintenance
    52 
    53 @see CLogServOpViewSetup
    54 @see CLogServOpViewEventRemove
    55 @see CLogServOpViewClearDuplicates
    56 @see CLogServOpViewSetFlags
    57 @see CLogServOpViewWindowFetcher
    58 
    59 View objects.Every view class derives from CLogServViewBase.
    60 
    61 @see CLogServViewBase
    62 
    63 @see CLogServViewEvent
    64 @see CLogServViewRecent
    65 @see CLogServViewDuplicate
    66 
    67 The class also offers a factory method for views creation - NewViewL().
    68 All created objects accept a reference to the MLogServOperationManager object and add themselves to the
    69 operations queue.
    70 
    71 @see MLogServOperationManager
    72 
    73 @internalComponent
    74 */
    75 class LogServFactory
    76 {
    77 public:
    78 	static CLogServOperationBase* NewOperationL(const TLogClientServerData& aCliServData,
    79 												MLogServTaskInterface& aTaskInterface,
    80 												MLogServOperationManager& aOperationManager,
    81 												const RMessage2& aMessage,
    82 												CLogPackage& aLogPackage,
    83 												TLogServSessionId aSessionId
    84 												);
    85 
    86 	static CLogServOperationBase* NewViewOperationL(const TLogClientServerData& aCliServData,
    87 												MLogServTaskInterface& aTaskInterface,
    88 												MLogServOperationManager& aOperationManager,
    89 												const RMessage2& aMessage,
    90 												CLogPackage& aLogPackage,
    91 												TLogServSessionId aSessionId,
    92 												CLogServViewBase& aView
    93 												);
    94 
    95 
    96 	static CLogServViewBase* NewViewL(TLogViewType aType,
    97 									  TLogViewId aId,
    98 									  MLogServDatabaseTransactionInterface& aDatabase,
    99 									  MLogServBackupInterface& aBackupInterface,
   100 									  CLogPackage& aPackage,
   101 									  const RMessage2& aMessage
   102 									  );
   103 };
   104 
   105 #endif
   106