activityfw/activitydatabase/inc/hsactivitydbclientinterface.h
author Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
Tue, 06 Jul 2010 14:37:10 +0300
changeset 104 9b022b1f357c
parent 103 b99b84bcd2d1
permissions -rw-r--r--
Revision: 201025 Kit: 2010127

/*
* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
* All rights reserved.
* This component and the accompanying materials are made available
* under the terms of "Eclipse Public License v1.0"
* which accompanies this distribution, and is available
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
*
* Initial Contributors:
* Nokia Corporation - initial contribution.
*
* Contributors:
*
* Description:
*
*/
#ifndef HSACTIVITYDBCLIENTINTERFACE_H
#define HSACTIVITYDBCLIENTINTERFACE_H
#include <qvariant.h>
#include <activitycmd.h>
/**
 * Enumerate supported functions
 */

const char ActivityApplicationKeyword [] = ":ApplicationId";
const char ActivityActivityKeyword [] = ":ActivityName";
const char ActivityParametersKeyword [] = ":ActivityParams";
const char ActivityPersistence [] = ":ActivityPersistence";
const char ActivityVisibility [] = ":ActivityVisibility";
const char ActivityScreenshotKeyword [] = "screenshot";
const char ActivityDataKeyword [] = ":ActivityData";
const char ActivityApplicationName[] = ":ApplicationName";

class HsActivityDbClientInterface
{
public:

    /**
     * Function save provided avtivity in activity storage
     * @param activity - activity to store
     * @return 0 on succees, error code otherwise
     */
    virtual int addActivity(const QVariantHash &privateData,
                            const QVariantHash &publicData) =0;

    /**
     * Function update exiting activity
     * @param activity - filtering rules
     * @return 0 on succees, error code otherwise
     */
    virtual int updateActivity(const QVariantHash &privateData,
                               const QVariantHash &publicData) =0;

    /**
     * Function delete activity
     * @param activity - filtering rules
     * @return 0 on succees, error code otherwise
     */
    virtual int removeActivity(const QVariantHash &activity) =0;

    /**
     * Function delete activity for application
     * @param activity - filtering rules
     * @return 0 on succees, error code otherwise
     */
    virtual int removeApplicationActivities(const QVariantHash &activity) =0;

    /**
     * Function return list of all activity
     * @param result - destination list
     * @return 0 on succees, error code otherwise
     */
    virtual int activities(QList<QVariantHash>& result) =0;

    /**
     * Function return list of all activity
     * @param result - destination list,
     * @param activity - filtering rules
     * @return 0 on succees, error code otherwise
     */
    virtual int applicationActivities(QList<QVariantHash>& result,
                                      const QVariantHash &activity) =0;

    /**
     * Function returns data for activity
     * @param result - activity data
     * @param activity - filtering rules
     * @return 0 on succees, error code otherwise
     */
    virtual int activityData(QVariant &result, const QVariantHash &activity) = 0;
                                      
    /**
     * Function subscribe to activity
     * @param  activity - filtering rules
     * @return 0 on succees, error code otherwise
     */
    virtual int waitActivity(const QVariantHash &activity)=0;

    /**
     * Function launch application activity
     * @param activity - filtering rules
     * @return 0 on succees, error code otherwise
     */
    virtual int launchActivity(const QVariantHash &activity)=0;
};
#endif //HSACTIVITYDBCLIENTINTERFACE_H