smf/smfservermodule/smfclient/smfmusic_p.cpp
author cgandhi
Thu, 05 Aug 2010 16:48:48 +0530
changeset 18 013a02bf2bb0
child 25 a180113055cb
permissions -rw-r--r--
pushing changes for common libs and trace messages
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
18
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
     1
/**
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
     2
 * Copyright (c) 2010 Sasken Communication Technologies Ltd.
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
     3
 * All rights reserved.
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
     4
 * This component and the accompanying materials are made available
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
     5
 * under the terms of the "Eclipse Public License v1.0" 
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
     6
 * which accompanies  this distribution, and is available
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
     7
 * at the URL "http://www.eclipse.org/legal/epl-v10.html"
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
     8
 *
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
     9
 * Initial Contributors:
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    10
 * Chandradeep Gandhi, Sasken Communication Technologies Ltd - Initial contribution
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    11
 *
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    12
 * Contributors:
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    13
 * Manasij Roy, Nalina Hariharan
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    14
 * 
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    15
 * Description:
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    16
 * Private implementation of music related services
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    17
 * 
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    18
 */
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    19
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    20
#include <qdebug.h>
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    21
#include <smfmusicrating.h>
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    22
#include <smfcomment.h>
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    23
#include <smfmusicfingerprint.h>
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    24
#include <smfcontact.h>
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    25
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    26
#include "smfmusic.h"
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    27
#include "smfmusic_p.h"
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    28
#ifdef Q_OS_SYMBIAN
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    29
	#include "smfclientsymbian.h"
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    30
#else
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    31
	#include "smfclientqt.h"
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    32
#endif
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    33
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    34
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    35
//SmfMusicServicePrivate start
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    36
SmfMusicServicePrivate::SmfMusicServicePrivate(SmfMusicService* aMusicService)
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    37
		:m_musicService(aMusicService)
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    38
	{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    39
#ifdef Q_OS_SYMBIAN
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    40
	//private impl for symbian
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    41
	m_SmfClientPrivate = CSmfClientSymbian::NewL(this);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    42
#else
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    43
	//TODO:- Use private impl for other platforms or else Qt impl
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    44
#endif
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    45
	}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    46
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    47
SmfMusicServicePrivate::~SmfMusicServicePrivate()
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    48
	{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    49
	if(m_SmfClientPrivate)
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    50
		{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    51
		delete m_SmfClientPrivate;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    52
		m_SmfClientPrivate = NULL;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    53
		}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    54
	}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    55
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    56
void SmfMusicServicePrivate::userinfo()
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    57
	{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    58
	//We need to pass Opcode and SmfProvider serialized into bytearray 
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    59
	SmfProvider* m_baseProvider = m_musicService->getProvider();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    60
	m_serializedDataToServer.clear();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    61
	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    62
	write<<*m_baseProvider;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    63
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    64
	QString intfName(musicServiceInterface);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    65
	int maxalloc = SmfMusicProfileMaxSize;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    66
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    67
	//call private impl's send method
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    68
	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName, 
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    69
			SmfMusicGetUserInfo, maxalloc);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    70
	}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    71
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    72
void SmfMusicServicePrivate::searchUser(SmfLocation venue, int pageNum, int perPage)
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    73
	{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    74
	//We need to pass Opcode and SmfProvider serialized into bytearray 
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    75
	SmfProvider* m_baseProvider = m_musicService->getProvider();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    76
	m_serializedDataToServer.clear();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    77
	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    78
	write<<*m_baseProvider;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    79
	m_argFlag = 1;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    80
	write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    81
	write<<venue;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    82
	write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    83
	write<<pageNum;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    84
	write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    85
	write<<perPage;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    86
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    87
	QString intfName(musicServiceInterface);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    88
	int maxalloc = SmfMusicProfileMaxSize*perPage;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    89
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    90
	//call private impl's send method
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    91
	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    92
	SmfMusicSearchUser, maxalloc);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    93
	}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    94
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    95
void SmfMusicServicePrivate::customRequest ( const int& operationId, QByteArray* customData )
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    96
	{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    97
	//We need to pass Opcode and SmfProvider serialized into bytearray 
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    98
	SmfProvider* m_baseProvider = m_musicService->getProvider();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
    99
	m_serializedDataToServer.clear();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   100
	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   101
	write<<*m_baseProvider;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   102
	m_argFlag = 1;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   103
	write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   104
	write<<operationId;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   105
	if(customData)
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   106
		{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   107
		write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   108
		write<<*customData;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   109
		}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   110
	else
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   111
		{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   112
		m_argFlag = 0;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   113
		write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   114
		}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   115
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   116
	QString intfName(musicServiceInterface);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   117
	//ToDo:- How much size to allocate for custo data? keeping SmfMusicProfileMaxSize for now
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   118
	int maxAlloc = SmfMusicProfileMaxSize;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   119
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   120
	//call private impl's send method
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   121
	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   122
			SmfMusicServiceCustomRequest, maxAlloc);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   123
	}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   124
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   125
void SmfMusicServicePrivate::postCurrentPlaying(SmfTrackInfo track) 
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   126
	{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   127
	//We need to pass Opcode and SmfProvider serialized into bytearray 
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   128
	SmfProvider* m_baseProvider = m_musicService->getProvider();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   129
	m_serializedDataToServer.clear();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   130
	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   131
	write<<*(m_baseProvider);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   132
	m_argFlag = 1;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   133
	write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   134
	write<<track;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   135
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   136
	QString intfName(musicServiceInterface);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   137
	//TODO:-revisit all the maxalloc
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   138
	int maxalloc = 1000;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   139
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   140
	//call private impl's send method
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   141
	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   142
			SmfMusicPostCurrentPlaying, maxalloc);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   143
	}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   144
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   145
void SmfMusicServicePrivate::postRating(SmfTrackInfo track, SmfMusicRating rate) 
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   146
	{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   147
	//We need to pass Opcode and SmfProvider serialized into bytearray 
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   148
	SmfProvider* m_baseProvider = m_musicService->getProvider();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   149
	m_serializedDataToServer.clear();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   150
	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   151
	write<<*(m_baseProvider);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   152
	m_argFlag = 1;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   153
	write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   154
	write<<track;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   155
	write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   156
	write<<rate;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   157
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   158
	QString intfName(musicServiceInterface);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   159
	//TODO:-revisit all the maxalloc
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   160
	int maxalloc = 1000;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   161
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   162
	//call private impl's send method
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   163
	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   164
	SmfMusicPostRating, maxalloc);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   165
	}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   166
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   167
void SmfMusicServicePrivate::postComments(SmfTrackInfo track, SmfComment comment) 
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   168
	{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   169
	//We need to pass Opcode and SmfProvider serialized into bytearray 
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   170
	SmfProvider* m_baseProvider = m_musicService->getProvider();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   171
	m_serializedDataToServer.clear();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   172
	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   173
	write<<*(m_baseProvider);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   174
	m_argFlag = 1;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   175
	write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   176
	write<<track;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   177
	write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   178
	write<<comment;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   179
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   180
	QString intfName(musicServiceInterface);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   181
	//TODO:-revisit all the maxalloc
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   182
	int maxalloc = 1000;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   183
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   184
	//call private impl's send method
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   185
	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   186
			SmfMusicPostComment, maxalloc);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   187
	}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   188
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   189
void SmfMusicServicePrivate::resultsAvailable(QByteArray result, SmfRequestTypeID opcode, SmfError error)
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   190
	{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   191
	//note:- "result" is serialized and we need to de-serialize it as per opcode
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   192
	//Order of serialization Error value followed by data
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   193
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   194
	QDataStream reader(&result,QIODevice::ReadOnly);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   195
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   196
	//Now de-serialize it based on opcode
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   197
	switch(opcode)
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   198
		{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   199
		case SmfMusicGetUserInfo:
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   200
			{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   201
			SmfMusicProfile* m_profile = new SmfMusicProfile;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   202
			reader>>*m_profile;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   203
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   204
			emit m_musicService->userInfoAvailable(m_profile,error);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   205
			break;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   206
			}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   207
				
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   208
		case SmfMusicSearchUser:
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   209
			{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   210
			SmfMusicProfileList* m_profileList = new SmfMusicProfileList;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   211
			reader>>*m_profileList;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   212
			
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   213
			//ToDo :- not incorporating paging now
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   214
			SmfResultPage page;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   215
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   216
			emit m_musicService->searchInfoAvailable(m_profileList, error, page);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   217
			break;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   218
			}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   219
			
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   220
		case SmfMusicPostCurrentPlaying:
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   221
		case SmfMusicPostRating:
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   222
		case SmfMusicPostComment:
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   223
			{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   224
			emit m_musicService->postfinished(error);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   225
			break;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   226
			}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   227
			
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   228
		case SmfMusicServiceCustomRequest:
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   229
   			{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   230
   			int operationId;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   231
   			QByteArray *data = new QByteArray;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   232
   			reader>>operationId;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   233
   			reader>>*data;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   234
   			qDebug()<<"operationId = "<<operationId;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   235
   			qDebug()<<"data size = "<<data->size();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   236
   			emit m_musicService->customDataAvailable(operationId, data);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   237
   			break;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   238
   			}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   239
   			
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   240
		default:
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   241
			User::Panic(_L("Music Service Private = "),opcode);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   242
		}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   243
	}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   244
