qtinternetradio/irdb/inc/urlinfowrapper.h
author Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
Fri, 17 Sep 2010 08:27:59 +0300
changeset 16 5723da102db1
child 17 38bbf2dcd608
permissions -rw-r--r--
Revision: 201035 Kit: 201037

/*
* 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.
*
* Description: 
*
*/

#ifndef _URLINFO_WRAPPER_H_
#define _URLINFO_WRAPPER_H_

#include "irdbexport.h"
#include "irdbwrapper.h"

class IRDB_DLL_EXPORT urlInfoWrapper: public IRDBWrapper
{
public:
    urlInfoWrapper();
    ~urlInfoWrapper();

public:
    /*
    * RowData:   [direction: in] column value for channelUrl and  bitrate;
    *                            first oprand in QMap is channelUrl,
    *                            sencod oprand in QMap is bitrate;
    * channelId: [direction: in] channelid for update row;
    * return true if operation success; 
    */     
    bool resetUrlInfo(const columnUrlInfoInsertMap* const RowData,
                      const uint& channelId);    

    QList<QVariant*>* getUrlInfo(const columnMap* const condAND = NULL,  
                                 const columnMap* const condOR = NULL);

private:
    /*
    * It is called by IRDB instance;
    * IRDB instance delivers rows set to IRDBWrapper via this function;
    * the rows set is storaged in m_IRDataSet;
    */
    bool getIRTableCB(QSqlQuery& aIRDataSet,
                      QList<QVariant*>* pDataSet);

    /*
    * create sql insert string according to the input RowData;
    * RowData:       [direction:in] refer to line 29;
    * channelId:     [direction:in] it is row channelId;
    * insSqlStrList: [direction:out] return the sql QStringList;  
    */    
    void combineInsertStr(const columnUrlInfoInsertMap* const RowData,
                          const uint& channelId,	    
                          QStringList& insSqlStrList);    
};

#endif