今回はユーザーリストのメンバーに関するメソッドが定義されている ListMembersMethods インターフェースを見ていきます(記事一覧)。 このインターフェースに定義されているメソッドは、指定されたユーザーリストに対するユーザーの CRUD を行うと思えばいいでしょうか(update ないけど)。
ちなみに前回やった ListMethods インターフェースにはリストのメンバーに関連するメソッド getUserListMemberships() ってのがありましたが、これは「指定したユーザーをメンバーに含むリストを返す」メソッドでした。 ユーザーリストに登録されているユーザーに関しては何の操作もできません。
ListMembersMethods インターフェース
package twitter4j.api; public interface ListMembersMethods{ // メンバーの追加 UserList addUserListMember(int listId, long userId); UserList addUserListMembers(int listId, long[] userIds); UserList addUserListMembers(int listId, String[] screenNames); // メンバー(ユーザー)の取得 User showUserListMembership(int listId, long userId); PagableResponseList<User> getUserListMembers(int listId, long cursor); // メンバーの削除 UserList deleteUserListMember(int listId, long userId); }
- メンバーの追加には、単体追加 (addUserListMember()) と複数追加 (addUserListMembers()) が可能
- メンバーの取得には、特定ユーザー取得 (showUserListMembership()) と全ユーザー取得 (getUserListMembers()) が可能
サンプル・コード
ではサンプル・コード。 最初の部分で前回見た ListMethods のメソッドによってユーザーリストを作成しています:
@Grab('org.twitter4j:twitter4j-core:[2.2.4,)') import twitter4j.* def twitter = new TwitterFactory().getInstance() def scandal = [ 'scandal_haruna', 'scandal_tomomi', 'scandal_mami', 'scandal_rina' ] as String[] def scandalList = twitter.createUserList('scandal', true, '') Thread.sleep(3000) // 処理完了待ち(うまくいかない可能性アリ) // ユーザーをリストに加える addUserListMembers() twitter.addUserListMembers(scandalList.id, scandal) Thread.sleep(3000) // 処理完了待ち(うまくいかない可能性アリ) // リストのメンバーを取得する getUserListMembers() twitter.getUserListMembers(scandalList.id, -1L).each{ User user -> println user.name } // ユーザーがリストに含まれるかどうかをチェックする showUserListMembership() def haruna = twitter.showUser('scandal_haruna') twitter.showUserListMembership(scandalList.id, haruna.id) // リストに含まれている場合は User オブジェクトを返す try{ def tmr = twitter.showUser('TMR15') twitter.showUserListMembership(scandalList.id, tmr.id) // リストに含まれていない場合は例外 TwitterException を投げる assert false }catch(TwitterException){} // ユーザーをリストから削除する deleteUserListMember() twitter.deleteUserListMember(scandalList.id, haruna.id)
処理のイメージ図
twitter のサイト上で
ユーザーの削除も「リストに追加」から。
Twitter API ポケットリファレンス (POCKET REFERENCE)
- 作者: 山本 裕介
- 出版社/メーカー: 技術評論社
- 発売日: 2011/07/15
- メディア: 単行本(ソフトカバー)
- 購入: 3人 クリック: 247回
- この商品を含むブログ (41件) を見る