//SmfMusicServicePrivate start
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   245
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   246
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   247
//SmfMusicSearchPrivate start
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   248
SmfMusicSearchPrivate::SmfMusicSearchPrivate(SmfMusicSearch *aMusicSearch)
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   249
		: m_musicSearch(aMusicSearch)
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   250
	{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   251
#ifdef Q_OS_SYMBIAN
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   252
	//private impl for symbian
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   253
	m_SmfClientPrivate = CSmfClientSymbian::NewL(this);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   254
#else
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   255
	//TODO:- Use private impl for other platforms or else Qt impl
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   256
#endif
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   257
	}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   258
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   259
SmfMusicSearchPrivate::~SmfMusicSearchPrivate()
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   260
	{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   261
	if(m_SmfClientPrivate)
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   262
		{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   263
		delete m_SmfClientPrivate;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   264
		m_SmfClientPrivate = NULL;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   265
		}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   266
	}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   267
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   268
void SmfMusicSearchPrivate::recommendations(SmfTrackInfo track, int pageNum, int perPage)
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   269
	{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   270
	//We need to pass Opcode and SmfProvider serialized into bytearray
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   271
	m_serializedDataToServer.clear();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   272
	SmfProvider* m_baseProvider = m_musicSearch->getProvider();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   273
	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   274
	write<<*m_baseProvider;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   275
	m_argFlag = 1;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   276
	write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   277
	write<<track;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   278
	write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   279
	write<<pageNum;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   280
	write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   281
	write<<perPage;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   282
		
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   283
	QString intfName(musicSearchInterface);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   284
	//TODO:-revisit all the maxalloc
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   285
	int maxalloc = 1000;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   286
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   287
	//call private impl's send method
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   288
	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   289
			SmfMusicGetRecommendations, maxalloc);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   290
	}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   291
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   292
void SmfMusicSearchPrivate::tracks(SmfTrackInfo track, int pageNum, int perPage)
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   293
	{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   294
	//We need to pass Opcode and SmfProvider serialized into bytearray 
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   295
	SmfProvider* m_baseProvider = m_musicSearch->getProvider();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   296
	m_serializedDataToServer.clear();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   297
	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   298
	write<<*m_baseProvider;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   299
	m_argFlag = 1;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   300
	write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   301
	write<<track;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   302
	write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   303
	write<<pageNum;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   304
	write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   305
	write<<perPage;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   306
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   307
	QString intfName(musicSearchInterface);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   308
	//TODO:-revisit all the maxalloc
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   309
	int maxalloc = 1000;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   310
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   311
	//call private impl's send method
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   312
	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   313
			SmfMusicGetTracks, maxalloc);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   314
	}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   315
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   316
void SmfMusicSearchPrivate::trackInfo(SmfMusicFingerPrint signature, int pageNum, int perPage)
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   317
	{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   318
	//We need to pass Opcode and SmfProvider serialized into bytearray 
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   319
	SmfProvider* m_baseProvider = m_musicSearch->getProvider();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   320
	m_serializedDataToServer.clear();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   321
	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   322
	write<<*m_baseProvider;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   323
	m_argFlag = 1;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   324
	write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   325
	write<<signature;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   326
	write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   327
	write<<pageNum;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   328
	write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   329
	write<<perPage;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   330
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   331
	QString intfName(musicSearchInterface);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   332
	//TODO:-revisit all the maxalloc
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   333
	int maxalloc = 1000;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   334
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   335
	//call private impl's send method
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   336
	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName, 
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   337
			SmfMusicGetTrackInfo, maxalloc);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   338
	}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   339
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   340
void SmfMusicSearchPrivate::stores(SmfTrackInfo track, int pageNum, int perPage)
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   341
	{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   342
	//We need to pass Opcode and SmfProvider serialized into bytearray 
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   343
	SmfProvider* m_baseProvider = m_musicSearch->getProvider();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   344
	m_serializedDataToServer.clear();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   345
	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   346
	write<<*(m_baseProvider);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   347
	m_argFlag = 1;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   348
	write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   349
	write<<track;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   350
	write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   351
	write<<pageNum;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   352
	write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   353
	write<<perPage;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   354
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   355
	QString intfName(musicSearchInterface);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   356
	/** @TODO:-revisit all the maxalloc */
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   357
	int maxalloc = 1000;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   358
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   359
	//call private impl's send method
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   360
	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   361
			SmfMusicGetStores, maxalloc);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   362
	}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   363
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   364
void SmfMusicSearchPrivate::customRequest ( const int& operationId, QByteArray* customData )
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   365
	{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   366
	//We need to pass Opcode and SmfProvider serialized into bytearray 
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   367
	SmfProvider* m_baseProvider = m_musicSearch->getProvider();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   368
	m_serializedDataToServer.clear();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   369
	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   370
	write<<*m_baseProvider;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   371
	m_argFlag = 1;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   372
	write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   373
	write<<operationId;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   374
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   375
	if(customData)
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   376
		{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   377
		write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   378
		write<<*customData;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   379
		}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   380
	else
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   381
		{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   382
		m_argFlag = 0;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   383
		write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   384
		}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   385
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   386
	QString intfName(musicSearchInterface);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   387
	/** @TODO:-revisit all the maxalloc */
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   388
	int maxalloc = 1000;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   389
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   390
	//call private impl's send method
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   391
	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   392
			SmfMusicSearchCustomRequest, maxalloc);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   393
	}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   394
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   395
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   396
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   397
void SmfMusicSearchPrivate::resultsAvailable(QByteArray result, SmfRequestTypeID opcode, SmfError error)
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   398
	{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   399
	//note:- "result" is serialized and we need to de-serialize it as per opcode
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   400
	//Order of serialization Error value followed by data
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   401
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   402
	QDataStream reader(&result,QIODevice::ReadOnly);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   403
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   404
	//Now de-serialize it based on opcode
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   405
	switch(opcode)
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   406
		{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   407
		case SmfMusicGetRecommendations:
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   408
		case SmfMusicGetTracks:
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   409
		case SmfMusicGetTrackInfo:
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   410
				{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   411
				SmfTrackInfoList* m_trackInfoList = new SmfTrackInfoList;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   412
				reader>>*(m_trackInfoList);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   413
				
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   414
				//ToDo :- not incorporating paging now
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   415
				SmfResultPage page;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   416
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   417
				emit m_musicSearch->trackSearchAvailable(m_trackInfoList,error,page);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   418
				break;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   419
				}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   420
				
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   421
		case SmfMusicGetStores:
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   422
			{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   423
			SmfProviderList* m_providers = new SmfProviderList;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   424
			reader>>*(m_providers);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   425
			
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   426
			//ToDo :- not incorporating paging now
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   427
			SmfResultPage page;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   428
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   429
			emit m_musicSearch->storeSearchAvailable(m_providers,error,page);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   430
			break;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   431
			}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   432
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   433
		case SmfMusicSearchCustomRequest:
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   434
   			{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   435
   			int operationId;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   436
   			QByteArray *data = new QByteArray;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   437
   			reader>>operationId;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   438
   			reader>>*data;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   439
   			qDebug()<<"operationId = "<<operationId;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   440
   			qDebug()<<"data size = "<<data->size();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   441
   			emit m_musicSearch->customDataAvailable(operationId, data);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   442
   			break;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   443
   			}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   444
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   445
		default:
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   446
			User::Panic(_L("Music Search Private = "),opcode);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   447
		}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   448
	}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   449
