今回は、今後重要になってきそうな型を少し詳しく見ていきます(記事一覧)。 見ていく型は次の2つのインターフェースです:
- twitter4j.User インターフェース
- twitter4j.TwitterResponse インターフェース
一応、どちらも前回出てきましたね。
User インターフェース
twitter4j.User インターフェースは twitter ユーザーを表す型です。 型定義はこんなの(JavaDoc):
public interface User extends java.lang.Comparable<User>, TwitterResponse, java.io.Serializable{ ... }
User インターフェースも TwitterResponse インターフェース を継承しているんですね。 ユーザー名をクリックしたときの応答として返されたりするんでしょうか。
さて、以下では User インターフェースから取得できるプロパティを見ていきます。 User インターフェースも前回見た Status インターフェース同様、immutable を想定して設計されているようです。 したがって、プロパティといってもそれに対応する getter メソッド(もしくは boolean 値の場合 isXxxx() メソッド)があるだけです。 以下、いくつかクラス図のようなものを書いてますが、メソッドでなくプロパティなのは単純に字数とスペースの省略のためです。
User インターフェースのプロパティはたくさんあるので、勝手に分類して見ていきましょう:
- ユーザー情報
- プロフィール
- デザイン
- 公開情報
- その他
ユーザー情報
ユーザー情報は
から閲覧できます(自分のものだけですが)。 こんなページです:
ここから設定できるプロパティには以下のものがあります:
プロパティ名 | 型 | 備考 |
---|---|---|
name | String | 名前(漢字、スペース OK) |
screenName | String | ユーザー名 |
lang | String | 言語選択 |
translator | boolean | 翻訳者 |
timeZone | String | タイムゾーン |
utcOffset | int | タイム ゾーンの UTC オフセット*1 |
geoEnabled | boolean | ツイートに位置情報を追加する |
showAllInlineMedia | boolean | ??? |
followRequestSent | boolean | ??? |
protected | boolean | ??? |
いくつか、たぶんこの分類だろうけどよくわからん、ってのがありました。 ??? のやつ。
プロフィール
プロフィールはユーザー情報と同サイトの「プロフィール」タブから閲覧できます:
これに関係するプロパティは
プロパティ名 | 型 | 備考 |
---|---|---|
profileImageURL | URL | |
profileImageUrlHttps | URL | アイコン |
location | String | 場所 |
URL | URL | ウェブ |
description | String | 自己紹介 |
「名前」はユーザー情報で書いたので、表では省略。
デザイン
デザインは「デザイン」タブから。
↓背景画像を変更↓
↓デザインと色を変更する↓
プロパティは "profile" から始まるものです。 ただし、profileImageURL, prifileImageURLHttps は「プロフィール」で見ました。
プロパティ名 | 型 | 色の設定箇所 |
---|---|---|
profileUseBackgroundImage | boolean | 背景画像を使うかどうか |
profileBackgroundImageUrl | String | |
profileBackgroundImageUrlHttps | String | 背景画像の URL |
profileBackgroundTiled | boolean | 「背景画像をタイルする」かどうか |
profileBackgroundColor | String | 「背景」の色 |
profileTextColor | String | 「テキスト」の色 |
profileLinkColor | String | 「リンク」の色 |
profileSidebarFillColor | String | 「サイドバー」の色 |
profileSidebarBorderColor | String | 「サイドバーの輪郭」の色 |
色は文字列 (java.lang.String) 型ですが、文字列の内容は16進数の数値です。 HTML 等で使える名前付き色ではないもよう。
公開プロフィール
公開プロフィールは
- http://twitter.com/#!/《ユーザー名》
でアクセスできるサイトです。 見た目はこんなの:
ここに表示されている「フォローしている」数や「フォローされている」数を取得できるメソッドも定義されています。 プロパティ形式で書くと下表の通り:
プロパティ名 | 型 | 取得できる数 |
---|---|---|
statusesCount | int | Tweets |
favouritesCount | int | お気に入り |
friendsCount | int | フォローしている |
followersCount | int | フォローされている |
listedCount | int | リスト |
ユーザー情報のページにて、ツイートプライバシーの箇所で「ツイートを非公開にする。」にチェックを入れると、公開プロフィールのページに「リクエスト」という項目が表示されるようですが、ここでは考慮してません。 プロパティの followerRequestSent がそれに関連するものかと思いますが・・・
その他
その他のプロパティ。
プロパティ名 | 型 | 備考 |
---|---|---|
id | long | ユーザーの ID |
createdAt | Date | ユーザーの作成日時 |
status | Status | ユーザーの現在のステータス |
contributorsEnabled | boolean | ??? contributors 関連の何か |
verified | boolean | ??? 本人確認とかかな? |
accessLevel rateLimitStatus |
int RateLimitStatus |
TwitterResponse から継承したプロパティ |
TwitterResponse インターフェース
twitter4j.TwitterResponse インターフェースは twitter の応答を表す型です。 このインターフェースを拡張している型には以下のようなものがあります:
- Status ・・・ ステータス : StatusMethods
- User ・・・ ユーザー(情報)
- IDs ・・・ ID を表す long 値のリスト(配列)
- AccountSettings
- AccountTotals
- DirectMessage
- PagableResponseList<T>
- ProfileImage
- RelatedResults
- Relationship
- ResponseList<T>
- SavedSearch
- SimilarPlaces
- Trend
- TwitterAPIConfiguration
- UserList
ResponseList, IDs, ResponseList, PagableResponseList は継承関係があるのでクラス図を描いておきます:
CursorSupport インターフェースは TwitterResponse とは継承関係はありませんが、IDs と PagableResponseList が拡張しています。
TwitterResponse は前回扱った Status インターフェースや今回扱った User インターフェースは TwitterResponse を拡張しています。 他にも TwitterException クラスも TwitterResponse インターフェースを実装しているんですね。 今後見ていく Twitter API で、これらの応答を返すメソッドが出てくるんでしょう。
TwitterResponse インターフェースには2つのメソッドのみ定義されています:
メソッド名 | 返り値 | 備考 |
---|---|---|
getAccessLevel | int | 返されうる値は TwitterResponse に定義されている定数 |
getRateLimitStatus | twitter4j.RateLimitStatus | Twitter REST API の rate limit status だそうデス |
getAccessLevel() メソッドで返される値は TwitterResponse インターフェースに定義されている以下の定数のみです:
定数名 | 備考 |
---|---|
NON | |
READ | 読み込みのみ |
READ_WRITE | 読み書きのみ |
READ_WRITE_DIRECTMESSAGES | 読み書き、ダイレクトメッセージにアクセス可 |
Twitter API ポケットリファレンス (POCKET REFERENCE)
- 作者: 山本 裕介
- 出版社/メーカー: 技術評論社
- 発売日: 2011/07/15
- メディア: 単行本(ソフトカバー)
- 購入: 3人 クリック: 247回
- この商品を含むブログ (41件) を見る
*1:グレゴリオ標準時 (GMT) からのズレ。 日本だと +9時間 = +32400秒。