OracleAQEnqueueOptionsクラスは、OracleAQQueueにメッセージをエンキューする際に使用できるオプションを表します。
クラスの継承
System.Object
OracleAQEnqueueOptions
宣言
// C# public sealed class OracleAQEnqueueOptions : ICloneable
スレッド安全性
パブリック静的メソッドはスレッドセーフですが、インスタンス・メソッドではスレッド安全性は保証されません。
要件
ネームスペース: Oracle.DataAccess.Client
アセンブリ: Oracle.DataAccess.dll
Microsoft .NET Framework Version: 2.0以降
OracleAQEnqueueOptionsメンバーを、次の各表に示します。
OracleAQEnqueueOptionsコンストラクタ
OracleAQEnqueueOptionsコンストラクタを、表12-9にリストします。
OracleAQEnqueueOptionsプロパティ
OracleAQEnqueueOptionsプロパティを、表12-10にリストします。
表12-10 OracleAQEnqueueOptionsプロパティ
| プロパティ | 説明 |
|---|---|
|
|
エンキューされるメッセージの配信モードを指定します。 |
|
|
新規メッセージを現行トランザクションの一部としてエンキューするかどうかを指定します。 |
OracleAQEnqueueOptionsパブリック・メソッド
OracleAQEnqueueOptionsパブリック・メソッドを、表12-11にリストします。
このコンストラクタは、OracleAQEnqueueOptionsクラスのインスタンスをデフォルトのプロパティ値で作成します。
宣言
// C# public OracleAQEnqueueOptions();
OracleAQEnqueueOptionsプロパティを、表12-12にリストします。
表12-12 OracleAQEnqueueOptionsプロパティ
| プロパティ | 説明 |
|---|---|
|
|
エンキューされるメッセージの配信モードを指定します。 |
|
|
新規メッセージを現行トランザクションの一部としてエンキューするかどうかを指定します。 |
このインスタンス・プロパティは、エンキューされるメッセージの配信モードを指定します。
宣言
// C#
public OracleAQMessageDeliveryMode DeliveryMode {get;set;}
例外
ArgumentOutOfRangeException: 指定したVisibility値が無効です。
備考
有効な値は次の列挙値のいずれかです。
OracleAQMessageDeliveryMode.Persistent
OracleAQMessageDeliveryMode.Buffered
デフォルトはOracleAQMessageDeliveryMode.Persistentです。
OracleAQMessageDeliveryMode.PersistentOrBufferedは、このプロパティには設定できません。
OracleAQMessageDeliveryMode.Bufferedは、Oracle Database 10gリリース2(10.2)以上でのみ指定できます。バッファ・メッセージングは、8.1以上のデータベース互換性レベルで作成されたすべてのキュー表でサポートされます。
このインスタンス・プロパティは、新規メッセージを現行トランザクションの一部としてエンキューするかどうかを指定します。
宣言
// C#
public OracleAQVisibilityMode Visibility {get;set;}
プロパティ値
OracleAQVisibilityModeの列挙値。
例外
ArgumentOutOfRangeException: 指定したVisibility値が無効です。
備考
デフォルト値はOracleAQVisibilityMode.OnCommitです。デフォルト値を使用してエンキューのコミットまたはロールバックを行う場合、トランザクションを使用します。デフォルトの可視性モードOracleAQVisibilityMode.OnCommitを使用する際にトランザクションを使用しない場合、メッセージはキューにエンキューされません。
別の可視性モードの値OracleAQVisibilityMode.Immediateを使用する場合、トランザクションを使用する必要がなくなります。エンキュー操作が失敗してもキューには影響しません。そのような場合、メッセージはキューにエンキューされません。
OracleAQEnqueueOptionsパブリック・メソッドを、表12-13にリストします。
このメソッドは、OracleAQEnqueueOptionsオブジェクトのコピーを作成します。
宣言
// C# public object Clone();
戻り値
OracleAQEnqueueOptionsオブジェクト。
実装
ICloneable。
備考
複製されたオブジェクトのプロパティ値は、複製元のオブジェクトのプロパティ値と同じです。