//SmfMusicSearchPrivate end
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   450
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   451
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   452
//SmfPlaylistServicePrivate start
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   453
SmfPlaylistServicePrivate::SmfPlaylistServicePrivate(SmfPlaylistService *aPlayLstSrvc)
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   454
		: m_playlstSrvc(aPlayLstSrvc)
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   455
	{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   456
#ifdef Q_OS_SYMBIAN
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   457
	//private impl for symbian
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   458
	m_SmfClientPrivate = CSmfClientSymbian::NewL(this);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   459
#else
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   460
	//TODO:- Use private impl for other platforms or else Qt impl
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   461
#endif
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   462
	}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   463
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   464
SmfPlaylistServicePrivate::~SmfPlaylistServicePrivate()
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   465
	{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   466
	if(m_SmfClientPrivate)
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   467
		{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   468
		delete m_SmfClientPrivate;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   469
		m_SmfClientPrivate = NULL;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   470
		}	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   471
	}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   472
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   473
void SmfPlaylistServicePrivate::playlists(int pageNum, int perPage)
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   474
	{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   475
	//We need to pass Opcode and SmfProvider serialized into bytearray 
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   476
	SmfProvider* m_baseProvider = m_playlstSrvc->getProvider();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   477
	m_serializedDataToServer.clear();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   478
	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   479
	write<<*(m_baseProvider);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   480
	m_argFlag = 1;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   481
	write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   482
	write<<pageNum;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   483
	write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   484
	write<<perPage;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   485
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   486
	QString intfName(playlistServiceInterface);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   487
	//TODO:-revisit all the maxalloc
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   488
	int maxalloc = 1000;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   489
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   490
	//call private impl's send method
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   491
	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   492
			SmfMusicGetPlaylists, maxalloc);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   493
	}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   494
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   495
void SmfPlaylistServicePrivate::playlistsOf(SmfMusicProfile *user, int pageNum, int perPage)
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   496
	{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   497
	//We need to pass Opcode and SmfProvider serialized into bytearray 
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   498
	SmfProvider* m_baseProvider = m_playlstSrvc->getProvider();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   499
	m_serializedDataToServer.clear();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   500
	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   501
	write<<*(m_baseProvider);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   502
	if(user)
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   503
		{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   504
		m_argFlag = 1;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   505
		write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   506
		write<<*user;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   507
		}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   508
	else
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   509
		{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   510
		m_argFlag = 0;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   511
		write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   512
		}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   513
	m_argFlag = 1;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   514
	write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   515
	write<<pageNum;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   516
	write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   517
	write<<perPage;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   518
		
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   519
	QString intfName(playlistServiceInterface);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   520
	//TODO:-revisit all the maxalloc
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   521
	int maxalloc = 1000;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   522
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   523
	//call private impl's send method
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   524
	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   525
			SmfMusicGetPlaylistsOfUser, maxalloc);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   526
	}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   527
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   528
int SmfPlaylistServicePrivate::addToPlaylist(SmfPlaylist plst, SmfTrackInfoList *tracks)
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   529
	{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   530
	//We need to pass Opcode and SmfProvider serialized into bytearray 
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   531
	SmfProvider* m_baseProvider = m_playlstSrvc->getProvider();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   532
	m_serializedDataToServer.clear();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   533
	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   534
	write<<*(m_baseProvider);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   535
	m_argFlag = 1;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   536
	write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   537
	write<<plst;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   538
	if(tracks)
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   539
		{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   540
		write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   541
		write<<*tracks;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   542
		}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   543
	else
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   544
		{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   545
		m_argFlag = 0;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   546
		write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   547
		}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   548
		
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   549
	QString intfName(playlistServiceInterface);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   550
	//TODO:-revisit all the maxalloc
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   551
	int maxalloc = 1000;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   552
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   553
	//call private impl's send method
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   554
	return m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   555
			SmfMusicAddToPlaylist, maxalloc);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   556
	}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   557
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   558
int SmfPlaylistServicePrivate::postCurrentPlayingPlaylist(SmfPlaylist plst)
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   559
	{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   560
	//We need to pass Opcode and SmfProvider serialized into bytearray 
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   561
	SmfProvider* m_baseProvider = m_playlstSrvc->getProvider();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   562
	m_serializedDataToServer.clear();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   563
	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   564
	write<<*(m_baseProvider);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   565
	m_argFlag = 1;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   566
	write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   567
	write<<plst;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   568
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   569
	QString intfName(playlistServiceInterface);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   570
	//TODO:-revisit all the maxalloc
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   571
	int maxalloc = 1000;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   572
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   573
	//call private impl's send method
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   574
	return m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   575
			SmfMusicPostCurrentPlayingPlaylist, maxalloc);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   576
	}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   577
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   578
void SmfPlaylistServicePrivate::customRequest ( const int& operationId, QByteArray* customData )
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   579
	{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   580
	//We need to pass Opcode and SmfProvider serialized into bytearray 
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   581
	SmfProvider* m_baseProvider = m_playlstSrvc->getProvider();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   582
	m_serializedDataToServer.clear();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   583
	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   584
	write<<*m_baseProvider;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   585
	m_argFlag = 1;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   586
	write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   587
	write<<operationId;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   588
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   589
	if(customData)
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   590
		{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   591
		write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   592
		write<<*customData;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   593
		}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   594
	else
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   595
		{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   596
		m_argFlag = 0;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   597
		write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   598
		}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   599
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   600
	QString intfName(playlistServiceInterface);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   601
	//TODO:-revisit all the maxalloc
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   602
	int maxalloc = 1000;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   603
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   604
	//call private impl's send method
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   605
	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   606
			SmfMusicPlaylistCustomRequest, maxalloc);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   607
	}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   608
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   609
void SmfPlaylistServicePrivate::resultsAvailable(QByteArray result, SmfRequestTypeID opcode, SmfError error)
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   610
	{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   611
	//note:- "result" is serialized and we need to de-serialize it as per opcode
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   612
	//Order of serialization Error value followed by data
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   613
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   614
	QDataStream reader(&result,QIODevice::ReadOnly);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   615
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   616
	//Now de-serialize it based on opcode
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   617
	switch(opcode)
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   618
		{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   619
		case SmfMusicGetPlaylists:
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   620
		case SmfMusicGetPlaylistsOfUser:
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   621
			{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   622
			SmfPlaylistList* m_playlistList = new SmfPlaylistList;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   623
			reader>>*(m_playlistList);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   624
			
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   625
			//ToDo:-
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   626
			SmfResultPage page;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   627
			
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   628
			emit m_playlstSrvc->playlistsListAvailable(m_playlistList,error,page);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   629
			break;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   630
			}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   631
			
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   632
		case SmfMusicAddToPlaylist:
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   633
		case SmfMusicPostCurrentPlayingPlaylist:
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   634
			{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   635
			emit m_playlstSrvc->playlistUpdated(error);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   636
			break;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   637
			}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   638
			
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   639
		case SmfMusicPlaylistCustomRequest:
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   640
   			{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   641
   			int operationId;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   642
   			QByteArray *data = new QByteArray;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   643
   			reader>>operationId;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   644
   			reader>>*data;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   645
   			qDebug()<<"operationId = "<<operationId;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   646
   			qDebug()<<"data size = "<<data->size();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   647
   			emit m_playlstSrvc->customDataAvailable(operationId, data);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   648
   			break;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   649
   			}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   650
		default:
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   651
			Q_ASSERT_X(1,"SmfPlaylistServicePrivate::resultsAvailable","unknown opcode");
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   652
		}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   653
	}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   654
