activityfw/storage/client/src/afstorageclient.cpp
author hgs
Mon, 20 Sep 2010 10:22:22 +0300
changeset 119 50e220be30d1
parent 116 305818acdca4
permissions -rw-r--r--
201037
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
99
hgs
parents:
diff changeset
     1
/*
hgs
parents:
diff changeset
     2
* Copyright (c) 2009 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:
hgs
parents:
diff changeset
    15
*
hgs
parents:
diff changeset
    16
*/
hgs
parents:
diff changeset
    17
#include "afstorageclient.h"
107
hgs
parents: 106
diff changeset
    18
hgs
parents: 106
diff changeset
    19
#include <e32debug.h>
hgs
parents: 106
diff changeset
    20
99
hgs
parents:
diff changeset
    21
#include "afstorageclient_p.h"
106
hgs
parents: 99
diff changeset
    22
#include "afcmd.h"
hgs
parents: 99
diff changeset
    23
99
hgs
parents:
diff changeset
    24
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
    25
/**
107
hgs
parents: 106
diff changeset
    26
 * Two-phase constructor. Create and initialize instance
hgs
parents: 106
diff changeset
    27
 * @return entry instance
99
hgs
parents:
diff changeset
    28
 */
107
hgs
parents: 106
diff changeset
    29
EXPORT_C CAfStorageClient *CAfStorageClient::NewL(MAfAsyncRequestObserver &observer)
99
hgs
parents:
diff changeset
    30
{
107
hgs
parents: 106
diff changeset
    31
    CAfStorageClient *self = CAfStorageClient::NewLC(observer);
hgs
parents: 106
diff changeset
    32
    CleanupStack::Pop(self);
hgs
parents: 106
diff changeset
    33
    return self;
99
hgs
parents:
diff changeset
    34
}
hgs
parents:
diff changeset
    35
hgs
parents:
diff changeset
    36
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
    37
/**
107
hgs
parents: 106
diff changeset
    38
 * Two-phase constructor. Create, initialize and push instance into cleanup stack
hgs
parents: 106
diff changeset
    39
 * @return entry instance
hgs
parents: 106
diff changeset
    40
 */
hgs
parents: 106
diff changeset
    41
EXPORT_C CAfStorageClient *CAfStorageClient::NewLC(MAfAsyncRequestObserver &observer)
hgs
parents: 106
diff changeset
    42
{
hgs
parents: 106
diff changeset
    43
    CAfStorageClient *self = new (ELeave) CAfStorageClient();
hgs
parents: 106
diff changeset
    44
    CleanupStack::PushL(self);
hgs
parents: 106
diff changeset
    45
    self->ConstructL(observer);
hgs
parents: 106
diff changeset
    46
    return self;
hgs
parents: 106
diff changeset
    47
}    
hgs
parents: 106
diff changeset
    48
hgs
parents: 106
diff changeset
    49
// -----------------------------------------------------------------------------
hgs
parents: 106
diff changeset
    50
/**
99
hgs
parents:
diff changeset
    51
 * Destructor
hgs
parents:
diff changeset
    52
 */
107
hgs
parents: 106
diff changeset
    53
EXPORT_C CAfStorageClient::~CAfStorageClient()
99
hgs
parents:
diff changeset
    54
{
hgs
parents:
diff changeset
    55
    delete d_ptr;
hgs
parents:
diff changeset
    56
}
107
hgs
parents: 106
diff changeset
    57
    
99
hgs
parents:
diff changeset
    58
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
    59
/**
107
hgs
parents: 106
diff changeset
    60
 * Constructor
99
hgs
parents:
diff changeset
    61
 */
107
hgs
parents: 106
diff changeset
    62
CAfStorageClient::CAfStorageClient()
99
hgs
parents:
diff changeset
    63
{
hgs
parents:
diff changeset
    64
}
hgs
parents:
diff changeset
    65
hgs
parents:
diff changeset
    66
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
    67
