セッションだけの配信範囲
ファイルだけの配信範囲
特定のセッションのファイルだけの配信範囲
ファイルおよびセッションのどちらか、または両方への配信範囲
ファイルの配信範囲指定機能を使用できるのは、NFS ファイルシステムと UFS ファイルシステムだけです。たとえば、tmpfs ファイルシステムなどの他の型のファイルシステムでは、ファイルへの配信範囲は指定できません。
TT_SESSION
型は、セッションだけを配信範囲とします。静的セッション配信範囲指定のパターンは、明示的な tt_session_join 呼び出しに配信範囲の値を設定するように要求します。動的セッション配信範囲指定のパターンは、tt_session_join 呼び出しまたは tt_pattern_session_add
呼び出しのどちらかによって設定できます。
これらの呼び出しが指定するセッションは、デフォルトセッションでなければなりません。
例 3-1 は、静的セッション配信範囲指定のパターンを示します。例 3-2 は、動的セッション配信範囲指定のパターンを示します。
Obtain procid |
tt_open(); |
Ptype is scoped to session |
tt_ptype_declare(ptype); |
Join session |
tt_session_join(tt_default_session()); |
Obtain procid |
tt_open(); |
Create pattern |
Tt_pattern pat = tt_create_pattern(); |
Add scope to pattern |
tt_pattern_scope_add(pat, TT_SESSION); |
Add session to pattern |
tt_pattern_session_add(tt_default_session()); |
Register pattern |
tt_pattern_register(pat); |
TT_FILE
型は、ファイルだけを配信範囲とします。例 3-3 は、静的ファイル配信範囲指定のパターンを示します。例 3-4 は、動的ファイル配信範囲指定のパターンを示します。
Obtain procid |
tt_open(); |
Ptype is scoped to file |
tt_ptype_declare(ptype); |
Join file |
tt_file_join(file); |
Obtain procid |
tt_open(); |
Create pattern |
Tt_pattern pat = tt_create_pattern(); |
Add scope to pattern |
tt_pattern_scope_add(pat, TT_FILE); |
Add file to pattern |
tt_pattern_file_add (pat, file); |
Register pattern |
tt_pattern_register(pat); |
TT_FILE_IN_SESSION
型は、指定セッション内の指定ファイルだけを配信範囲とします。この配信範囲設定によってパターンは、ファイルとセッションの両方を配信範囲とするメッセージだけに一致します。例 3-5 では、セッションを追加してからパターンを登録します。
TT_FILE_IN_SESSION
配信範囲指定のパターンへのセッション追加
Obtain procid |
tt_open(); |
Create pattern |
Tt_pattern pat = tt_create_pattern(); |
Add scope to pattern |
tt_pattern_scope_add(pat,TT_FILE_IN_SESSION); |
Add file to pattern |
tt_pattern_file_add(pat, file); |
Add session to pattern |
tt_pattern_session_add(pat, tt_default_session()); |
Register pattern |
tt_pattern_register(pat); |
例 3-6 は、パターンを登録してからセッションを結合します。
TT_FILE_IN_SESSION
配信範囲指定のパターンのセッションを設定するためのセッション結合
Obtain procid |
tt_open(); |
Create pattern |
Tt_pattern pat = tt_create_pattern(); |
Add scope to pattern |
tt_pattern_scope_add(pat, TT_FILE_IN_SESSION); |
Add file to pattern |
tt_pattern_file_add(pat, file); |
Register pattern |
tt_pattern_register(pat); |
Join session |
tt_session_join(tt_default_session()); |
例 3-7 は、静的パターンの配信範囲の値を設定します。
TT_FILE_IN_SESSION
静的パターンの配信範囲値の設定
Obtain procid |
tt_open(); |
Declare Ptype |
Tt_ptype_declare(ptype); |
Join File |
tt_file_join(file); |
Join session |
tt_session_join(tt_default_session()); |
TT_BOTH
配信範囲指定のパターンは、ファイル、セッション、またはその両方へ配信範囲指定したメッセージと一致します。しかし、この配信範囲指定を使用する場合は、tt_file_join 呼び出しを明示的に行う必要があります。呼び出しを行わないと、ToolTalk サービスは登録されたパターンのファイルとセッションの両方に配信範囲指定したメッセージだけに一致します。例 3-8 と例 3-9 は、この配信範囲の使用例を示します。
TT_BOTH
配信範囲を使用する動的パターン
Obtain procid |
tt_open(); |
Create pattern |
Tt_pattern pat = tt_create_pattern(); |
Add scope to pattern |
tt_pattern_scope_add(pat, TT_BOTH); |
Add session to pattern |
tt_pattern_session_add(pat,tt_default_session()); |
Add file to pattern |
tt_pattern_file_add (pat, file); |
Register pattern |
tt_pattern_register(pat); |
TT_BOTH
配信範囲を使用する静的パターン
Obtain procid |
tt_open(); |
Declare Ptype |
Tt_ptype_declare(ptype); |
Join file |
tt_file_join(file) |
Join session |
tt_session_join(tt_default_session()); |
同じファイル属性を持つ TT_SESSION
配信範囲指定のメッセージと TT_SESSION
配信範囲指定のパターンを一致させるために、tt_pattern_file_add 呼び出しによって、ファイル属性を TT_SESSION
配信範囲指定のパターンに追加できます (詳細は、例 3-10 を参照してください)。
ファイル属性の値は、パターンの配信範囲に影響しません。
Obtain procid |
tt_open(); |
Create pattern |
Tt_pattern pat = tt_create_pattern(); |
Add scope to pattern |
tt_pattern_scope_add(pat, TT_SESSION); |
Add session to pattern |
tt_pattern_session_add(tt_default_session()); |
Add first file attribute to pattern |
tt_pattern_file_add(pat, file1); |
Add second file attribute to pattern |
tt_pattern_file_add(pat, file2); |
Register pattern |
tt_pattern_register(pat); |