btobexprofiles/obexserviceman/utils/inc/obexutilsentryhandler.h
author hgs
Fri, 28 May 2010 17:03:06 +0300
changeset 32 19bd632b5100
child 47 9e2a905b887f
permissions -rw-r--r--
201021
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
32
hgs
parents:
diff changeset
     1
/*
hgs
parents:
diff changeset
     2
* Copyright (c) 2002 Nokia Corporation and/or its subsidiary(-ies).
hgs
parents:
diff changeset
     3
* All rights reserved.
hgs
parents:
diff changeset
     4
* This component and the accompanying materials are made available
hgs
parents:
diff changeset
     5
* under the terms of "Eclipse Public License v1.0"
hgs
parents:
diff changeset
     6
* which accompanies this distribution, and is available
hgs
parents:
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
hgs
parents:
diff changeset
     8
*
hgs
parents:
diff changeset
     9
* Initial Contributors:
hgs
parents:
diff changeset
    10
* Nokia Corporation - initial contribution.
hgs
parents:
diff changeset
    11
*
hgs
parents:
diff changeset
    12
* Contributors:
hgs
parents:
diff changeset
    13
*
hgs
parents:
diff changeset
    14
* Description:  Definition of the global progress dialog class
hgs
parents:
diff changeset
    15
*
hgs
parents:
diff changeset
    16
*/
hgs
parents:
diff changeset
    17
hgs
parents:
diff changeset
    18
hgs
parents:
diff changeset
    19
hgs
parents:
diff changeset
    20
#ifndef OBEXUTILSENTRYHANDLER_H_
hgs
parents:
diff changeset
    21
#define OBEXUTILSENTRYHANDLER_H_
hgs
parents:
diff changeset
    22
hgs
parents:
diff changeset
    23
#include <e32base.h>
hgs
parents:
diff changeset
    24
#include <cmsvattachment.h>
hgs
parents:
diff changeset
    25
hgs
parents:
diff changeset
    26
/**
hgs
parents:
diff changeset
    27
 *  Obexutils link hander
hgs
parents:
diff changeset
    28
 *  Maintain the links in inbox.
hgs
parents:
diff changeset
    29
 * 
hgs
parents:
diff changeset
    30
 *  @since S60 v5.0
hgs
parents:
diff changeset
    31
 */
hgs
parents:
diff changeset
    32
hgs
parents:
diff changeset
    33
