The PubSubState is used to expose and control the operation of a PubSub component. It is an enumeration of the possible states. The enumeration values are described in Table 1.

Table 1 – PubSubState Values

Value

Description

Disabled_0

The PubSub component is configured but currently disabled.

Paused_1

The PubSub component is enabled but currently paused by a parent component. The parent component is either Disabled_0 or Paused_1.

Operational_2

The PubSub component is operational.

Error_3

The PubSub component is in an error state.

Figure 19 depicts the PubSub components that have a PubSub state and their parent-child relationship. State changes of children are based on changes of the parent state. The root of the hierarchy is the PublishSubscribe component.

image022.png

Figure 19 – PubSub Component State Dependencies

Figure 20 describes the formal state machine with the possible transitions.

image023.png

Figure 20 – PubSubState State Machine

Table 2 formally defines the transitions of the state machine.

Table 2 – PubSubState State Machine

Source State

Target State

Trigger Description

Disabled_0

Paused_1

The component was successfully enabled but the parent component is in the state Disabled_0 or Paused_1.

Disabled_0

Operational_2

The component was successfully enabled.

Paused_1

Disabled_0

The component was successfully disabled.

Paused_1

Operational_2

The state of the parent component changed to Operational_2.

Operational_2

Disabled_0

The component was successfully disabled.

Operational_2

Paused_1

The state of the parent component changed to Disabled_0 or Paused_1.

Operational_2

Error_3

There is a pending error situation for the related PubSub component.

Error_3

Disabled_0

The component was successfully disabled.

Error_3

Paused_1

The state of the parent component changed to Disabled_0 or Paused_1.

Error_3

Operational_2

The error situation was resolved for the related PubSub component.