/**
107
hgs
parents: 106
diff changeset
    68
 * 2nd phase of construction
99
hgs
parents:
diff changeset
    69
 */
107
hgs
parents: 106
diff changeset
    70
void CAfStorageClient::ConstructL(MAfAsyncRequestObserver &observer)
99
hgs
parents:
diff changeset
    71
{
107
hgs
parents: 106
diff changeset
    72
    d_ptr = CAfStorageClientPrivate::NewL(observer);
99
hgs
parents:
diff changeset
    73
}
hgs
parents:
diff changeset
    74
hgs
parents:
diff changeset
    75
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
    76
/**
107
hgs
parents: 106
diff changeset
    77
 * Function save an activity (add new one or update existing one)
hgs
parents: 106
diff changeset
    78
 * @param entry - activity entry data structure
hgs
parents: 106
diff changeset
    79
 * @param imageHandle - handle for activity thumbnail
hgs
parents: 106
diff changeset
    80
 * @return 0 on success, error code otherwise
hgs
parents: 106
diff changeset
    81
 */
hgs
parents: 106
diff changeset
    82
EXPORT_C int CAfStorageClient::saveActivity(const CAfEntry &entry, TInt imageHandle)
hgs
parents: 106
diff changeset
    83
{    
hgs
parents: 106
diff changeset
    84
    return d_ptr->saveActivity(entry, imageHandle);
99
hgs
parents:
diff changeset
    85
}
hgs
parents:
diff changeset
    86
hgs
parents:
diff changeset
    87
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
    88
/**
hgs
parents:
diff changeset
    89
 * Function remove existing activity
hgs
parents:
diff changeset
    90
 * @param entry - activity entry template
hgs
parents:
diff changeset
    91
  * @return 0 on success, error code otherwise
hgs
parents:
diff changeset
    92
 */
107
hgs
parents: 106
diff changeset
    93
EXPORT_C int CAfStorageClient::removeActivity(const CAfEntry &entry)
99
hgs
parents:
diff changeset
    94
{
hgs
parents:
diff changeset
    95
    return d_ptr->removeActivity(entry);
hgs
parents:
diff changeset
    96
}
hgs
parents:
diff changeset
    97
hgs
parents:
diff changeset
    98
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
    99
/**
hgs
parents:
diff changeset
   100
 * Function remove existing activities for application
hgs
parents:
diff changeset
   101
 * @param entry - activity entry template
hgs
parents:
diff changeset
   102
  * @return 0 on success, error code otherwise
hgs
parents:
diff changeset
   103
 */
107
hgs
parents: 106
diff changeset
   104
EXPORT_C int CAfStorageClient::removeApplicationActivities(const CAfEntry &entry)
99
hgs
parents:
diff changeset
   105
{
hgs
parents:
diff changeset
   106
    return d_ptr->removeApplicationActivities(entry);
hgs
parents:
diff changeset
   107
}
hgs
parents:
diff changeset
   108
hgs
parents:
diff changeset
   109
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   110
/**
hgs
parents:
diff changeset
   111
 * Function retreive public data for all activities
hgs
parents:
diff changeset
   112
 * @param dst - list of results
hgs
parents:
diff changeset
   113
 * @return 0 on success, error code otherwise 
hgs
parents:
diff changeset
   114
 */
116
hgs
parents: 107
diff changeset
   115
EXPORT_C int CAfStorageClient::activities(RPointerArray<CAfEntry> &dst, TInt limit)
99
hgs
parents:
diff changeset
   116
{
116
hgs
parents: 107
diff changeset
   117
    return d_ptr->activities(dst, limit);
99
hgs
parents:
diff changeset
   118
}
hgs
parents:
diff changeset
   119
hgs
parents:
diff changeset
   120
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   121
/**
hgs
parents:
diff changeset
   122
 * Function retreive public data for all application activities
hgs
parents:
diff changeset
   123
 * @param dst - list of results
hgs
parents:
diff changeset
   124
 * @param entry - activity template
hgs
parents:
diff changeset
   125
 * @return 0 on success, error code otherwise 
hgs
parents:
diff changeset
   126
 */
