diff -r 000000000000 -r d0f3a028347a libtelepathy/tsrc/inc/telepathygabblesearch.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/libtelepathy/tsrc/inc/telepathygabblesearch.h Tue Feb 02 01:10:06 2010 +0200 @@ -0,0 +1,149 @@ +/* +* Copyright (c) 2008 - 2009 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of the License "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: Class declaration for Search +* +*/ + + + + + +#ifndef DBUS_API_SUBJECT_TO_CHANGE +#define DBUS_API_SUBJECT_TO_CHANGE +#endif + + +//Include files +#include +#include +#include + +#include +#include +#include +#include + +#include +#include + +#include + +#include "tp-conn.h" +#include "tp-connmgr.h" +#include "tp-chan.h" +#include "tp-chan-gen.h" +#include "tp-ch-gen.h" +#include "tp-chan-iface-group-gen.h" +#include "tp-chan-type-text-gen.h" +#include "tp-chan-type-search-gen.h" +#include "tp-chan-type-streamed-media-gen.h" +#include "tp-props-iface.h" +#include "tp-constants.h" +#include "tp-interfaces.h" +#include + + +// FORWARD DECLARATION +class CTestData; + + +#define VERBOSE + + +// CLASS DECLARATION +NONSHARABLE_CLASS(CTelepathyGabbleSearch) : public CBase + { + public: + + struct Search_UserData + { + GHashTable* data_to_search; + CTestData* testData; + }; + + private: + /** + * C++ default constructor. + */ + + CTelepathyGabbleSearch(); + + /** + * By default Symbian 2nd phase constructor is private. + */ + void ConstructL(); + + public: // Constructors and destructor + /** + * Two-phased constructor. + */ + static CTelepathyGabbleSearch* NewL(); + + /** + * Destructor. + */ + ~CTelepathyGabbleSearch(); + + + + public: // Member functions + + + TInt SearchL( GHashTable *aDataToSearch, CTestData* aTestData ); + + TInt GetSearchKeysL( CTestData* aTestData ); + + void SearchAgainL( GHashTable *aDataToSearch, CTestData* aTestData ); + + CTestData* GetTestData(); + + void DoSearchL(GHashTable *aDataToSearch,CTestData *testData); + + void CloseChannel( CTestData* aTestdata ); + + public : //Callback functions + + static void search_chan_closed_cb ( DBusGProxy *proxy, + GError *error, + gpointer user_data + ); + static void search_result_received_cb ( DBusGProxy *proxy, + guint contact_handle, + GHashTable *values, + gpointer user_data + ); + static void search_state_changed_cb ( DBusGProxy *proxy, + guint search_state, + gpointer user_data + ); + + + static void searchreply_cb( DBusGProxy *proxy, GError *error, gpointer user_data ); + + //static void setfield_foreach (gpointer key, gpointer value, gpointer user_data); + + static void do_search_reply( DBusGProxy *proxy, char *chan_object_path, + GError *error, gpointer user_data ); + static void getsearchkeys_cb( DBusGProxy *proxy, gchar * instr, + gchar ** keys, GError *error, gpointer user_data ); + private: + + CTestData *iTestData; + }; + + + + + +