NAME

CTI::Session - セッション

概要

文書変換を実行するためのセッションです。

作者

$Date: 2011-01-20 20:01:03 +0900 (木, 20 1 2011) $ MIYABE Tatsuhiko


CTI::Session

new CTI::Session IOHANDLE HOST PORT [OPTIONS]

セッションのコンストラクタです。

セッションの作成は通常CTI::Driver::create_sessionで行うため、 ユーザーがコンストラクタを直接呼び出す必要はありません。

引数

IOHANDLE
        入出力ストリーム(通常はソケット)
OPTIONS
        接続オプション


CTI::Session->get_server_info

get_server_info URI

サーバー情報を返します。

詳細は以下をご覧下さい。

http://sourceforge.jp/projects/copper/wiki/CTIP2.0%E3%81%AE%E3%82%B5%E3%83%BC%E3%83%90%E3%83%BC%E6%83%85%E5%A0%B1

引数

URI
        サーバー情報のURI

戻り値

サーバー情報のデータ,失敗ならundef


CTI::Session->set_results

set_results RESULTS

変換結果の出力先を指定します。

transcodeおよびstart_mainの前に呼び出してください。 この関数を呼び出さない場合、出力先はCTI::Results::SingleResult->new(CTI::Builder::StreamBuilder->new(*STDOUT)になります。

引数

RESULTS
        出力先 Results。


CTI::Session->set_output_as_handle

set_output_as_handle OUTPUTHANDLE

変換結果の出力先ファイルハンドルを指定します。

set_resultsの簡易版です。 こちらは、1つだけ結果を出力するファイルハンドルを直接設定出来ます。

引数

OUTPUTHANDLE
        出力先ハンドル。
HEADER
        1ならContent-Type, Content-Lengthヘッダを出力する。


CTI::Session->set_output_as_file

set_output_as_file FILENAME>

変換結果の出力先ファイル名を指定します。

set_resultsの簡易版です。 こちらは、1つだけ結果を出力するファイル名を直接設定出来ます。

引数

FILENAME
        出力先ファイル名。


CTI::Session->set_output_as_directory

set_output_as_directory DIRNAME PREFIX SUFFIX

変換結果の出力先ディレクトリ名を指定します。

set_resultsの簡易版です。 こちらは、複数の結果をファイルとして出力するディレクトリ名を直接設定出来ます。 ファイル名は PREFIX ページ番号 SUFFIX をつなげたものです。

引数

DIRNAME
        出力先ディレクトリ名。
PREFIX
        出力するファイルの名前の前に付ける文字列。
SUFFIX
        出力するファイルの名前の後に付ける文字列。


CTI::Session->set_message_func

set_message_func FUNCTION

メッセージ受信のためのコールバック関数を設定します。

transcodeおよびstart_mainの前に呼び出してください。 コールバック関数の引数は、メッセージコード(int)、メッセージ(string)、引数(array)です。

引数

FUNCTION
        コールバック関数


CTI::Session->set_progress_func

set_progress_func FUNCTION

進行状況受信のためのコールバック関数を設定します。

transcodeおよびstart_mainの前に呼び出してください。 コールバック関数の引数は、変換前文書のサイズ(integer)、読み込み済みバイト数(integer)です。

引数

FUNCTION
        コールバック関数


CTI::Session->set_resolver_func

set_resolver_func FUNCTION

リソース解決のためのコールバック関数を設定します。

transcodeおよびstart_mainの前に呼び出してください。 コールバック関数の引数は、URI(string)と、リソースをサーバーに送るための、さらなるコールバック関数(function)です。

さらなるコールバック関数はURI(string)とOPTIONS(hash)を引数とし、出力先のファイルハンドルを返します。

引数

FUNCTION
        コールバック関数


CTI::Session->set_continuous

set_continuous MODE

複数の結果を結合するモードを切り替えます。 モードが有効な場合、join()の呼び出しで複数の結果を結合して返します。

transcodeおよびstart_mainの前に呼び出してください。

引数

MODE
        有効にするにはTRUE


CTI::Session->property

property NAME VALUE

プロパティを設定します。

セッションを作成した直後に呼び出してください。 利用可能なプロパティの一覧は「開発者ガイド」を参照してください。

引数

NAME
        名前
VALUE

戻り値

成功なら1,失敗ならundef


CTI::Session->transcode

transcode URI

サーバー側文書を変換します。

この関数は1つのセッションにつき1度だけ呼ぶことができます。

引数

URI
        変換対象のURI

戻り値

成功なら1,失敗ならundef


CTI::Session->start_resource

start_resource FILEHANDLE URI [OPTIONS]

クライアント側リソースの送信を開始します。

start_resource,end_resourceは対となります。 これらの関数はformat_mainおよびstart_mainの前に呼び出してください。

指定されたファイルハンドルに書き出されたデータがサーバーに送られます。 ファイルハンドルは新しく作成したものでも、既存のものでも構いません。 例えば、STDOUTを設定すれば、標準出力に書き出したデータがサーバーに送られます。 end_resourceを呼び出すと、ファイルハンドルの状態は元に戻ります。

IGNORE_HEADERに1を設定すると、出力される内容のヘッダ部分を無視します。 データの先頭から、空行までの間がヘッダと認識されます。

引数

FILEHANDLE
        ファイルハンドル
URI
        リソースの仮想URI
OPTIONS
        オプション mime_type => 'MIME型', encoding => 'キャラクタ・エンコーディイング', length => 予測されるデータサイズ(バイト), ignore_headers => ヘッダを除去する場合は1

戻り値

成功なら1,失敗ならundef


CTI::Session->end_resource

end_resource FILEHANDLE

リソースの送信を終了し、ファイルハンドルの状態を復帰します。

start_resource,end_resourceは対となります。 これらの関数はformat_mainおよびstart_mainの前に呼び出してください。

引数

FILEHANDLE
        ファイルハンドル

戻り値

成功なら1,失敗ならundef


CTI::Session->start_main

start_main FILEHANDLE URI [OPTIONS]

クライアント側の本体の送信を開始します。

start_main,end_mainは対となります。 本体の送信は1つのセッションにつき1度だけです。

指定されたファイルハンドルに書き出されたデータがサーバーに送られます。 ファイルハンドルは新しく作成したものでも、既存のものでも構いません。 例えば、STDOUTを設定すれば、標準出力に書き出したデータがサーバーに送られます。 end_mainを呼び出すと、ファイルハンドルの状態は元に戻ります。

IGNORE_HEADERに1を設定すると、出力される内容のヘッダ部分を無視します。 データの先頭から、空行までの間がヘッダと認識されます。

引数

FILEHANDLE
        ファイルハンドル
URI
        リソースの仮想URI
OPTIONS
        オプション mime_type => 'MIME型', encoding => 'キャラクタ・エンコーディイング', length => 予測されるデータサイズ(バイト), ignore_headers => ヘッダを除去する場合は1

戻り値

成功なら1,失敗ならundef


CTI::Session->end_main

end_main FILEHANDLE

本体の送信を終了し、ファイルハンドルの状態を復帰します。

start_main,end_mainは対となります。 本体の送信は1つのセッションにつき1度だけです。

引数

FILEHANDLE
        ファイルハンドル

戻り値

成功なら1,失敗ならundef


CTI::Session->abort

abort MODE

変換処理の中断を要求します。

引数

MODE
        中断モード 0=生成済みのデータを出力して中断, 1=即時中断

戻り値

成功なら1,失敗ならundef


CTI::Session->reset

reset

全ての状態をリセットします。

戻り値

成功なら1,失敗ならundef


CTI::Session->join

join

結果を結合します。

戻り値

成功なら1,失敗ならundef


CTI::Session->close

close

セッションを閉じます。

この関数の呼出し後、対象となったセッションに対するいかなる操作もできません。

戻り値

成功なら1,失敗ならundef