107
hgs
parents: 106
diff changeset
   127
EXPORT_C int CAfStorageClient::applicationActivities(RPointerArray<CAfEntry> &dst, const CAfEntry &entry)
99
hgs
parents:
diff changeset
   128
{
hgs
parents:
diff changeset
   129
    return d_ptr->applicationActivities(dst, entry);
hgs
parents:
diff changeset
   130
}
hgs
parents:
diff changeset
   131
hgs
parents:
diff changeset
   132
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   133
/**
hgs
parents:
diff changeset
   134
 * Function retreive all data for requested activity
hgs
parents:
diff changeset
   135
 * @param dst - activity entry
hgs
parents:
diff changeset
   136
 * @param entry - activity template
hgs
parents:
diff changeset
   137
 * @return 0 on success, error code otherwise 
hgs
parents:
diff changeset
   138
 */
107
hgs
parents: 106
diff changeset
   139
EXPORT_C int CAfStorageClient::activityData(CAfEntry *&dst, const CAfEntry &entry)
99
hgs
parents:
diff changeset
   140
{
hgs
parents:
diff changeset
   141
    return d_ptr->activityData(dst, entry);
hgs
parents:
diff changeset
   142
}
hgs
parents:
diff changeset
   143
hgs
parents:
diff changeset
   144
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   145
/**
hgs
parents:
diff changeset
   146
 * Function subscribe application for notyfication about requested activity changes
hgs
parents:
diff changeset
   147
 * @return 0 on success, error code otherwise 
hgs
parents:
diff changeset
   148
 */
107
hgs
parents: 106
diff changeset
   149
EXPORT_C int CAfStorageClient::waitActivity()
99
hgs
parents:
diff changeset
   150
{
hgs
parents:
diff changeset
   151
    return d_ptr->waitActivity();
hgs
parents:
diff changeset
   152
}
hgs
parents:
diff changeset
   153
hgs
parents:
diff changeset
   154
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   155
/**
hgs
parents:
diff changeset
   156
 * Function request activity change
hgs
parents:
diff changeset
   157
 * @param entry - activity template 
hgs
parents:
diff changeset
   158
 * @return 0 on success, error code otherwise 
hgs
parents:
diff changeset
   159
 */
107
hgs
parents: 106
diff changeset
   160
EXPORT_C int CAfStorageClient::launchActivity(const CAfEntry &entry)
99
hgs
parents:
diff changeset
   161
{
hgs
parents:
diff changeset
   162
    return d_ptr->launchActivity(entry);
hgs
parents:
diff changeset
   163
}
hgs
parents:
diff changeset
   164
hgs
parents:
diff changeset
   165
// -----------------------------------------------------------------------------
119
hgs
parents: 116
diff changeset
   166
EXPORT_C int CAfStorageClient::getThumbnail(const TDesC &imagePath, void *userData)
99
hgs
parents:
diff changeset
   167
{
119
hgs
parents: 116
diff changeset
   168
    return d_ptr->getThumbnail(imagePath, userData);
99
hgs
parents:
diff changeset
   169
}
hgs
parents:
diff changeset
   170
hgs
parents:
diff changeset
   171
// -----------------------------------------------------------------------------
hgs
parents:
diff changeset
   172
/**
hgs
parents:
diff changeset
   173
 * Function subscribe launcher for data model changes
hgs
parents:
diff changeset
   174
 * @return 0 on success, error code otherwise 
hgs
parents:
diff changeset
   175
 */
107
hgs
parents: 106
diff changeset
   176
EXPORT_C int CAfStorageClient::notifyDataChange()
99
hgs
parents:
diff changeset
   177
{
107
hgs
parents: 106
diff changeset
   178
    return d_ptr->notifyDataChange();
99
hgs
parents:
diff changeset
   179
}