📄 fbgetfriendslistrequest.java
字号:
// Decompiled by Jad v1.5.7g. Copyright 2000 Pavel Kouznetsov.
// Jad home page: http://www.geocities.com/SiliconValley/Bridge/8617/jad.html
// Decompiler options: packimports(3)
// Source File Name: FbGetFriendsListRequest.java
package com.sonyericsson.fb.api.request;
import com.sonyericsson.fb.api.FbSessionHandler;
import com.sonyericsson.fb.api.InvalidStateException;
import com.sonyericsson.fb.api.data.FbFriendItemData;
import com.sonyericsson.fb.api.data.FbItemDataFactory;
import java.util.Hashtable;
import se.southend.drops.xml.XMLNode;
// Referenced classes of package com.sonyericsson.fb.api.request:
// FbAPIRequest, IFbAPIRequestListener
public class FbGetFriendsListRequest extends FbAPIRequest
{
public FbGetFriendsListRequest(IFbAPIRequestListener listener)
{
_friends = new Hashtable();
_listener = listener;
}
public void runRequest()
{
String uid = "";
try
{
uid = FbSessionHandler.getInstance().getUid();
}
catch(InvalidStateException e)
{
_statusCode = 2003;
}
if(uid.length() > 0)
{
String query = "SELECT last_name,pic_square,status,profile_update_time,name,uid,pic FROM user WHERE uid IN (SELECT uid1 FROM friend WHERE uid2 IN (" + uid + "))";
Hashtable arguments = new Hashtable();
arguments.put("method", "facebook.fql.query");
arguments.put("query", query);
XMLNode root = new XMLNode();
_statusCode = callMethod(arguments, root);
if(_statusCode == 0 && root != null && root.getName().equalsIgnoreCase("fql_query_response"))
{
String userIdList = "";
for(int i = 0; i < root.getNumberOfChildren(); i++)
{
XMLNode child = root.getChild(i);
FbFriendItemData friend = (FbFriendItemData)FbItemDataFactory.getInstance().createItem(1, child);
if(friend == null)
continue;
String fid = friend.getUid();
_friends.put(fid, friend);
userIdList = userIdList + fid;
if(i < root.getNumberOfChildren() - 1)
userIdList = userIdList + ",";
}
arguments.clear();
arguments.put("method", "facebook.users.getContactInfo");
arguments.put("uids", userIdList);
arguments.put("friends", "0");
root = new XMLNode();
_statusCode = callMethod(arguments, root);
if(_statusCode == 0 && root != null && root.getName().equalsIgnoreCase("users_getContactInfo_response"))
{
for(int i = 0; i < root.getNumberOfChildren(); i++)
{
XMLNode child = root.getChild(i);
FbFriendItemData contact = (FbFriendItemData)FbItemDataFactory.getInstance().createItem(1, child);
if(contact != null)
{
FbFriendItemData friend = (FbFriendItemData)FbItemDataFactory.getInstance().updateItem((FbFriendItemData)_friends.get(contact.getUid()), contact);
_friends.put(contact.getUid(), friend);
}
}
}
}
}
if(_listener != null)
_listener.requestCompleted(this);
}
public Hashtable getFriends()
{
return _friends;
}
private Hashtable _friends;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -