harvester/client/inc/harvesterclientao.h
changeset 52 40db28bb26b8
parent 45 a93990e5815e
equal deleted inserted replaced
45:a93990e5815e 52:40db28bb26b8
    23 #include <e32base.h>
    23 #include <e32base.h>
    24 #include <badesca.h>
    24 #include <badesca.h>
    25 
    25 
    26 #include "harvesterclient.h"
    26 #include "harvesterclient.h"
    27 
    27 
       
    28 class RHarvesterClient;
       
    29 class MHarvestObserver;
       
    30 
    28 NONSHARABLE_CLASS( CHarvesterClientAO ) : public CActive
    31 NONSHARABLE_CLASS( CHarvesterClientAO ) : public CActive
    29     {
    32     {
    30     public:
    33     public:
    31         /**
    34         /**
    32         * Construction.
    35         * Construction.
    33         */
    36         */
    34         static CHarvesterClientAO* NewL( RHarvesterClient& aHarvesterClient,
    37         static CHarvesterClientAO* NewL( RHarvesterClient &aHarvesterClient );
    35                                                             CHarvesterNotificationQueue* aNotificationQueue );
       
    36 
    38 
    37         /**
    39         /**
    38         * Destruction.
    40         * Destruction.
    39         */
    41         */
    40         virtual ~CHarvesterClientAO();
    42         virtual ~CHarvesterClientAO();
    42         /**
    44         /**
    43         * Method for adding an observer.
    45         * Method for adding an observer.
    44         * @param aObserver  Pointer to observer object.
    46         * @param aObserver  Pointer to observer object.
    45         */
    47         */
    46         void SetObserver( MHarvestObserver* aObserver );
    48         void SetObserver( MHarvestObserver* aObserver );
       
    49 
       
    50         /**
       
    51         * Method for removing an observer.
       
    52         * @param aObserver  Pointer to observer object.
       
    53         */		
       
    54         void RemoveObserver( MHarvestObserver* aObserver );
       
    55         
       
    56         void NotificateObserver( TInt aErr );
    47         
    57         
    48         /**
    58         /**
    49          * Set AO to active state. RunL is launched from harvesting complete
    59          * Set AO to active state. RunL is launched from harvesting complete
    50          * request which are subscribed from server.
    60          * request which are subscribed from server.
    51          */ 
    61          */ 
    52         void Active( TDesC& aUri );
    62         void Active();
    53         
    63         
    54         TBool RequestComplete();
    64         void CancelRequest();
    55         
    65         
    56     protected:
    66     protected:
    57 		
    67 		
    58         /**
    68         /**
    59          * RunL.
    69          * RunL.
    78         /**
    88         /**
    79         * Private constructor
    89         * Private constructor
    80         * 
    90         * 
    81         * @param aHarvesterClient Reference to session class
    91         * @param aHarvesterClient Reference to session class
    82         */	
    92         */	
    83         CHarvesterClientAO( RHarvesterClient& aHarvesterClient,
    93         CHarvesterClientAO( RHarvesterClient &aHarvesterClient );
    84                                            CHarvesterNotificationQueue* aNotificationQueue );
       
    85 
    94 
    86         /**
    95         /**
    87         * 2nd phase construction
    96         * 2nd phase construction
    88         */	
    97         */	
    89         void ConstructL();        
    98         void ConstructL();        
    95         */ 
   104         */ 
    96         MHarvestObserver* iObserver;
   105         MHarvestObserver* iObserver;
    97 
   106 
    98         /**
   107         /**
    99         * Reference to Harvester client session
   108         * Reference to Harvester client session
   100         */      
   109         */   	
   101         RHarvesterClient& iHarvesterClient;
   110         RHarvesterClient& iHarvesterClient;
   102         
       
   103         /**
       
   104         * Pointer to harvest notification request queue, not owned
       
   105         */   	
       
   106         CHarvesterNotificationQueue* iNotificationQueue;
       
   107 
   111 
   108         /**
   112         /**
   109          * Harvester server assigned file name
   113          * Harvester server assigned file name
   110          */ 
   114          */ 
   111         HBufC* iURI;
   115         TFileName iURI;
   112         
   116         
   113         TBool iRequestComplete;
   117         TBool iCancelled;
   114     };
   118     };
   115 
   119 
   116 #endif // __CHARVESTERCLIENTAO_H__
   120 #endif // __CHARVESTERCLIENTAO_H__