Package weibo4j

Source Code of weibo4j.Friendships

package weibo4j;

import weibo4j.model.Paging;
import weibo4j.model.PostParameter;
import weibo4j.model.User;
import weibo4j.model.UserWapper;
import weibo4j.model.WeiboException;
import weibo4j.org.json.JSONArray;
import weibo4j.util.WeiboConfig;

public class Friendships {
  /*----------------------------关系接口----------------------------------------*/
  /**
   * 获取用户的关注列表
   *
   * @return list of the user's follow
   * @throws WeiboException
   *             when Weibo service or network is unavailable
   * @version weibo4j-V2 1.0.0
   * @see <a
   *      href="http://open.weibo.com/wiki/2/friendships/friends">friendships/friends</a>
   * @since JDK 1.5
   */
  public UserWapper getFriendsByID(String id) throws WeiboException {
    return User.constructWapperUsers(Weibo.client.get(
        WeiboConfig.getValue("baseURL") + "friendships/friends.json",
        new PostParameter[] { new PostParameter("uid", id) }));
  }

  /**
   * 获取用户的关注列表
   *
   * @return list of the user's follow
   * @throws WeiboException
   *             when Weibo service or network is unavailable
   * @version weibo4j-V2 1.0.0
   * @see <a
   *      href="http://open.weibo.com/wiki/2/friendships/friends">friendships/friends</a>
   * @since JDK 1.5
   */
  public UserWapper getFriendsByScreenName(String screen_name)
      throws WeiboException {
    return User.constructWapperUsers(Weibo.client.get(
        WeiboConfig.getValue("baseURL") + "friendships/friends.json",
        new PostParameter[] { new PostParameter("screen_name",
            screen_name) }));
  }

  /**
   * 获取两个用户之间的共同关注人列表
   *
   * @param uid
   *            需要获取共同关注关系的用户UID
   * @return list of the user's follow
   * @throws WeiboException
   *             when Weibo service or network is unavailable
   * @version weibo4j-V2 1.0.0
   * @see <a
   *      href="http://open.weibo.com/wiki/2/friendships/friends/in_common">friendships/friends/in_common</a>
   * @since JDK 1.5
   */
  public UserWapper getFriendsInCommon(String uid) throws WeiboException {
    return User.constructWapperUsers(Weibo.client.get(
        WeiboConfig.getValue("baseURL")
            + "friendships/friends/in_common.json",
        new PostParameter[] { new PostParameter("uid", uid) }));
  }

  /**
   * 获取两个用户之间的共同关注人列表
   *
   * @param uid
   *            需要获取共同关注关系的用户UID
   * @param suid
   *            需要获取共同关注关系的用户UID,默认为当前登录用户
   * @param count
   *            单页返回的记录条数,默认为50
   * @param page
   *            返回结果的页码,默认为1
   * @return list of the user's follow
   * @throws WeiboException
   *             when Weibo service or network is unavailable
   * @version weibo4j-V2 1.0.0
   * @see <a
   *      href="http://open.weibo.com/wiki/2/friendships/friends/in_common">friendships/friends/in_common</a>
   * @since JDK 1.5
   */
  public UserWapper getFriendsInCommon(String uid, String suid, Paging page)
      throws WeiboException {
    return User.constructWapperUsers(Weibo.client.get(
        WeiboConfig.getValue("baseURL") + "friendships/friends/in_common.json",
        new PostParameter[] {
          new PostParameter("uid", uid),
          new PostParameter("suid", suid)}, page));
  }

  /**
   * 获取用户的双向关注列表,即互粉列表
   *
   * @param uid
   *            需要获取双向关注列表的用户UID
   * @return list of the user
   * @throws WeiboException
   *             when Weibo service or network is unavailable
   * @version weibo4j-V2 1.0.0
   * @see <a
   *      href="http://open.weibo.com/wiki/2/friendships/friends/bilateral">friendships/friends/bilateral</a>
   * @since JDK 1.5
   */
  public UserWapper getFriendsBilateral(String uid) throws WeiboException {
    return User.constructWapperUsers(Weibo.client.get(
        WeiboConfig.getValue("baseURL")
            + "friendships/friends/bilateral.json",
        new PostParameter[] { new PostParameter("uid", uid) }));
  }

