OracleNotificationRequest Class

An OracleNotificationRequest class represents a notification request to be subscribed in the database. It contains information about the request and the characteristics of the notification. Using the OracleNotificationRequest class, Oracle Data Provider for .NET can create the notification registration in the database.

Class Inheritance

System.Object

  Oracle.DataAccess.Client.OracleNotificationRequest

Declaration

// C#
public sealed class OracleNotificationRequest

Requirements

Provider ODP.NET, Unmanaged Driver ODP.NET, Managed Driver
Assembly Oracle.DataAccess.dll Oracle.ManagedDataAccess.dll
Namespace Oracle.DataAccess.Client Oracle.ManagedDataAccess.Client
.NET Framework 3.5, 4.0, 4.5 4.0, 4.5

Not supported in a .NET stored procedure

Thread Safety

All public static methods are thread-safe, although methods do not guarantee thread safety.

OracleNotificationRequest Members

OracleNotificationRequest members are listed in the following tables.

OracleNotificationRequest Static Method

The OracleNotificationRequest static method is listed in Table 9-12.

Table 9-12 OracleNotificationRequest Static Method

Static Method Description

Equals

Inherited from System.Object


OracleNotificationRequest Properties

OracleNotificationRequest properties are listed in Table 9-13.

Table 9-13 OracleNotificationRequest Properties

Properties Description

IsNotifiedOnce

Indicates whether or not the registration is to be removed upon notification

IsPersistent

Indicates whether or not the notification message should be queued persistently in the database before delivery

Timeout

Specifies the time that the registration remains alive

GroupingNotificationEnabled

Specifies whether grouping notification is enabled or not

GroupingType

Specifies the type of grouping notification

GroupingInterval

Specifies the interval between grouping notifications, in seconds


OracleNotificationRequest Methods

OracleNotificationRequest methods are listed in Table 9-14.

Table 9-14 OracleNotificationRequest Methods

Methods Description

Equals

Inherited from System.Object

GetHashCode

Inherited from System.Object

GetType

Inherited from System.Object

ToString

Inherited from System.Object


OracleNotificationRequest Static Methods

The OracleNotificationRequest static method is listed in Table 9-15.

Table 9-15 OracleNotificationRequest Static Method

Static Method Description

Equals

Inherited from System.Object


OracleNotificationRequest Properties

The OracleNotificationRequest properties are listed in Table 9-16.

Table 9-16 OracleNotificationRequest Properties

Properties Description

IsNotifiedOnce

Indicates whether or not the registration is to be removed upon notification

IsPersistent

Indicates whether or not the notification message should be queued persistently in the database before delivery

Timeout

Specifies the time that the registration remains alive

GroupingNotificationEnabled

Specifies whether grouping notification is enabled or not

GroupingType

Specifies the type of grouping notification

GroupingInterval

Specifies the interval between grouping notifications, in seconds


IsNotifiedOnce

This property indicates whether or not the registration is to be removed upon notification.

Declaration

// C#
public bool IsNotifiedOnce{get; set;}

Property Value

A bool value that indicates whether or not the registration is to be removed upon notification.

Remarks

The default value is false for AQ. This is different from change notification where the default value is true.

Modifying this property after the completion of a successful registration has no effect.

IsPersistent

This property indicates whether or not the notification message should be queued persistently in the database until delivery.

Declaration

// C#
public bool IsPersistent{get; set;}

Property Value

A bool value that indicates whether or not the notifications should be stored persistently in the database until delivery.

When the IsPersistent property is set to True, the message is queued persistently in the database and cannot be lost upon database failures or shutdowns. When the IsPersistent property is set to False, the message is stored in an in-memory queue before delivery and could be lost.

This property does not apply to NotificationRegistration which is always persistent.

This property only applies to the notification message after it has been sent.

Remarks

The default value is false.

The database performs faster if the message is stored in an in-memory queue rather than a database queue.

Modifying this property after the completion of a successful registration has no effect.

This property is ignored for grouping notifications.

Timeout

This property specifies the time, in seconds, that the registration remains alive.

Declaration

// C#
public long Timeout{get; set}

Property Value

A long value that specifies the time, in seconds, that the registration remains alive. The valid values for the Timeout property are between 0 and 4294967295.

Exceptions

ArgumentOutOfRangeException - The specified Timeout is invalid.

Remarks

The default value is 0 (infinite) for AQ and 50000 for change notification. If the Timeout property is set to 0, then the registration does not expire.

If the registration is removed because the Timeout value has been reached, then the database sends a notification indicating the expiration.

Modifying this property after the completion of a successful registration has no effect.

GroupingNotificationEnabled

This property specifies whether grouping notification is enabled or not.

Declaration

// C#
public bool GroupingNotificationEnabled {get; set}

Property Value

A true value indicates that grouping notification is enabled. A false value indicates that grouping notification is disabled.

Remarks

The default value is false.

Modifying this property after the completion of a successful registration has no effect.

GroupingType

This property specifies the type of grouping notification.

Declaration

// C#
public OracleAQNotificationGroupingType GroupingType {get; set}

Property Value

An OracleAQNotificationGroupingType enum value

Remarks

The default value is OracleAQNotificationGroupingType.Summary.

Modifying this property after the completion of a successful registration has no effect.

GroupingInterval

This property specifies the interval of grouping notification in seconds. The group notifications are delivered at intervals specified by this property.

Declaration

// C#
public int GroupingInterval {get; set}

Property Value

An integer specifying the grouping interval in seconds.

Remarks

The default value is 600 seconds.

The range of GroupingInterval is from 0 to Int32.MaxValue.

Modifying this property after the completion of a successful registration has no effect.

OracleNotificationRequest Methods

OracleNotificationRequest methods are listed in Table 9-17.

Table 9-17 OracleNotificationRequest Methods

Methods Description

Equals

Inherited from System.Object

GetHashCode

Inherited from System.Object

GetType

Inherited from System.Object

ToString

Inherited from System.Object