public
Fork of ebassi/tweet
Description: A Clutter-based Twitter client
Clone URL: git://github.com/patoh/tweet.git
Split the user show method

The user data retrieval method can be called with either the
user id/screen name or with a user email.

TwitterClient needs two separate methods to be able to query
Twitter with either parameters.
Emmanuele Bassi (author)
Fri May 23 03:37:53 -0700 2008
commit  003716071fa1544772c2d3bf03c32646bd637101
tree    526ea37b66039089f5bf9ed64613297db3c97413
parent  69dc57a4bffe91a4f6bba1a55789904feefb29a1
...
82
83
84
85
86
 
 
87
88
 
 
 
 
89
90
91
...
298
299
300
301
 
 
302
303
304
305
306
 
 
 
 
 
307
308
309
...
82
83
84
 
 
85
86
87
88
89
90
91
92
93
94
95
...
302
303
304
 
305
306
307
308
309
310
 
311
312
313
314
315
316
317
318
0
@@ -82,10 +82,14 @@
0
 #define TWITTER_API_FEATURED \
0
         "http://twitter.com/statuses/featured.json"
0
 
0
-/* @param (required): id=user id */
0
-#define TWITTER_API_USER_SHOW \
0
+/* @param (required): id=user id or screen name */
0
+#define TWITTER_API_USER_SHOW_ID \
0
         "http://twitter.com/users/show/%s.json"
0
 
0
+/* @param: email=email address */
0
+#define TWITTER_API_USER_SHOW_EMAIL \
0
+ "http://twitter.com/users/show.json&email=%s"
0
+
0
 #define TWITTER_API_DIRECT_MESSAGES \
0
         "http://twitter.com/direct_messages.json"
0
 #define TWITTER_API_DIRECT_SENT \
0
@@ -298,12 +302,17 @@ twitter_api_featured (void)
0
 }
0
 
0
 SoupMessage *
0
-twitter_api_user_show (const gchar *user)
0
+twitter_api_user_show (const gchar *user,
0
+ const gchar *email)
0
 {
0
   gchar *url;
0
   SoupMessage *msg;
0
 
0
- url = g_strdup_printf (TWITTER_API_USER_SHOW, user);
0
+ if (user)
0
+ url = g_strdup_printf (TWITTER_API_USER_SHOW_ID, user);
0
+ else
0
+ url = g_strdup_printf (TWITTER_API_USER_SHOW_EMAIL, email);
0
+
0
   msg = soup_message_new (SOUP_METHOD_GET, url);
0
   g_free (url);
0
 
...
38
39
40
41
 
 
42
43
44
...
38
39
40
 
41
42
43
44
45
0
@@ -38,7 +38,8 @@ SoupMessage *twitter_api_friends (const gchar *user,
0
                                              gint page,
0
                                              gboolean lite);
0
 SoupMessage *twitter_api_featured (void);
0
-SoupMessage *twitter_api_user_show (const gchar *user);
0
+SoupMessage *twitter_api_user_show (const gchar *user,
0
+ const gchar *email);
0
 SoupMessage *twitter_api_verify_credentials (void);
0
 SoupMessage *twitter_api_end_session (void);
0
 SoupMessage *twitter_api_followers (gint page,
...
1299
1300
1301
1302
1303
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1304
1305
1306
...
1308
1309
1310
1311
 
1312
1313
1314
...
1299
1300
1301
 
 
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
...
1331
1332
1333
 
1334
1335
1336
1337
0
@@ -1299,8 +1299,31 @@ twitter_client_get_followers (TwitterClient *client,
0
 }
0
 
0
 void
0
-twitter_client_show_user (TwitterClient *client,
0
- const gchar *user)
0
+twitter_client_show_user_from_email (TwitterClient *client,
0
+ const gchar *email)
0
+{
0
+ GetUserClosure *clos;
0
+ SoupMessage *msg;
0
+
0
+ g_return_if_fail (TWITTER_IS_CLIENT (client));
0
+ g_return_if_fail (email != NULL);
0
+
0
+ msg = twitter_api_user_show (NULL, email);
0
+
0
+ clos = g_new0 (GetUserClosure, 1);
0
+ closure_set_action (clos, USER_SHOW);
0
+ closure_set_client (clos, g_object_ref (client));
0
+ closure_set_requires_auth (clos, FALSE);
0
+ clos->user = twitter_user_new ();
0
+
0
+ twitter_client_queue_message (client, msg, TRUE,
0
+ get_user_cb,
0
+ clos);
0
+}
0
+
0
+void
0
+twitter_client_show_user_from_id (TwitterClient *client,
0
+ const gchar *user)
0
 {
0
   GetUserClosure *clos;
0
   SoupMessage *msg;
0
@@ -1308,7 +1331,7 @@ twitter_client_show_user (TwitterClient *client,
0
   g_return_if_fail (TWITTER_IS_CLIENT (client));
0
   g_return_if_fail (user != NULL);
0
 
0
- msg = twitter_api_user_show (user);
0
+ msg = twitter_api_user_show (user, NULL);
0
 
0
   clos = g_new0 (GetUserClosure, 1);
0
   closure_set_action (clos, USER_SHOW);
...
126
127
128
129
 
130
 
 
131
132
133
...
126
127
128
 
129
130
131
132
133
134
135
0
@@ -126,8 +126,10 @@ void twitter_client_get_user (TwitterClient *client,
0
                                                     gchar **password);
0
 void twitter_client_verify_user (TwitterClient *client);
0
 void twitter_client_end_session (TwitterClient *client);
0
-void twitter_client_show_user (TwitterClient *client,
0
+void twitter_client_show_user_from_id (TwitterClient *client,
0
                                                     const gchar *user);
0
+void twitter_client_show_user_from_email (TwitterClient *client,
0
+ const gchar *email);
0
 
0
 void twitter_client_get_public_timeline (TwitterClient *client,
0
                                                     guint since_id);

Comments

    No one has commented yet.