  /**
   * 获取用户的双向关注列表,即互粉列表
   *
   * @param uid
   *            需要获取双向关注列表的用户UID
   * @param count
   *            单页返回的记录条数,默认为50。
   * @param page
   *            返回结果的页码,默认为1。
   * @param sort
   *            排序类型,0:按关注时间最近排序,默认为0。
   * @return list of the user
   * @throws WeiboException
   *             when Weibo service or network is unavailable
   * @version weibo4j-V2 1.0.0
   * @return
   * @see <a
   *      href="http://open.weibo.com/wiki/2/friendships/friends/bilateral">friendships/friends/bilateral</a>
   * @since JDK 1.5
   */
  public  UserWapper getFriendsBilateral(String uid, Integer sort, Paging page)
      throws WeiboException {
    return User.constructWapperUsers(Weibo.client.get(
        WeiboConfig.getValue("baseURL")
            + "friendships/friends/bilateral.json",
        new PostParameter[] { new PostParameter("uid", uid),
            new PostParameter("sort", sort.toString()) }, page));
  }

  /**
   * 获取用户双向关注的用户ID列表,即互粉UID列表
   *
   * @param uid
   *            需要获取双向关注列表的用户UID
   * @return ids
   * @throws WeiboException
   *             when Weibo service or network is unavailable
   * @version weibo4j-V2 1.0.0
   * @see <a
   *      href="http://open.weibo.com/wiki/2/friendships/friends/bilateral/ids">friendships/friends/bilateral/ids</a>
   * @since JDK 1.5
   */
  public String[] getFriendsBilateralIds(String uid) throws WeiboException {
    return User.constructIds(Weibo.client.get(
        WeiboConfig.getValue("baseURL")
            + "friendships/friends/bilateral/ids.json",
        new PostParameter[] { new PostParameter("uid", uid) }));
  }

  /**
   * 获取用户双向关注的用户ID列表,即互粉UID列表
   *
   * @param uid
   *            需要获取双向关注列表的用户UID
   * @param count
   *            单页返回的记录条数,默认为50。
   * @param page
   *            返回结果的页码,默认为1。
   * @param sort
   *            排序类型,0:按关注时间最近排序,默认为0。
   * @return ids
   * @throws WeiboException
   *             when Weibo service or network is unavailable
   * @version weibo4j-V2 1.0.0
   * @see <a
   *      href="http://open.weibo.com/wiki/2/friendships/friends/bilateral/ids">friendships/friends/bilateral/ids</a>
   * @since JDK 1.5
   */
  public String[] getFriendsBilateralIds(String uid, Integer sort, Paging page)
      throws WeiboException {
    return User.constructIds(Weibo.client.get(
        WeiboConfig.getValue("baseURL")
            + "friendships/friends/bilateral/ids.json",
        new PostParameter[] { new PostParameter("uid", uid),
            new PostParameter("sort", sort.toString()) }, page));
  }

  /**
   * 获取用户关注的用户UID列表
   *
   * @param uid
   *            需要查询的用户UID
   * @return ids
   * @throws WeiboException
   *             when Weibo service or network is unavailable
   * @version weibo4j-V2 1.0.0
   * @see <a
   *      href="http://open.weibo.com/wiki/2/friendships/friends/ids">friendships/friends/ids</a>
   * @since JDK 1.5
   */
  public String[] getFriendsIdsByUid(String uid) throws WeiboException {
    return User.constructIds(Weibo.client.get(
        WeiboConfig.getValue("baseURL")
            + "friendships/friends/ids.json",
        new PostParameter[] { new PostParameter("uid", uid) }));
  }