NONSHARABLE_CLASS( CObexutilsEntryhandler ) : public CActive
hgs
parents:
diff changeset
    34
{
hgs
parents:
diff changeset
    35
hgs
parents:
diff changeset
    36
public:
hgs
parents:
diff changeset
    37
hgs
parents:
diff changeset
    38
    static CObexutilsEntryhandler* NewL();
hgs
parents:
diff changeset
    39
    static CObexutilsEntryhandler* NewLC();    
hgs
parents:
diff changeset
    40
hgs
parents:
diff changeset
    41
    /**
hgs
parents:
diff changeset
    42
     * Destructor.
hgs
parents:
diff changeset
    43
     */
hgs
parents:
diff changeset
    44
    virtual ~CObexutilsEntryhandler();
hgs
parents:
diff changeset
    45
hgs
parents:
diff changeset
    46
    /**
hgs
parents:
diff changeset
    47
     * Add an linked attachment to entry 
hgs
parents:
diff changeset
    48
     *
hgs
parents:
diff changeset
    49
     * @since S60 v5.0
hgs
parents:
diff changeset
    50
     * @param aFilePath The absolute file path of the linked attachment file. 
hgs
parents:
diff changeset
    51
     * @param anAttachInfo The attachment info associated with the file.
hgs
parents:
diff changeset
    52
     * @param aStore An interface over the message store that is associated with a message entry.
hgs
parents:
diff changeset
    53
     * @return error code
hgs
parents:
diff changeset
    54
     */
hgs
parents:
diff changeset
    55
    TInt AddEntryAttachment(const TDesC &aFilePath, CMsvAttachment* anAttachInfo, CMsvStore* aStore );
hgs
parents:
diff changeset
    56
    
hgs
parents:
diff changeset
    57
    /**
hgs
parents:
diff changeset
    58
     * Update an entry attachment
hgs
parents:
diff changeset
    59
     * @since S60 v5.0
hgs
parents:
diff changeset
    60
     * @param aFilePath the absolute file path of the linked attachment file.
hgs
parents:
diff changeset
    61
     * @param anAttachInfo the attachment info associated with the file.
hgs
parents:
diff changeset
    62
     * @param aStore An interface ove the message store that is associated with a message entry.
hgs
parents:
diff changeset
    63
     * @return error code
hgs
parents:
diff changeset
    64
     */
hgs
parents:
diff changeset
    65
    TInt UpdateEntryAttachment(TFileName& aFileName,
hgs
parents:
diff changeset
    66
                              CMsvAttachment* anOldAttachInfo,
hgs
parents:
diff changeset
    67
                              CMsvAttachment* aNewAttachInfo,
hgs
parents:
diff changeset
    68
                              CMsvStore* aStore );
hgs
parents:
diff changeset
    69
    
hgs
parents:
diff changeset
    70
    // from base class CActive
hgs
parents:
diff changeset
    71
         
hgs
parents:
diff changeset
    72
    /**
hgs
parents:
diff changeset
    73
     * From CActive.
hgs
parents:
diff changeset
    74
     * RunL
hgs
parents:
diff changeset
    75
     *
hgs
parents:
diff changeset
    76
     * @since S60 v5.0
hgs
parents:
diff changeset
    77
     */
hgs
parents:
diff changeset
    78
    void RunL();
hgs
parents:
diff changeset
    79
         
hgs
parents:
diff changeset
    80
    /**
hgs
parents:
diff changeset
    81
     * From CActive.
hgs
parents:
diff changeset
    82
     * DoCancel
hgs
parents:
diff changeset
    83
     *
hgs
parents:
diff changeset
    84
     * @since S60 v5.0
hgs
parents:
diff changeset
    85
     */
hgs
parents:
diff changeset
    86
    void DoCancel();
hgs
parents:
diff changeset
    87
    
hgs
parents:
diff changeset
    88
    
hgs
parents:
diff changeset
    89
private:
hgs
parents:
diff changeset
    90
    /**
hgs
parents:
diff changeset
    91
     * Default C++ constructor.
hgs
parents:
diff changeset
    92
     */ 
hgs
parents:
diff changeset
    93
    CObexutilsEntryhandler();
hgs
parents:
diff changeset
    94
    
hgs
parents:
diff changeset
    95
    /**
hgs
parents:
diff changeset
    96
     * Symbian two-phase constructor.
hgs
parents:
diff changeset
    97
     */ 
hgs
parents:
diff changeset
    98
    void ConstructL();
hgs
parents:
diff changeset
    99
hgs
parents:
diff changeset
   100
    /**
hgs
parents:
diff changeset
   101
     * Add link attachment 
hgs
parents:
diff changeset
   102
     * 
hgs
parents:
diff changeset
   103
     * @since S60 v5.0
hgs
parents:
diff changeset
   104
     */
hgs
parents:
diff changeset
   105
    void DoAddEntryAttachmentL(const TDesC &aFilePath, CMsvAttachment* anAttachInfo, CMsvStore* aStore);
hgs
parents:
diff changeset
   106
    
hgs
parents:
diff changeset
   107
   
hgs
parents:
diff changeset
   108
    /**
hgs
parents:
diff changeset
   109
     * Update link attachment 
hgs
parents:
diff changeset
   110
     * 
hgs
parents:
diff changeset
   111
     * @since S60 v5.0
hgs
parents:
diff changeset
   112
     */
hgs
parents:
diff changeset
   113
    void DoUpdateEntryAttachmentL(TFileName& aFileName,
hgs
parents:
diff changeset
   114
                                 CMsvAttachment* anOldAttachInfo,
hgs
parents:
diff changeset
   115
                                 CMsvAttachment* aNewAttachInfo,
hgs
parents:
diff changeset
   116
                                 CMsvStore* aStore);
hgs
parents:
diff changeset
   117
    
hgs
parents:
diff changeset
   118
private: // member data
hgs
parents:
diff changeset
   119
hgs
parents:
diff changeset
   120
     
hgs
parents:
diff changeset
   121
    /**
hgs
parents:
diff changeset
   122
     * Sync waiter object 
hgs
parents:
diff changeset
   123
     */
hgs
parents:
diff changeset
   124
    CActiveSchedulerWait    iSyncWaiter;
hgs
parents:
diff changeset
   125
hgs
parents:
diff changeset
   126
hgs
parents:
diff changeset
   127
};
hgs
parents:
diff changeset
   128
hgs
parents:
diff changeset
   129
hgs
parents:
diff changeset
   130
#endif /*OBEXUTILSENTRYHANDLER_H_*/