OracleNotificationEventArgs Class

The OracleNotificationEventArgs class provides event data for a notification.

Class Inheritance

Object

  EventArgs

    OracleNotificationEventArgs

Declaration

// C#
public sealed class OracleNotificationEventArgs

Thread Safety

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

Requirements

Namespace: Oracle.DataAccess.Client

Assembly: Oracle.DataAccess.dll

Comment: Not supported in a .NET stored procedure


OracleNotificationEventArgs Members

OracleNotificationEventArgs members are listed in the following tables:

OracleNotificationEventArgs Static Fields

The OracleNotificationEventArgs static field is listed in Table 7-18.

Table 7-18 OracleNotificationEventArgs Static Field

Static Field Description
Empty Inherited from EventArgs

OracleNotificationEventArgs Static Methods

The OracleNotificationEventArgs static method is listed in Table 7-19.

Table 7-19 OracleNotificationEventArgs Static Method

Static Method Description
Equals Inherited from Object

OracleNotificationEventArgs Properties

OracleNotificationEventArgs properties are listed in Table 7-20.

Table 7-20 OracleNotificationEventArgs Properties

Properties Description
Details Contains detailed information about the current notification
Info Indicates the database events for the notification
ResourceNames Indicates the database resources related to the current notification
Source Returns the database event source for the notification
Type Returns the database event type for the notification

OracleNotificationEventArgs Methods

OracleNotificationEventArgs methods are listed in Table 7-21.

Table 7-21 OracleNotificationEventArgs Methods

Methods Description
Equals Inherited from Object
GetHashCode Inherited from Object
GetType Inherited from Object
ToString Inherited from Object


OracleNotificationEventArgs Static Fields

The OracleNotificationEventArgs static field is listed in Table 7-22.

Table 7-22 OracleNotificationEventArgs Static Field

Static Field Description
Empty Inherited from EventArgs


OracleNotificationEventArgs Static Methods

The OracleNotificationEventArgs static method is listed in Table 7-23.

Table 7-23 OracleNotificationEventArgs Static Method

Static Method Description
Equals Inherited from Object


OracleNotificationEventArgs Properties

OracleNotificationEventArgs properties are listed in Table 7-24.

Table 7-24 OracleNotificationEventArgs Properties

Properties Description
Details Contains detailed information about the current notification
Info Indicates the database events for the notification
ResourceNames Indicates the database resources related to the current notification
Source Returns the database event source for the notification
Type Returns the database event type for the notification

Details

This property contains detailed information about the current notification.

Declaration

// C#
Public DataTable Details{get;}

Property Value

A DataTable instance that contains detailed information about the current notification.

Remarks

The returned DataTable object contains column data about the current notification in order as shown in Table 7-25.

Table 7-25 DataTable Object Column Data

Name Type Description
ResourceName System.String The resource name of the invalidated object in the format <Schema_name>.<object_name>
Info OracleNotificationInfo The information about the database event that occurs on a resource
Rowid System.String The rowid for the invalidated table row

For Database Change Notification:

  • The Details property indicates changes for each invalidated object in the notification in the data table.

  • When the Rowid column is explicitly included in the statement, then the rowid information is populated into the Rowid column. However, if a lot of rows are modified in a table, then the whole table is invalidated, and rowid information is not provided. That means the Rowid column is set to Null.

  • If the database event is related to a DDL change of the table or a table drop, then the Rowid column is set to Null.

Info

This property indicates the database events for the notification.

Declaration

// C#
public OracleNotificationInfo Info{get;}

Property Value

An OracleNotificationInfo value that indicates the database event for the notification.

Remarks

The OracleNotificationInfo value is an enumeration type. If several events are received from the invalidation message, the Info property is set to one of the OracleNotificationInfo enumeration values associated with the database events. For example, if a table has been altered and a new row has been inserted into another table, the Info property is set to either OracleNotificationInfo.Altered or OracleNotificationInfo.Insert.

To obtain more detailed information from the invalidation message, use the Details and the ResourceNames properties.

ResourceNames

This property indicates the database resources related to the current notification.

Declaration

// C#
public string[] ResourceNames{get;}

Property Value

A string array that indicates the database resources related to the current notification.

Remarks

For Database Change Notification, the ResourceNames property contains information about the invalidated object names in the format <schema_name>.<object _name>. To obtain more detailed information about the changes for invalidated objects, use the Details property.

Source

This property returns the database event source for the notification.

Declaration

// C#
public OracleNotificationSource Source{get;}

Property Value

The OracleNotificationSource value for the notification.

Remarks

The OracleNotificationSource value is an enumeration type. If several event sources are received from the notification message, the Source property is set to one of the OracleNotificationSource enumeration values related to the database event source. For example, if a table has been altered (by the ALTER TABLE command) and a new row has been inserted into the same table, the Source property is set to either OracleNotificationSource.Object or OracleNotificationSource.Data.

For Database Change Notification:

  • When the Source property is set to OracleNotificationSource.Data:

    • The Info property is set to one of the following:

      • OracleNotificationInfo.Insert

      • OracleNotificationInfo.Delete

      • OracleNotificationInfo.Update

    • The ResourceNames property is set, and the elements are set to the invalidated object names.

    • The Details property contains detailed information on the change of each invalidated table.

  • When the Source property is set to OracleNotificationSource.Database:

    • The Info property is set to one of the following:

      • OracleNotificationInfo.Startup

      • OracleNotificationInfo.Shutdown

      • OracleNotificationInfo.Shutdown_Any

      • OracleNotificationInfo.Dropped

  • When the Source property is set to OracleNotificationSource.Object:

    • The Info property is set to either OracleNotificationInfo.Altered or OracleNotificationInfo.Dropped.

    • The ResourceNames property is set, and the array elements of the ResourceNames property are set to the object names that have been altered or dropped.

    • The Details property contains detailed information on the changes of the object.

  • When the Source property is set to OracleNotificationSource.Subscription:

    • The Info property is set to the following:

      • OracleNotificationInfo.End

Type

This property returns the database event type for the notification.

Declaration

// C#
public OracleNotificationType Type{get;}

Property Value

An OracleNotificationType enumeration value that represents the type of the database event notification.

Remarks

The OracleNotificationType value is an enumeration type. If several event types are received from the notification message, then the Type property is set to one of the OracleNotificationType enumeration values related to the database event type.


OracleNotificationEventArgs Methods

OracleNotificationEventArgs methods are listed in Table 7-26.

Table 7-26 OracleNotificationEventArgs Methods

Methods Description
Equals Inherited from Object
GetHashCode Inherited from Object
GetType Inherited from Object
ToString Inherited from Object