  /**
   * 获取用户关注的用户UID列表
   *
   * @param uid
   *            需要查询的用户UID
   * @return ids
   * @throws WeiboException
   *             when Weibo service or network is unavailable
   * @version weibo4j-V2 1.0.0
   * @see <a
   *      href="http://open.weibo.com/wiki/2/friendships/friends/ids">friendships/friends/ids</a>
   * @since JDK 1.5
   */
  public String[] getFriendsIdsByName(String screen_name)
      throws WeiboException {
    return User.constructIds(Weibo.client.get(
        WeiboConfig.getValue("baseURL")
            + "friendships/friends/ids.json",
        new PostParameter[] { new PostParameter("screen_name",
            screen_name) }));
  }

  /**
   * 获取用户关注的用户UID列表
   *
   * @param uid
   *            需要查询的用户UID
   * @param count
   *            单页返回的记录条数,默认为500,最大不超过5000
   * @param cursor
   *            返回结果的游标,下一页用返回值里的next_cursor,上一页用previous_cursor,默认为0
   * @return ids
   * @throws WeiboException
   *             when Weibo service or network is unavailable
   * @version weibo4j-V2 1.0.0
   * @see <a
   *      href="http://open.weibo.com/wiki/2/friendships/friends/ids">friendships/friends/ids</a>
   * @since JDK 1.5
   */
  public String[] getFriendsIdsByUid(String uid, Integer count, Integer cursor)
      throws WeiboException {
    return User.constructIds(Weibo.client.get(
        WeiboConfig.getValue("baseURL")
            + "friendships/friends/ids.json", new PostParameter[] {
            new PostParameter("uid", uid),
            new PostParameter("count", count.toString()),
            new PostParameter("cursor", cursor.toString()) }));
  }

  /**
   * 获取用户关注的用户UID列表
   *
   * @param screen_name
   *            需要查询的用户昵称
   * @param count
   *            单页返回的记录条数,默认为500,最大不超过5000
   * @param cursor
   *            返回结果的游标,下一页用返回值里的next_cursor,上一页用previous_cursor,默认为0
   * @return ids
   * @throws WeiboException
   *             when Weibo service or network is unavailable
   * @version weibo4j-V2 1.0.0
   * @see <a
   *      href="http://open.weibo.com/wiki/2/friendships/friends/ids">friendships/friends/ids</a>
   * @since JDK 1.5
   */
  public String[] getFriendsIdsByName(String screen_name, Integer count,
      Integer cursor) throws WeiboException {
    return User.constructIds(Weibo.client.get(
        WeiboConfig.getValue("baseURL")
            + "friendships/friends/ids.json", new PostParameter[] {
            new PostParameter("screen_name", screen_name),
            new PostParameter("count", count.toString()),
            new PostParameter("cursor", cursor.toString()) }));
  }

  /**
   * 批量获取当前登录用户的关注人的备注信息
   *
   * @param uids
   *            需要获取备注的用户UID,用半角逗号分隔,最多不超过50个
   * @return list of user's remark
   * @throws WeiboException
   *             when Weibo service or network is unavailable
   * @version weibo4j-V2 1.0.0
   * @see <a
   *      href="http://open.weibo.com/wiki/2/friendships/friends/remark_batch">friendships/friends/remark_batch</a>
   * @since JDK 1.5
   */
  public JSONArray getRemark(String uids) throws WeiboException {
    return Weibo.client.get(
        WeiboConfig.getValue("baseURL")
            + "friendships/friends/remark_batch.json",
        new PostParameter[] { new PostParameter("uids", uids) }).asJSONArray()
  }

