3.1.1.3.23 Subscriptions Table

The entries in the Subscriptions table represent subscriptions to event classes in a publisher-subscriber framework.

Table identifier: {5A84E823-7277-11D2-9029-3078302C2030}

AuxiliaryGuid: None.

Defined in catalog version: All catalog versions.

Prerequisites: None.

Hidden bitness property: No.

Supported query templates:

Cell 1

Cell 2

SubscriberConglomerationIdentifier equals <A>.

SubscriberCLSID equals <B>.

Primary key: SubscriptionIdentifier

Other referential constraints:

There MUST be an entry in the ComponentsAndFullConfigurations table for which the values of the CLSID, PublisherID, and ConglomerationIdentifier (and for catalog version 4.00 and catalog version 5.00 the PartitionIdentifier) properties are identical to this entry's EventClassID, PublisherIdentifier, and EventClassConglomerationIdentifier (and EventClassPartitionIdentifier) properties, respectively.

Write restrictions: No restrictions.

Cascade:

On removal of an entry, all entries in the SubscriptionPublisherProperties and SubscriptionSubscriberProperties with an identical value for SubscriptionIdentifier MUST be removed.

Populate: None.

Properties:

Index (3.00)

Index (4.00/5.00)

Property name

Type

Size

Flags

Meta

0

0

SubscriptionIdentifier

eDT_GUID

16

0x00000003

RO

1

1

Name

eDT_LPWSTR

variable

0x00000002

2

2

EventClassId

eDT_GUID

16

0x00000000

RO

3

3

MethodName

eDT_LPWSTR

variable

0x00000000

4

4

SubscriberCLSID

eDT_GUID

16

0x00000000

5

5

PerUser

eDT_ULONG

4

0x00000000

6

6

UserName

eDT_LPWSTR

variable

0x00000000

7

7

Enabled

eDT_ULONG

4

0x00000000

8

8

Description

eDT_LPWSTR

variable

0x00000000

9

9

MachineName

eDT_LPWSTR

variable

0x00000000

10

10

PublisherIdentifier

eDT_LPWSTR

variable

0x00000000

RO

11

11

IID

eDT_GUID

16

0x00000000

12

12

FilterCriteria

eDT_LPWSTR

variable

0x00000000

13

13

Internal1

eDT_LPWSTR

variable

0x00000000

IN

14

14

SubscriberMoniker

eDT_LPWSTR

variable

0x00000000

TR

15

15

Queued

eDT_ULONG

4

0x00000000

16

16

Internal2

eDT_BYTES

4 or 8

0x00000000

IN

-

17

EventClassPartitionIdentifier

eDT_GUID

16

0x00000000

-

18

EventClassConglomerationIdentifier

eDT_GUID

16

0x00000000

-

19

SubscriberPartitionIdentifier

eDT_GUID

16

0x00000000

RO

-

20

SubscriberConglomerationIdentifier

eDT_GUID

16

0x00000000

In the previous table, the internal property (marked with IN in the Meta column) MUST NOT be written to or interpreted by the client. The server's use of this property is implementation-specific, because it does not affect interoperability.

Internal1 can legally have a maximum size of 4 or 8, at the option of the server implementation.<238> Note, however, that because this is a nonfixed size eDT_BYTES property, the actual size of its value will always be explicitly given in its wire representation (see TableDataFixed (section 2.2.1.10)).

SubscriptionIdentifier: This specifies the identity of the subscription.<239>

Name: A NameProperty (section 2.2.2.6) providing a human-readable name for the subscription.<240>

EventClassId: The CLSID of the EventClass associated with the subscription.<241>

MethodName: If not null, a NameProperty that provides the name of the event method for which the subscriber application wishes to receive events.<242>

SubscriberCLSID: The CLSID of the component that is the subscriber to the subscription.

PerUser: A BooleanProperty (section 2.2.2.9) that indicates whether or not the subscription is to be bound to a user identity.<243>

UserName: A SecurityPrincipalNameProperty (section 2.2.2.17) identifying the security principal that created the subscription.<244>

Enabled: A BooleanProperty that indicates whether or not the subscription is enabled such that the publisher applications can publish events to it.<245>

Description: A DescriptionProperty (section 2.2.2.7) providing a human-readable description of the subscription.<246>

MachineName: A ComputerNameOrAddressProperty (section 2.2.2.16) identifying the server on which the subscriber component is hosted.<247>

PublisherIdentifier: If not null, a NameProperty identifying the publisher application for which the subscription accepts events.<248>

IID: The IID of the event interface for which the subscription is created.<249>

FilterCriteria: An ORBSpecificSubscriptionFilterCriteriaProperty (section 2.2.2.13.8) representing application provided criteria specified as a string in an ORB-specific syntax to filter events for the subscription.<250>

SubscriberMoniker: An ORBSpecificAlternateActivationProperty (section 2.2.2.13.9) providing an ORB-specific string used for activation of the subscriber component.<251>

Queued: A BooleanProperty that indicates whether or not the ORB is to deliver the event to the subscriber using a queuing protocol.<252>

EventClassPartitionIdentifier: The partition identifier of the partition in which the configuration of the event class resides.<253>

EventClassConglomerationIdentifier: The conglomeration identifier of the conglomeration in which the event class is configured.

SubscriberPartitionIdentifier: The partition identifier of the partition in which the subscriber resides.<254>

SubscriberConglomerationIdentifier: The conglomeration identifier of the conglomeration in which the subscriber is configured.