#Twitter4J 4.0.4 リリース – 長文DMサポート、Lambda表記サポートなど

Twitter4J 4.0.4をリリースしました。Maven central repositoryTwitter4J.orgのスナップショットリポジトリよりお使い頂けます。

マイグレーション

ごく一部、バイナリの非互換性があるため、バージョン4.0.4へ移行する際はプロジェクトを再ビルドしてください。

長文DMのサポート

Twitterは7月より140文字を超えるDMを送受信できるようになります。Twitter4J 4.0.4以降を使えばコードの変更なく長文DMを受け取るようになります。
twitter community.com: Removing the 140 character limit from Direct Messages

Lambda表記のサポート

Twitter4JがついにLambda表記をサポートしました。onStatus(Consumer)とonException(Consumer)を使うことでストリーミングAPIのリスナアクションをLambda表記で実装できます。
これは、Twitter4J固有のファンクショナルインターフェースを導入することで実現しており、Twitter4Jを引き続きJava6(Maven central repositoryバージョン)並びにJava5(twitter4j.orgバージョン)と互換性があります。

様々な箇所での可変長引数サポート

Twitter4Jは様々な箇所で可変長引数を受け取れるようになりました。スクリーン名や、フィルタリングの単語を指定するのに面倒なnew String[]{}を書く必要がなくなります。

ラムダ表記と可変長引数により、コードがいかにシンプルになるか、以下の例をご覧ください:
twitter4j/examples/lambda/TwitterStreamLambda.java

SavedSearch idタイプの移行

SavedSearchのidを保存するのにintは足りなくなりました。SavedSearch#getId()はlongを返すようになりました。SavedSearchの直列化形式は過去のリリースと互換性がありませんのでご注意ください。