  /**
   * 获取用户的粉丝列表
   *
   * @param screen_name
   *            需要查询的用户昵称
   * @return list of users
   * @throws WeiboException
   *             when Weibo service or network is unavailable
   * @version weibo4j-V2 1.0.0
   * @see <a
   *      href="http://open.weibo.com/wiki/2/friendships/followers">friendships/followers</a>
   * @since JDK 1.5
   */
  public UserWapper getFollowersByName(String screen_name)
      throws WeiboException {
    return User.constructWapperUsers(Weibo.client.get(
        WeiboConfig.getValue("baseURL") + "friendships/followers.json",
        new PostParameter[] { new PostParameter("screen_name",
            screen_name) }));
  }

  /**
   * 获取用户的粉丝列表
   *
   * @param screen_name
   *            需要查询的用户昵称
   * @param count
   *            单页返回的记录条数,默认为500,最大不超过5000
   * @param cursor
   *            返回结果的游标,下一页用返回值里的next_cursor,上一页用previous_cursor,默认为0
   * @return list of users
   * @throws WeiboException
   *             when Weibo service or network is unavailable
   * @version weibo4j-V2 1.0.0
   * @see <a
   *      href="http://open.weibo.com/wiki/2/friendships/followers">friendships/followers</a>
   * @since JDK 1.5
   */
  public UserWapper getFollowersByName(String screen_name, Integer count,
      Integer cursor) throws WeiboException {
    return User.constructWapperUsers(Weibo.client.get(
        WeiboConfig.getValue("baseURL") + "friendships/followers.json",
        new PostParameter[] {
            new PostParameter("screen_name", screen_name),
            new PostParameter("count", count.toString()),
            new PostParameter("cursor", cursor.toString()) }));
  }

  /**
   * 获取用户的粉丝列表
   *
   * @param screen_name
   *            需要查询的用户昵称
   * @return list of users
   * @throws WeiboException
   *             when Weibo service or network is unavailable
   * @version weibo4j-V2 1.0.0
   * @see <a
   *      href="http://open.weibo.com/wiki/2/friendships/followers">friendships/followers</a>
   * @since JDK 1.5
   */
  public UserWapper getFollowersById(String uid) throws WeiboException {
    return User.constructWapperUsers(Weibo.client.get(
        WeiboConfig.getValue("baseURL") + "friendships/followers.json",
        new PostParameter[] { new PostParameter("uid", uid) }));
  }

  /**
   * 获取用户的粉丝列表
   *
   * @param screen_name
   *            需要查询的用户昵称
   * @param count
   *            单页返回的记录条数,默认为500,最大不超过5000
   * @param cursor
   *            返回结果的游标,下一页用返回值里的next_cursor,上一页用previous_cursor,默认为0
   * @return list of users
   * @throws WeiboException
   *             when Weibo service or network is unavailable
   * @version weibo4j-V2 1.0.0
   * @see <a
   *      href="http://open.weibo.com/wiki/2/friendships/followers">friendships/followers</a>
   * @since JDK 1.5
   */
  public UserWapper getFollowersById(String uid, Integer count, Integer cursor)
      throws WeiboException {
    return User.constructWapperUsers(Weibo.client.get(
        WeiboConfig.getValue("baseURL") + "friendships/followers.json",
        new PostParameter[] { new PostParameter("uid", uid),
            new PostParameter("count", count.toString()),
            new PostParameter("cursor", cursor.toString()) }));
  }

  /**
   * 获取用户粉丝的用户UID列表
   *
   * @param uid
   *            需要查询的用户ID
   * @return list of users
   * @throws WeiboException
   *             when Weibo service or network is unavailable
   * @version weibo4j-V2 1.0.0
   * @see <a
   *      href="http://open.weibo.com/wiki/2/friendships/followers/ids">friendships/followers/ids</a>
   * @since JDK 1.5
   */
  public String[] getFollowersIdsById(String uid) throws WeiboException {
    return User.constructIds(Weibo.client.get(
        WeiboConfig.getValue("baseURL")
            + "friendships/followers/ids.json",
        new PostParameter[] { new PostParameter("uid", uid) }));
  }

