AppEngine/JavaでのURLFetchサービスのdeadlineは5秒だと思うけど、全てのURLFetch#fetchのdeadlineを自動的に10秒に設定するためのApiProxy.Delegateの実装を作成してみた。 仕組みはとても簡単、 URLFetch#fetchをフックして、サービスへリクエストされるバイト配列からURLFetchRequestに組み立てなおす。組み立てなおしたURLFetchRequestのURLFetchRequest#toBuilder()を使って、新たにURLFetchRequestを作成し、それに対してURLFetchRequest.Builder#setDeadline()する。setDeadline()したオブジェクトをバイト配列に変換し、サービスには何食わぬ顔でそのバイト配列を送りつける。gdata-apiを使うときなんかは5秒じゃ済