HttpClient 4 へ移行

今まで HttpClient 3.1 にしがみついていた私だけど、NTLM 問題とかあったりして、そろそろ HttpClient 4 に行かねばならんのかな、と思う今日この頃。というわけで、S2Robot 0.5 では HttpClient 4 系に移行します。S2Robot の基本的なインターフェースは変わらないと思うけど、S2Robot の BasicAuthentication というような認証系のクラスはインターフェースに変更したりしようと思います。そんな感じですが、問題がありましたらお知らせくださいー。

Sitemapsに対応

S2Robot で半年以上放置してきたサイトマップ対応をしました。sitemaps.xml とかをクロールの対象としてクロールすると、そのサイトマップのリンクを次のクロール先として展開します。対応するフォーマットとしては、XML Sitemaps、XML Sitemaps Index とテキスト(URLリスト)です(RSSとかは未対応)。というわけで、S2Robot もまた一つ成長しました 🙂 これに合わせて、Fess もサイトマップを使えるようになりました。URL として指定すれば、サイトマップのリンクをクロール対象にすることができます。Fess 2.0.0 もぼちぼちリリースしても良いかな、っと思い始めています。

s2robot-dbを細分化

現状、H2Database に依存していたり、DBFlute のバージョン問題があったりするので、その対応をした。まず、H2依存にするものは、s2robot-db-h2 というプロジェクトに分けた。そんで、DBFlute のバージョンの話は、S2Robot はライブラリとして利用するアプリが使うのだけど、アプリが dbflute-runtime の異なるバージョンを持つことができない問題があったので、org.seasar.robot.dbflute という感じでパッケージ名が異なるものを用意した。というわけで、今後は、s2robot-dbとs2robot-db-h2というような感じで、2つをpomに書く必要がある(s2robot-db-h2の方をDBごとに差し替える感じ)。というわけで、放置していたDB問題は解決かね。

あとは、現在、差分クロールが求められているので、それを実装しないといけないな…。UrlQueue のインターフェースを変える必要が気がしている。