  /**
   * 获取用户粉丝的用户UID列表
   *
   * @param uid
   *            需要查询的用户ID
   * @param count
   *            单页返回的记录条数,默认为500,最大不超过5000
   * @param cursor
   *            返回结果的游标,下一页用返回值里的next_cursor,上一页用previous_cursor,默认为0
   * @return list of users
   * @throws WeiboException
   *             when Weibo service or network is unavailable
   * @version weibo4j-V2 1.0.0
   * @see <a
   *      href="http://open.weibo.com/wiki/2/friendships/followers/ids">friendships/followers/ids</a>
   * @since JDK 1.5
   */
  public String[] getFollowersIdsById(String uid, Integer count,
      Integer cursor) throws WeiboException {
    return User.constructIds(Weibo.client.get(
        WeiboConfig.getValue("baseURL")
            + "friendships/followers/ids.json",
        new PostParameter[] { new PostParameter("uid", uid),
            new PostParameter("count", count.toString()),
            new PostParameter("cursor", cursor.toString()) }));
  }

  /**
   * 获取用户粉丝的用户UID列表
   *
   * @param screen_name
   *            需要查询的用户昵称
   * @return list of users
   * @throws WeiboException
   *             when Weibo service or network is unavailable
   * @version weibo4j-V2 1.0.0
   * @see <a
   *      href="http://open.weibo.com/wiki/2/friendships/followers/ids">friendships/followers/ids</a>
   * @since JDK 1.5
   */
  public String[] getFollowersIdsByName(String screen_name)
      throws WeiboException {
    return User.constructIds(Weibo.client.get(
        WeiboConfig.getValue("baseURL")
            + "friendships/followers/ids.json",
        new PostParameter[] { new PostParameter("screen_name",
            screen_name) }));
  }

  /**
   * 获取用户粉丝的用户UID列表
   *
   * @param screen_name
   *            需要查询的用户ID
   * @param count
   *            单页返回的记录条数,默认为500,最大不超过5000
   * @param cursor
   *            返回结果的游标,下一页用返回值里的next_cursor,上一页用previous_cursor,默认为0
   * @return list of users
   * @throws WeiboException
   *             when Weibo service or network is unavailable
   * @version weibo4j-V2 1.0.0
   * @see <a
   *      href="http://open.weibo.com/wiki/2/friendships/followers/ids">friendships/followers/ids</a>
   * @since JDK 1.5
   */
  public String[] getFollowersIdsByName(String screen_name, Integer count,
      Integer cursor) throws WeiboException {
    return User.constructIds(Weibo.client.get(
        WeiboConfig.getValue("baseURL")
            + "friendships/followers/ids.json",
        new PostParameter[] {
            new PostParameter("screen_name", screen_name),
            new PostParameter("count", count.toString()),
            new PostParameter("cursor", cursor.toString()) }));
  }

  /**
   * 获取用户的活跃粉丝列表
   *
   * @param uid
   *            需要查询的用户ID
   * @return list of user's id
   * @throws WeiboException
   *             when Weibo service or network is unavailable
   * @version weibo4j-V2 1.0.0
   * @see <a
   *      href="http://open.weibo.com/wiki/2/friendships/followers/active">friendships/followers/active</a>
   * @since JDK 1.5
   */
  public UserWapper getFollowersActive(String uid) throws WeiboException {
    return User.constructWapperUsers(Weibo.client.get(
        WeiboConfig.getValue("baseURL")
            + "friendships/followers/active.json",
        new PostParameter[] { new PostParameter("uid", uid) }));
  }

  /**
   * 获取用户的活跃粉丝列表
   *
   * @param uid
   *            需要查询的用户ID
   * @param count
   *            返回的记录条数,默认为20,最大不超过200。
   * @return list of users
   * @throws WeiboException
   *             when Weibo service or network is unavailable
   * @version weibo4j-V2 1.0.0
   * @see <a
   *      href="http://open.weibo.com/wiki/2/friendships/followers/active">friendships/followers/active</a>
   * @since JDK 1.5
   */
  public UserWapper getFollowersActive(String uid, Integer count)
      throws WeiboException {
    return User.constructWapperUsers(Weibo.client.get(
        WeiboConfig.getValue("baseURL")
            + "friendships/followers/active.json",
        new PostParameter[] { new PostParameter("uid", uid),
            new PostParameter("count", count.toString()) }));
  }

