| |
- MainOut
- Resource
- ResourceOut
- Session
- exceptions.Exception(exceptions.BaseException)
-
- IllegalStateError
class Resource |
| |
Methods defined here:
- __init__(self, io, uri)
- finish(self)
- found(self, opts={})
- サーバーから要求されたリソースが見つかった場合の処理をします。
opts: リソースオプション(ハッシュ型で、'mime_type', 'encoding', 'length'というキーでデータ型、文字コード、長さを設定することができます。)
戻り値: 出力先ストリームが返されます。
例:
Session#resolver を参照してください。
- missing(self)
|
class Session |
| |
Methods defined here:
- __enter__(self)
- __exit__(self, exc_type, exc_value, traceback)
- __init__(self, io, options={})
- セッションのコンストラクタです。
セッションの作成は通常DriverManager.phpのcti_get_sessionで行うため、
ユーザーがコンストラクタを直接呼び出す必要はありません。
io: ソケット
options: 接続オプション
- abort(self, mode)
- 変換処理の中断を要求します。
mode: 中断モード 0=生成済みのデータを出力して中断, 1=即時中断
- build_next(self)
- close(self)
- セッションを閉じます。
- get_server_info(self, 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
返り値: サーバー情報のデータ文字列(XML)
- join(self)
- 結果を結合します。
先にSession#set_continuous を呼び出しておく必要があります。
- property(self, name, value)
- プロパティを設定します。
セッションを作成した直後に呼び出してください。
利用可能なプロパティの一覧は{資料集}[http://dl.cssj.jp/docs/copper/3.0/html/5100_io-properties.html]を参照してください。
name: 名前
value: 値
- reset(self)
- 全ての状態をリセットします。
- resource(self, uri, opts={})
- リソース送信処理を行います。
Session#transcode および Session#transcode_server の前に呼び出してください。
uri: 仮想URI
opts: リソースオプション(ハッシュ型で、'mime_type', 'encoding', 'length'というキーでデータ型、文字コード、長さを設定することができます。)
戻り値: リソースの出力先ストリームが返されます。
例:
out = session.resource('test.css', {'mime_type' => 'test/css'})
try:
file = open('data/test.css')
try:
out.write(file.read())
finally:
file.close()
finally:
out.close()
- set_continuous(self, continuous)
- 複数の結果を結合するモードを切り替えます。
モードが有効な場合、 Session#join の呼び出しで複数の結果を結合して返します。
Session#transcode およびSession#transcode_server の前に呼び出してください。
continuous: 有効にするにはtrue
- set_message_func(self, message_func)
- エラーメッセージ受信のためのコールバック関数を設定します。
Session#transcode および Session#transcode_server の前に呼び出してください。
コールバック関数の引数は、エラーコード(int)、メッセージ(str)、付属データ(配列)です。
message_func: 関数
例:
def message_func(code, message, args):
print "%X %s" % (code, message)
session.set_message_func(message_func)
- set_output_as_directory(self, dir, prefix='', suffix='')
- 変換結果の出力先ディレクトリ名を指定します。
Session#set_results の簡易版です。
こちらは、複数の結果をファイルとして出力するディレクトリ名を直接設定することができます。
ファイル名は prefix ページ番号 suffix をつなげたものです。
dir: 出力先ディレクトリ名
prefix: 出力するファイルの名前の前に付ける文字列
suffix: 出力するファイルの名前の後に付ける文字列
- set_output_as_file(self, file)
- 変換結果の出力先ファイル名を指定します。
Session#set_results の簡易版です。
こちらは、1つだけ結果を出力するファイル名を直接設定することができます。
file: 出力先ファイル名
- set_output_as_stream(self, out)
- 変換結果の出力先リソースを指定します。
Session#set_results の簡易版です。
こちらは、1つだけの結果出力先を直接設定することができます。
out: 出力先 IO オブジェクト
- set_progress_func(self, progress_func)
- 進行状況受信のためのコールバック関数を設定します。
Session#transcode および Session#transcode_server の前に呼び出してください。
コールバック関数の引数は、全体のバイト数(int)、読み込み済みバイト数(int)です。
progress_func: 関数
例:
def progress_func(length, read):
print "%d %d" % (length, read)
session.set_progress_func(progress_func)
- set_resolver_func(self, resolver_func)
- リソース解決のためのコールバック関数を設定します。
Session#transcode および Session#transcode_server の前に呼び出してください。
コールバック関数の引数は、URI(str)、リソース出力クラス( Resource )です。
resolver_func: 関数
URIに対応するリソースが見つかった場合、 Resource#found メソッドを呼び出してください。
foundの呼び出しがない場合、リソースは見つからなかったものと扱われます。
例:
def resolver(uri, r):
if os.path.exists(uri):
out = r.found()
try:
file = open(uri)
try:
out.write(file.read())
finally:
file.close()
finally:
out.close()
session.set_resolver_func(resolver)
- set_results(self, results)
- 変換結果の出力先を指定します。
Session#transcode および Session#transcode_server の前に呼び出してください。
この関数を呼び出さないデフォルトの状態では、出力先は標準出力( sys.__stdout__ )になります。
また、デフォルトの状態では、自動的にContent-Type, Content-Lengthヘッダが送出されます。
results: 出力先のResults オブジェクト
- transcode(self, uri='.', opts={})
- 変換対象の文書リソースを送信し、変換処理を行います。
uri: 仮想URI
opts: リソースオプション(ハッシュ型で、'mime_type', 'encoding', 'length'というキーでデータ型、文字コード、長さを設定することができます。)
戻り値: リソースの出力先ストリームが返されます。
例:
out = session.transcode('.', {'mime_type' => 'text/html'})
try:
file = open('data/test.html')
try:
out.write(file.read())
finally:
file.close()
finally:
out.close()
- transcode_server(self, uri)
- サーバー側リソースを変換します。
uri: URI
| |