//SmfPlaylistServicePrivate end
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   655
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   656
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   657
//SmfMusicEventsPrivate start
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   658
SmfMusicEventsPrivate::SmfMusicEventsPrivate(SmfMusicEvents *aMusicEvent)
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   659
		:m_musicEvent(aMusicEvent)
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   660
	{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   661
#ifdef Q_OS_SYMBIAN
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   662
	//private impl for symbian
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   663
	m_SmfClientPrivate = CSmfClientSymbian::NewL(this);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   664
#else
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   665
	//TODO:- Use private impl for other platforms or else Qt impl
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   666
#endif
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   667
	}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   668
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   669
SmfMusicEventsPrivate::~SmfMusicEventsPrivate()
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   670
	{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   671
	if(m_SmfClientPrivate)
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   672
		{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   673
		delete m_SmfClientPrivate;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   674
		m_SmfClientPrivate = NULL;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   675
		}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   676
	}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   677
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   678
void SmfMusicEventsPrivate::events(SmfLocation venue, int pageNum, int perPage)
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   679
	{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   680
	//We need to pass Opcode and SmfProvider serialized into bytearray 
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   681
	SmfProvider* m_baseProvider = m_musicEvent->getProvider();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   682
	m_serializedDataToServer.clear();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   683
	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   684
	write<<*(m_baseProvider);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   685
	m_argFlag = 1;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   686
	write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   687
	write<<venue;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   688
	write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   689
	write<<pageNum;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   690
	write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   691
	write<<perPage;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   692
		
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   693
	QString intfName(musicEventServiceInterface);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   694
	//TODO:-revisit all the maxalloc
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   695
	int maxalloc = 1000;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   696
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   697
	//call private impl's send method
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   698
	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   699
			SmfMusicGetEventsOnLoc, maxalloc);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   700
	}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   701
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   702
void SmfMusicEventsPrivate::venues(SmfLocation location, int pageNum, int perPage)
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   703
	{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   704
	//We need to pass Opcode and SmfProvider serialized into bytearray 
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   705
	SmfProvider* m_baseProvider = m_musicEvent->getProvider();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   706
	m_serializedDataToServer.clear();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   707
	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   708
	write<<*(m_baseProvider);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   709
	m_argFlag = 1;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   710
	write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   711
	write<<location;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   712
	write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   713
	write<<pageNum;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   714
	write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   715
	write<<perPage;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   716
		
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   717
	QString intfName(musicEventServiceInterface);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   718
	//TODO:-revisit all the maxalloc
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   719
	int maxalloc = 1000;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   720
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   721
	//call private impl's send method
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   722
	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   723
			SmfMusicGetVenueOnLoc, maxalloc);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   724
	}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   725
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   726
void SmfMusicEventsPrivate::postEvents(SmfEventList events)
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   727
	{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   728
	//We need to pass Opcode and SmfProvider serialized into bytearray 
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   729
	SmfProvider* m_baseProvider = m_musicEvent->getProvider();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   730
	m_serializedDataToServer.clear();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   731
	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   732
	write<<*(m_baseProvider);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   733
	m_argFlag = 1;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   734
	write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   735
	write<<events;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   736
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   737
	QString intfName(musicEventServiceInterface);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   738
	//TODO:-revisit all the maxalloc
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   739
	int maxalloc = 1000;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   740
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   741
	//call private impl's send method
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   742
	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   743
			SmfMusicPostEvents, maxalloc);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   744
	}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   745
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   746
void SmfMusicEventsPrivate::customRequest ( const int& operationId, QByteArray* customData )
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   747
	{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   748
	//We need to pass Opcode and SmfProvider serialized into bytearray 
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   749
	SmfProvider* m_baseProvider = m_musicEvent->getProvider();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   750
	m_serializedDataToServer.clear();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   751
	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   752
	write<<*m_baseProvider;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   753
	m_argFlag = 1;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   754
	write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   755
	write<<operationId;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   756
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   757
	if(customData)
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   758
		{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   759
		write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   760
		write<<*customData;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   761
		}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   762
	else
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   763
		{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   764
		m_argFlag = 0;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   765
		write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   766
		}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   767
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   768
	QString intfName(musicEventServiceInterface);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   769
	//TODO:-revisit all the maxalloc
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   770
	int maxalloc = 1000;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   771
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   772
	//call private impl's send method
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   773
	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   774
			SmfMusicEventsCustomRequest, maxalloc);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   775
	}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   776
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   777
void SmfMusicEventsPrivate::resultsAvailable(QByteArray result,SmfRequestTypeID opcode,SmfError error)
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   778
	{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   779
	//note:- "result" is serialized and we need to de-serialize it as per opcode
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   780
	//Order of serialization Error value followed by data
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   781
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   782
	QDataStream reader(&result,QIODevice::ReadOnly);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   783
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   784
	//Now de-serialize it based on opcode
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   785
	switch(opcode)
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   786
		{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   787
		case SmfMusicGetEventsOnLoc:
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   788
			{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   789
			SmfEventList* m_events = new SmfEventList;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   790
			reader>>*(m_events);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   791
			
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   792
			// ToDo :-
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   793
			SmfResultPage page;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   794
			
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   795
			m_musicEvent->eventsAvailable(m_events,error,page);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   796
			break;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   797
			}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   798
			
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   799
		case SmfMusicGetVenueOnLoc:
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   800
			{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   801
			SmfLocationList* m_venues = new SmfLocationList;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   802
			reader>>*(m_venues);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   803
			
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   804
			//ToDo :-
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   805
			SmfResultPage page;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   806
			
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   807
			m_musicEvent->venuesAvailable(m_venues,error,page);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   808
			break;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   809
			}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   810
			
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   811
		case SmfMusicPostEvents:
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   812
			m_musicEvent->eventsUpdated(error);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   813
			break;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   814
			
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   815
		case SmfMusicEventsCustomRequest:
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   816
   			{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   817
   			int operationId;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   818
   			QByteArray *data = new QByteArray;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   819
   			reader>>operationId;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   820
   			reader>>*data;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   821
   			qDebug()<<"operationId = "<<operationId;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   822
   			qDebug()<<"data size = "<<data->size();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   823
   			emit m_musicEvent->customDataAvailable(operationId, data);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   824
   			break;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   825
   			}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   826
   			
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   827
		default:
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   828
			Q_ASSERT_X(1,"SmfMusicEventsPrivate::resultsAvailable","unknown opcode");
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   829
		}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   830
	}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   831
