今回はユーザーリスト関連最後のインターフェース、ListSubscribersMethods を見ていきます(記事一覧)。 ListSubscribersMethods インターフェースはリストの購読に関するメソッドが定義されています。
ListSubscribersMethods インターフェース
package twitter4j.api; public interface ListSubscribersMethods{ // ユーザーリストを購読する UserList createUserListSubscription(int listId); // ユーザーリストの購読者を取得する User showUserListSubscription(int listId, long userId); PagableResponseList<User> getUserListSubscribers(int listId, long cursor); // ユーザーリストの購読を解除する UserList destroyUserListSubscription(int listId); }
- 「create」、「show」、「destroy」は UserListSubscription ですが、ユーザーリストの全購読者を取得するメソッドは getUserListSubscribers() です。
- showUserListSubscription() メソッドの第1引数に指定したリストを第2引数に指定したユーザーが購読していない場合は TwitterException が投げられるようです。
- getUserListSubscribers() メソッドの第2引数に渡す long 値は PagableResponseList に関連するカーソル位置です。 使い方はListMethods#getUserLists() メソッドなどと同じです(こちら参照)。
getUserListSubscribers() メソッドは「ユーザーリストを指定して、それを購読しているユーザーを返す」メソッドで、以前見た ListMethods インターフェースの getUserListSubscriptions() メソッドは「ユーザーを指定して、そのユーザーが購読しているユーザーリストを返す」メソッドです。
サンプル・コード
@Grab('org.twitter4j:twitter4j-core:[2.2.5,)') import twitter4j.* def twitter = new TwitterFactory().getInstance() def waman = twitter.showUser('waman10da') def twitterDev = twitter.getUserLists('yusukey', -1L).find{ it.name == 'Twitter-dev' } // ユーザーリストを購読する twitter.createUserListSubscription(twitterDev.id) Thread.sleep(3000) // 処理完了待ちング // ユーザーリストの購読者を取得する twitter.showUserListSubscription(twitterDev.id, waman.id) // ユーザーリストの購読者全員を取得する twitter.getUserListSubscribers(twitterDev.id, -1L).each{ println it.name } // ユーザーリストの購読を解除する twitter.destroyUserListSubscription(twitterDev.id)
処理のイメージ図
twitter のサイト上で
Twitter API ポケットリファレンス (POCKET REFERENCE)
- 作者: 山本 裕介
- 出版社/メーカー: 技術評論社
- 発売日: 2011/07/15
- メディア: 単行本(ソフトカバー)
- 購入: 3人 クリック: 247回
- この商品を含むブログ (41件) を見る