HTTPのContent-Lengthヘッダを送るためには、結果全体のデータのバイト数を事前に知る必要がありますが、 CTIP 1.0ではプログレスリスナをその目的に使用することが出来ます。 プログレスリスナが要求した場合は、変換結果の先頭が得られる前に、結果全体のデータのバイト数が渡されます。
エラーハンドラは、変換処理の過程で出力された警告やエラー、処理情報を受け取るためのインターフェースです (処理情報を受け取る機能は後で追加されたため「エラーハンドラ」という名前になっています)。 エラーハンドラが受け取ることが出来るメッセージは以下の4つに分類されます。
種類 | コード | 説明 |
---|---|---|
警告 | 1 | 処理の続行が可能なエラーです。 入出力設定や、変換対象文書に問題がありますが、処理結果自体は得ることが出来ます。 |
エラー | 2 | 処理の続行が不可能になるか、出力結果を得られなくなるエラーです。 このエラーが発生した場合、正常な処理結果が得られることは期待出来ません(PDF等のデータが壊れている可能性があります)。 |
致命的エラー | 3 | 通信障害など、システムの問題に起因する深刻なエラーです。 このエラーが発生した場合、正常な処理結果が得られることは期待出来ません(PDF等のデータが壊れている可能性があります)。 |
処理情報 | 4 | これはエラーメッセージではありません。 出力済みのページ数、処理中の内容などの情報です。 |
以上のうち、コード4の処理情報は "カテゴリ:値" という形式で渡されます (Java版のドライバではカテゴリと値を別々に受け取ることも出来ます)。 カテゴリと値は、資料集のメッセージハンドラから取得出来る情報を参照してください。
プロトコルの仕様書は、以下のアドレスで公開しています。
http://sourceforge.jp/projects/copper/docs/ctip-v1