OracleNotificationRequestクラスは、データベース内でサブスクライブする要求を表します。このクラスには、要求に関する情報と通知の特性が含まれます。OracleNotificationRequestクラスを使用して、Oracle Data Provider for .NETは適宜データベース内に通知登録を作成できます。
クラスの継承
System.Object
Oracle.DataAccess.Client.OracleNotificationRequest
宣言
// C# public sealed class OracleNotificationRequest
スレッド安全性
パブリック静的メソッドはスレッドセーフですが、メソッドではスレッド安全性は保証されません。
要件
ネームスペース: Oracle.DataAccess.Client
アセンブリ: Oracle.DataAccess.dll
Microsoft .NET Frameworkバージョン: 1.xまたは2.0
コメント: .NETストアド・プロシージャではサポートされません。
OracleNotificationRequestメンバーは次の表にリストされています。
OracleNotificationRequest静的メソッド
OracleNotificationRequest静的メソッドのリストを、表8-12に示します。
OracleNotificationRequestプロパティ
OracleNotificationRequestプロパティのリストを、表8-13に示します。
表8-13 OracleNotificationRequestプロパティ
| プロパティ | 説明 |
|---|---|
|
|
通知時に登録が削除されるかどうかを示します |
|
|
配信の前に、無効化メッセージを永続的にデータベースのキューに入れる必要があるかどうかを示します |
|
|
登録が存続する時間を指定します |
OracleNotificationRequestメソッド
OracleNotificationRequestメソッドのリストを、表8-14に示します。
表8-14 OracleNotificationRequestメソッド
| メソッド | 説明 |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
OracleNotificationRequest静的メソッドのリストを、表8-15に示します。
OracleNotificationRequestプロパティのリストを、表8-16に示します。
表8-16 OracleNotificationRequestプロパティ
| プロパティ | 説明 |
|---|---|
|
|
通知時に登録が削除されるかどうかを示します |
|
|
配信の前に、無効化メッセージを永続的にデータベースのキューに入れる必要があるかどうかを示します |
|
|
登録が存続する時間を指定します |
このプロパティは、通知時に登録が削除されるかどうかを示します。
宣言
// C#
public bool IsNotifiedOnce{get; set;}
プロパティ値
通知時に登録が削除されるかどうかを示すbool値
備考
デフォルトはtrueです。
正常な登録の完了後にこのプロパティを変更しても効果はありません。
このプロパティは、配信の前に無効化メッセージを永続的にデータベースのキューに入れる必要があるかどうかを示します。
宣言
// C#
public bool IsPersistent{get; set;}
プロパティ値
配信の前に無効化メッセージを永続的にデータベースにキューする必要があるかどうかを示すbool値
IsPersistentプロパティがTrueに設定されている場合、メッセージは永続的にデータベースのキューに入れられ、データベースのクラッシュ時または停止時に失われることはありません。IsPersistentプロパティがFalseに設定されている場合、メッセージは配信の前にメモリー・キューに格納されるので、失われる可能性があります。
このプロパティは、常に永続的なNotificationRegistrationには適用されません。
このプロパティは、送信後の通知メッセージに対してのみ適用されます。
備考
デフォルトはfalse
正常な登録の完了後にこのプロパティを変更しても効果はありません。
メッセージがメモリー・キューに格納された場合、データベース・キューの場合よりもデータベースは高速で動作します。
このプロパティは、登録が存続する時間を秒数で指定します。
宣言
// C#
public long Timeout{get; set}
プロパティ値
登録が存続する時間を秒数で指定するlong値。Timeoutプロパティの有効値は0〜4294967295です。デフォルトは50000です。
例外
ArgumentOutOfRangeException: 指定されたTimeout値が無効です。
備考
正常な登録の完了後にこのプロパティを変更しても効果はありません。
Timeoutプロパティが0に設定されている場合、登録が期限切れになることはありません。
登録の期限が切れたために登録が削除されると、データベースは期限切れを示す通知を送信します。
OracleNotificationRequestメソッドのリストを、表8-17に示します。