//SmfMusicEventsPrivate end
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   832
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   833
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   834
//SmfLyricsServicePrivate start
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   835
SmfLyricsServicePrivate::SmfLyricsServicePrivate(SmfLyricsService *aLyricsSrvc)
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   836
		: m_lyricsSrvc(aLyricsSrvc)
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   837
	{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   838
#ifdef Q_OS_SYMBIAN
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   839
	//private impl for symbian
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   840
	m_SmfClientPrivate = CSmfClientSymbian::NewL(this);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   841
#else
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   842
	//TODO:- Use private impl for other platforms or else Qt impl
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   843
#endif
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   844
	}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   845
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   846
SmfLyricsServicePrivate::~SmfLyricsServicePrivate()
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   847
	{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   848
	if(m_SmfClientPrivate)
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   849
		{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   850
		delete m_SmfClientPrivate;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   851
		m_SmfClientPrivate = NULL;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   852
		}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   853
	}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   854
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   855
void SmfLyricsServicePrivate::lyrics(SmfTrackInfo track, int pageNum, int perPage)
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   856
	{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   857
	//We need to pass Opcode and SmfProvider serialized into bytearray 
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   858
	SmfProvider* m_baseProvider = m_lyricsSrvc->getProvider();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   859
	m_serializedDataToServer.clear();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   860
	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   861
	write<<*(m_baseProvider);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   862
	m_argFlag = 1;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   863
	write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   864
	write<<track;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   865
	write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   866
	write<<pageNum;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   867
	write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   868
	write<<perPage;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   869
		
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   870
	QString intfName(lyricsServiceInterface);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   871
	//TODO:-revisit all the maxalloc
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   872
	int maxalloc = 1000;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   873
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   874
	//call private impl's send method
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   875
	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   876
			SmfMusicGetLyrics, maxalloc);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   877
	}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   878
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   879
void SmfLyricsServicePrivate::subtitles(SmfTrackInfo track, SmfSubtitleSearchFilter filter, 
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   880
		int pageNum, int perPage)
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   881
	{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   882
	//We need to pass Opcode and SmfProvider serialized into bytearray 
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   883
	SmfProvider* m_baseProvider = m_lyricsSrvc->getProvider();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   884
	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   885
	write<<*(m_baseProvider);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   886
	m_argFlag = 1;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   887
	write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   888
	write<<track;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   889
	write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   890
	write<<filter;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   891
	write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   892
	write<<pageNum;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   893
	write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   894
	write<<perPage;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   895
		
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   896
	QString intfName(lyricsServiceInterface);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   897
	//TODO:-revisit all the maxalloc
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   898
	int maxalloc = 1000;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   899
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   900
	//call private impl's send method
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   901
	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   902
			SmfMusicGetSubtitle, maxalloc);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   903
	}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   904
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   905
void SmfLyricsServicePrivate::customRequest ( const int& operationId, QByteArray* customData )
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   906
	{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   907
	//We need to pass Opcode and SmfProvider serialized into bytearray 
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   908
	SmfProvider* m_baseProvider = m_lyricsSrvc->getProvider();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   909
	m_serializedDataToServer.clear();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   910
	QDataStream write(&m_serializedDataToServer,QIODevice::WriteOnly);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   911
	write<<*m_baseProvider;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   912
	m_argFlag = 1;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   913
	write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   914
	write<<operationId;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   915
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   916
	if(customData)
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   917
		{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   918
		write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   919
		write<<*customData;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   920
		}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   921
	else
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   922
		{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   923
		m_argFlag = 0;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   924
		write<<m_argFlag;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   925
		}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   926
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   927
	QString intfName(lyricsServiceInterface);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   928
	//TODO:-revisit all the maxalloc
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   929
	int maxalloc = 1000;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   930
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   931
	//call private impl's send method
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   932
	m_SmfClientPrivate->sendRequest(m_serializedDataToServer, intfName,
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   933
			SmfMusicLyricsCustomRequest, maxalloc);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   934
	}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   935
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   936
void SmfLyricsServicePrivate::resultsAvailable(QByteArray result, SmfRequestTypeID opcode, SmfError error)
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   937
	{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   938
	//note:- "result" is serialized and we need to de-serialize it as per opcode
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   939
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   940
	QDataStream reader(&result,QIODevice::ReadOnly);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   941
	
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   942
	//Now de-serialize it based on opcode
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   943
	switch(opcode)
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   944
		{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   945
		case SmfMusicGetLyrics:
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   946
			{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   947
			SmfLyricsList* m_lyricsList = new SmfLyricsList;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   948
			reader>>*(m_lyricsList);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   949
			
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   950
			// ToDo :-
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   951
			SmfResultPage page;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   952
			
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   953
			emit m_lyricsSrvc->lyricsAvailable(m_lyricsList,error,page);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   954
			break;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   955
			}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   956
			
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   957
		case SmfMusicGetSubtitle:
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   958
			{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   959
			SmfSubtitleList* m_subList = new SmfSubtitleList;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   960
			reader>>*(m_subList);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   961
			
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   962
			// ToDo :-
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   963
			SmfResultPage page;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   964
			
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   965
			emit m_lyricsSrvc->subtitleAvailable(m_subList,error,page);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   966
			break;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   967
			}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   968
			
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   969
		case SmfMusicLyricsCustomRequest:
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   970
   			{
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   971
   			int operationId;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   972
   			QByteArray *data = new QByteArray;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   973
   			reader>>operationId;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   974
   			reader>>*data;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   975
   			qDebug()<<"operationId = "<<operationId;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   976
   			qDebug()<<"data size = "<<data->size();
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   977
   			emit m_lyricsSrvc->customDataAvailable(operationId, data);
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   978
   			break;
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   979
   			}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   980
   			
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   981
		default:
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   982
			Q_ASSERT_X(1,"SmfLyricsServicePrivate::resultsAvailable","unknown opcode");
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   983
		}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   984
	}
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   985
013a02bf2bb0 pushing changes for common libs and trace messages
cgandhi
parents:
diff changeset
   986
//SmfLyricsServicePrivate end