  /**
   * 获取当前登录用户的关注人中又关注了指定用户的用户列表
   *
   * @param uid
   *            需要查询的用户ID
   * @return list of users
   * @throws WeiboException
   *             when Weibo service or network is unavailable
   * @version weibo4j-V2 1.0.0
   * @see <a
   *      href="http://open.weibo.com/wiki/2/friendships/friends_chain/followers">friendships/friends_chain/followers</a>
   * @since JDK 1.5
   */
  public UserWapper getFriendsChainFollowers(String uid)
      throws WeiboException {
    return User.constructWapperUsers(Weibo.client.get(
        WeiboConfig.getValue("baseURL")
            + "friendships/friends_chain/followers.json",
        new PostParameter[] { new PostParameter("uid", uid) }));
  }

  /**
   * 关注一个用户
   *
   * @param uid
   *            需要查询的用户ID
   * @return user
   * @throws WeiboException
   *             when Weibo service or network is unavailable
   * @version weibo4j-V2 1.0.0
   * @see <a
   *      href="http://open.weibo.com/wiki/2/friendships/create">friendships/create</a>
   * @since JDK 1.5
   */
  public User createFriendshipsById(String uid) throws WeiboException {
    return new User(Weibo.client.post(
        WeiboConfig.getValue("baseURL") + "friendships/create.json",
        new PostParameter[] { new PostParameter("uid", uid) })
        .asJSONObject());
  }

  /**
   * 关注一个用户
   *
   * @param screen_name
   *            需要查询的用户screen_name
   * @return user
   * @throws WeiboException
   *             when Weibo service or network is unavailable
   * @version weibo4j-V2 1.0.0
   * @see <a
   *      href="http://open.weibo.com/wiki/2/friendships/create">friendships/create</a>
   * @since JDK 1.5
   */
  public User createFriendshipsByName(String screen_name)
      throws WeiboException {
    return new User(Weibo.client.post(
        WeiboConfig.getValue("baseURL") + "friendships/create.json",
        new PostParameter[] { new PostParameter("screen_name",
            screen_name) }).asJSONObject());
  }

  /**
   * 取消关注一个用户
   *
   * @param uid
   *            需要查询的用户ID
   * @return user
   * @throws WeiboException
   *             when Weibo service or network is unavailable
   * @version weibo4j-V2 1.0.0
   * @see <a
   *      href="http://open.weibo.com/wiki/2/friendships/destroy">friendships/destroy</a>
   * @since JDK 1.5
   */
  public User destroyFriendshipsDestroyById(String uid) throws WeiboException {
    return new User(Weibo.client.post(
        WeiboConfig.getValue("baseURL") + "friendships/destroy.json",
        new PostParameter[] { new PostParameter("uid", uid) })
        .asJSONObject());
  }

  /**
   * 取消关注一个用户
   *
   * @param screen_name
   *            需要查询的用户screen_name
   * @return user
   * @throws WeiboException
   *             when Weibo service or network is unavailable
   * @version weibo4j-V2 1.0.0
   * @see <a
   *      href="http://open.weibo.com/wiki/2/friendships/destroy">friendships/destroy</a>
   * @since JDK 1.5
   */
  public User destroyFriendshipsDestroyByName(String screen_name)
      throws WeiboException {
    return new User(Weibo.client.post(
        WeiboConfig.getValue("baseURL") + "friendships/destroy.json",
        new PostParameter[] { new PostParameter("screen_name",
            screen_name) }).asJSONObject());
  }
}
TOP

Related Classes of weibo4j.Friendships

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.