Component Requirements
======================
**Coverage:** 100.0% (33 of 33 items OK)
.. _lobster-item-c8b44191e832598cf3c4a9b4ec123d0c51a5830c:
.. dropdown:: [OK] TRLC Compreq MessagePassing.SafetyCertifiedTransportMechanismUnderQNX
:class-title: sd-bg-success sd-text-white
.. pull-quote::
On the QNX operating system, the message passing component shall use the QNX-message-passing as the underlying IPC mechanism.
.. raw:: html
**Traces to:**
* :ref:`//score/message\_passing/dependability:dispatch `
* :ref:`//score/message\_passing/dependability:component\_message\_passing `
.. raw:: html
**Derived from:**
* :ref:`MessagePassing.OSIndependentAPI `
* :ref:`MessagePassing.SafetyCertifiedTransportMechanism `
.. raw:: html
**Source:** `score/message\_passing/dependability/requirements/component\_requirements.trlc:24:18 `__
.. _lobster-item-3ed3932e1617891c204fa9604d572b35dc411f5f:
.. dropdown:: [OK] TRLC Compreq MessagePassing.TransportMechanismOnLinux
:class-title: sd-bg-success sd-text-white
.. pull-quote::
On the Linux operating system, the message passing component shall use unix domain-sockets as the underlying IPC mechanism.
.. raw:: html
**Traces to:**
* :ref:`//score/message\_passing/dependability:dispatch `
* :ref:`//score/message\_passing/dependability:component\_message\_passing `
.. raw:: html
**Derived from:**
* :ref:`MessagePassing.OSIndependentAPI `
* :ref:`MessagePassing.SafetyCertifiedTransportMechanism `
.. raw:: html
**Source:** `score/message\_passing/dependability/requirements/component\_requirements.trlc:31:18 `__
.. _lobster-item-6557bfa98c4bae5d62c938e3ea7e7eb53014db1a:
.. dropdown:: [OK] TRLC Compreq MessagePassing.OSProvidedSenderIdentity
:class-title: sd-bg-success sd-text-white
.. pull-quote::
The message passing server shall be able to identify the sender of each received message by the sender's OS-provided user ID (UID).
.. raw:: html
**Traces to:**
* :ref:`//score/message\_passing/dependability:dispatch `
* :ref:`//score/message\_passing/dependability:component\_message\_passing `
.. raw:: html
**Derived from:**
* :ref:`MessagePassing.ServerInterface `
.. raw:: html
**Source:** `score/message\_passing/dependability/requirements/component\_requirements.trlc:39:18 `__
.. _lobster-item-c501eb139a55f89cfb7c496307b1bcd872600c07:
.. dropdown:: [OK] TRLC Compreq MessagePassing.UnforgableSenderIdentity
:class-title: sd-bg-success sd-text-white
.. pull-quote::
The transport mechanism shall ensure that the UID used to identify a message, cannot be forged by the client.
.. raw:: html
**Traces to:**
* :ref:`//score/message\_passing/dependability:dispatch `
* :ref:`//score/message\_passing/dependability:component\_message\_passing `
.. raw:: html
**Derived from:**
* :ref:`MessagePassing.ServerInterface `
.. raw:: html
**Source:** `score/message\_passing/dependability/requirements/component\_requirements.trlc:46:18 `__
.. _lobster-item-86f22d383c88746f7b1a8541a82c82113d652644:
.. dropdown:: [OK] TRLC Compreq MessagePassing.ServerCallbacksAreSequential
:class-title: sd-bg-success sd-text-white
.. pull-quote::
The server shall serialize all callbacks belonging to the same server instance, such that no two such callbacks execute concurrently.
.. raw:: html
**Traces to:**
* :ref:`//score/message\_passing/dependability:dispatch `
* :ref:`//score/message\_passing/dependability:component\_message\_passing `
.. raw:: html
**Derived from:**
* :ref:`MessagePassing.ServerInterface `
.. raw:: html
**Source:** `score/message\_passing/dependability/requirements/component\_requirements.trlc:57:18 `__
.. _lobster-item-d055e7db8e712723d4c4bc27bb00fa242bb9cc01:
.. dropdown:: [OK] TRLC Compreq MessagePassing.ServerProcessesSinglePendingRequest
:class-title: sd-bg-success sd-text-white
.. pull-quote::
The server shall not dispatch a new sent-with-reply message callback on a given \`ServerConnection\` until the preceding request has been replied to.
.. raw:: html
**Traces to:**
* :ref:`//score/message\_passing/dependability:dispatch `
* :ref:`//score/message\_passing/dependability:component\_message\_passing `
.. raw:: html
**Derived from:**
* :ref:`MessagePassing.SynchronousBidirectionalCommunication `
.. raw:: html
**Source:** `score/message\_passing/dependability/requirements/component\_requirements.trlc:64:18 `__
.. _lobster-item-b745dbd983c695bf2fb07b8fd7d2c16bb50da44b:
.. dropdown:: [OK] TRLC Compreq MessagePassing.ClientConnectionMaintainsStateMachine
:class-title: sd-bg-success sd-text-white
.. pull-quote::
The \`ClientConnection\` shall maintain a state machine with the states \`Starting\`, \`Ready\`, \`Stopping\`, and \`Stopped\`.
.. raw:: html
**Traces to:**
* :ref:`//score/message\_passing/dependability:dispatch `
* :ref:`//score/message\_passing/dependability:component\_message\_passing `
.. raw:: html
**Derived from:**
* :ref:`MessagePassing.OSIndependentAPI `
.. raw:: html
**Source:** `score/message\_passing/dependability/requirements/component\_requirements.trlc:71:18 `__
.. _lobster-item-10e701bb506b0eb2438cd78a3f4eebb1d08a3481:
.. dropdown:: [OK] TRLC Compreq MessagePassing.SynchronousSendBlocksUntilServerReceives
:class-title: sd-bg-success sd-text-white
.. pull-quote::
The \`ClientConnection\` shall block the calling thread during a \`Send\` call until the message has been and accepted by the server's receive buffer, when no client-side send queue is configured.
.. raw:: html
**Traces to:**
* :ref:`//score/message\_passing/dependability:dispatch `
* :ref:`//score/message\_passing/dependability:component\_message\_passing `
.. raw:: html
**Derived from:**
* :ref:`MessagePassing.SynchronousUnidirectionalCommunication `
.. raw:: html
**Source:** `score/message\_passing/dependability/requirements/component\_requirements.trlc:78:18 `__
.. _lobster-item-afe85853812a354dea018656cd2af46571a459dd:
.. dropdown:: [OK] TRLC Compreq MessagePassing.AsynchronousSendReturnsAfterLocalAcceptance
:class-title: sd-bg-success sd-text-white
.. pull-quote::
The \`ClientConnection\` shall return from a Send call after the message has been accepted by the local message passing layer, when a client-side send queue is configured.
.. raw:: html
**Traces to:**
* :ref:`//score/message\_passing/dependability:dispatch `
* :ref:`//score/message\_passing/dependability:component\_message\_passing `
.. raw:: html
**Derived from:**
* :ref:`MessagePassing.AsynchronousUnidirectionalCommunication `
.. raw:: html
**Source:** `score/message\_passing/dependability/requirements/component\_requirements.trlc:85:18 `__
.. _lobster-item-49c2ba97fad1c38fa0189a26fb40195e574ec529:
.. dropdown:: [OK] TRLC Compreq MessagePassing.SendWaitReplyBlocksUntilServerReply
:class-title: sd-bg-success sd-text-white
.. pull-quote::
The ClientConnection shall block the calling thread during a SendWaitReply call until a reply from the server is received or an error is detected.
.. raw:: html
**Traces to:**
* :ref:`//score/message\_passing/dependability:dispatch `
* :ref:`//score/message\_passing/dependability:component\_message\_passing `
.. raw:: html
**Derived from:**
* :ref:`MessagePassing.SynchronousBidirectionalCommunication `
.. raw:: html
**Source:** `score/message\_passing/dependability/requirements/component\_requirements.trlc:92:18 `__
.. _lobster-item-f871af82c845b3a754171fd902ecb1414dd2b223:
.. dropdown:: [OK] TRLC Compreq MessagePassing.MessageOrderPreservationPerConnection
:class-title: sd-bg-success sd-text-white
.. pull-quote::
The message passing component shall deliver messages of the same delivery type from the same \`IClientConnection\` instance to the server in the order they were sent.
.. raw:: html
**Traces to:**
* :ref:`//score/message\_passing/dependability:dispatch `
* :ref:`//score/message\_passing/dependability:component\_message\_passing `
.. raw:: html
**Derived from:**
* :ref:`MessagePassing.PointToPointConnections `
.. raw:: html
**Source:** `score/message\_passing/dependability/requirements/component\_requirements.trlc:99:18 `__
.. _lobster-item-31c4cdad17b7cec7f6b373a7c95856a8f5f32b60:
.. dropdown:: [OK] TRLC Compreq MessagePassing.SingleServerInstancePerServiceIdentifier
:class-title: sd-bg-success sd-text-white
.. pull-quote::
The message passing component shall prevent more than one active \`IServer\` instance serves a any given service identifier at any point in time.
.. raw:: html
**Traces to:**
* :ref:`//score/message\_passing/dependability:dispatch `
* :ref:`//score/message\_passing/dependability:component\_message\_passing `
.. raw:: html
**Derived from:**
* :ref:`MessagePassing.PointToPointConnections `
.. raw:: html
**Source:** `score/message\_passing/dependability/requirements/component\_requirements.trlc:106:18 `__
.. _lobster-item-183811174f434c563f661cf8157bf17baee6345f:
.. dropdown:: [OK] TRLC Compreq MessagePassing.IServerStartListeningAPI
:class-title: sd-bg-success sd-text-white
.. pull-quote::
\`IServer\` shall provide a \`StartListening\` method that registers connection, disconnection, fire-and-forget message, and sent-with-reply message callbacks.
.. raw:: html
**Traces to:**
* :ref:`//score/message\_passing/dependability:dispatch `
* :ref:`//score/message\_passing/dependability:component\_message\_passing `
.. raw:: html
**Derived from:**
* :ref:`MessagePassing.ServerInterface `
.. raw:: html
**Source:** `score/message\_passing/dependability/requirements/component\_requirements.trlc:117:18 `__
.. _lobster-item-757bfb1d3471e29e6c51ac3225df5d266b4cea0a:
.. dropdown:: [OK] TRLC Compreq MessagePassing.IServerStopListeningAPI
:class-title: sd-bg-success sd-text-white
.. pull-quote::
\`IServer\` shall provide a \`StopListening\` method that releases all registered callbacks and closes all active server connections.
.. raw:: html
**Traces to:**
* :ref:`//score/message\_passing/dependability:dispatch `
* :ref:`//score/message\_passing/dependability:component\_message\_passing `
.. raw:: html
**Derived from:**
* :ref:`MessagePassing.ServerInterface `
.. raw:: html
**Source:** `score/message\_passing/dependability/requirements/component\_requirements.trlc:124:18 `__
.. _lobster-item-005415bbc9f45d23a36d2617c687e2debad5c6d0:
.. dropdown:: [OK] TRLC Compreq MessagePassing.IClientConnectionSendAPI
:class-title: sd-bg-success sd-text-white
.. pull-quote::
\`IClientConnection\` shall provide a Send method that accepts a byte-span message and transmits it to the server.
.. raw:: html
**Traces to:**
* :ref:`//score/message\_passing/dependability:dispatch `
* :ref:`//score/message\_passing/dependability:component\_message\_passing `
.. raw:: html
**Derived from:**
* :ref:`MessagePassing.SynchronousUnidirectionalCommunication `
.. raw:: html
**Source:** `score/message\_passing/dependability/requirements/component\_requirements.trlc:131:18 `__
.. _lobster-item-6e728e91024a876cdec182d4f682689d0804e3af:
.. dropdown:: [OK] TRLC Compreq MessagePassing.IClientConnectionSendWaitReplyAPI
:class-title: sd-bg-success sd-text-white
.. pull-quote::
\`IClientConnection\` shall provide a \`SendWaitReply\` method that accepts a message byte span and a reply buffer span and returns the received reply payload trimmed to its actual size.
.. raw:: html
**Traces to:**
* :ref:`//score/message\_passing/dependability:dispatch `
* :ref:`//score/message\_passing/dependability:component\_message\_passing `
.. raw:: html
**Derived from:**
* :ref:`MessagePassing.SynchronousBidirectionalCommunication `
.. raw:: html
**Source:** `score/message\_passing/dependability/requirements/component\_requirements.trlc:138:18 `__
.. _lobster-item-abffce41799847c784bb944e3203696831784cb2:
.. dropdown:: [OK] TRLC Compreq MessagePassing.IClientConnectionSendWithCallbackAPI
:class-title: sd-bg-success sd-text-white
.. pull-quote::
\`IClientConnection\` shall provide a \`SendWithCallback\` method that accepts a message byte span and a reply callback and returns after the message has been accepted by the local message passing layer.
.. raw:: html
**Traces to:**
* :ref:`//score/message\_passing/dependability:dispatch `
* :ref:`//score/message\_passing/dependability:component\_message\_passing `
.. raw:: html
**Derived from:**
* :ref:`MessagePassing.AsynchronousUnidirectionalCommunication `
.. raw:: html
**Source:** `score/message\_passing/dependability/requirements/component\_requirements.trlc:145:18 `__
.. _lobster-item-ce1e28811ef2eba814c18734437de3ddf42a8fca:
.. dropdown:: [OK] TRLC Compreq MessagePassing.IServerConnectionReplyAPI
:class-title: sd-bg-success sd-text-white
.. pull-quote::
\`IServerConnection\` shall provide a Reply method that accepts a byte-span message and delivers it as the reply to the pending REQUEST from the client.
.. raw:: html
**Traces to:**
* :ref:`//score/message\_passing/dependability:dispatch `
* :ref:`//score/message\_passing/dependability:component\_message\_passing `
.. raw:: html
**Derived from:**
* :ref:`MessagePassing.SynchronousBidirectionalCommunication `
.. raw:: html
**Source:** `score/message\_passing/dependability/requirements/component\_requirements.trlc:152:18 `__
.. _lobster-item-6aaa777799dad7c90cc9ecbb8b4e133712a1b198:
.. dropdown:: [OK] TRLC Compreq MessagePassing.IServerConnectionNotifyAPI
:class-title: sd-bg-success sd-text-white
.. pull-quote::
\`IServerConnection\` shall provide a \`Notify\` method that accepts a byte-span message and sends it as an asynchronous notification to the client.
.. raw:: html
**Traces to:**
* :ref:`//score/message\_passing/dependability:dispatch `
* :ref:`//score/message\_passing/dependability:component\_message\_passing `
.. raw:: html
**Derived from:**
* :ref:`MessagePassing.ServerInterface `
.. raw:: html
**Source:** `score/message\_passing/dependability/requirements/component\_requirements.trlc:159:18 `__
.. _lobster-item-e7192f4a9a7501652ec85cfc6c48f5d5a3a7219f:
.. dropdown:: [OK] TRLC Compreq MessagePassing.ClientFactoryCreateAPI
:class-title: sd-bg-success sd-text-white
.. pull-quote::
\`IClientFactory\` shall provide a \`Create\` method that accepts a \`ServiceProtocolConfig\` and a \`ClientConfig\` and returns a new \`IClientConnection\` instance configured for the service specified by the \`ServiceProtocolConfig\`.
.. raw:: html
**Traces to:**
* :ref:`//score/message\_passing/dependability:dispatch `
* :ref:`//score/message\_passing/dependability:component\_message\_passing `
.. raw:: html
**Derived from:**
* :ref:`MessagePassing.OSIndependentAPI `
.. raw:: html
**Source:** `score/message\_passing/dependability/requirements/component\_requirements.trlc:166:18 `__
.. _lobster-item-0b4b44fdb75f2e9b126bbe4282a599b8ded87a18:
.. dropdown:: [OK] TRLC Compreq MessagePassing.ServerFactoryCreateAPI
:class-title: sd-bg-success sd-text-white
.. pull-quote::
\`IServerFactory\` shall provide a \`Create\` method that accepts a \`ServiceProtocolConfig\` and a \`ServerConfig\` and returns a new \`IServer\` instance configured for the service specified by the \`ServiceProtocolConfig\`.
.. raw:: html
**Traces to:**
* :ref:`//score/message\_passing/dependability:dispatch `
* :ref:`//score/message\_passing/dependability:component\_message\_passing `
.. raw:: html
**Derived from:**
* :ref:`MessagePassing.OSIndependentAPI `
.. raw:: html
**Source:** `score/message\_passing/dependability/requirements/component\_requirements.trlc:173:18 `__
.. _lobster-item-c13e294a8f2f6da60233f825387fa209993bcd5e:
.. dropdown:: [OK] TRLC Compreq MessagePassing.IClientConnectionGetStateAPI
:class-title: sd-bg-success sd-text-white
.. pull-quote::
\`IClientConnection\` shall provide a \`GetState\` method that returns the current connection state.
.. raw:: html
**Traces to:**
* :ref:`//score/message\_passing/dependability:dispatch `
* :ref:`//score/message\_passing/dependability:component\_message\_passing `
.. raw:: html
**Derived from:**
* :ref:`MessagePassing.OSIndependentAPI `
.. raw:: html
**Source:** `score/message\_passing/dependability/requirements/component\_requirements.trlc:180:18 `__
.. _lobster-item-302f9a749d97475b33976026e8e9f61909baf6d4:
.. dropdown:: [OK] TRLC Compreq MessagePassing.ServerPreallocatesConnectionObjects
:class-title: sd-bg-success sd-text-white
.. pull-quote::
The server shall preallocate memory for the number of \`IServerConnection\` objects specified by \`ServerConfig::pre\_alloc\_connections\` at construction time, without allocating additional memory for each incoming client connection.
.. raw:: html
**Traces to:**
* :ref:`//score/message\_passing/dependability:dispatch `
* :ref:`//score/message\_passing/dependability:component\_message\_passing `
.. raw:: html
**Derived from:**
* :ref:`MessagePassing.AllowsBoundedMonotonicMemoryAllocation `
.. raw:: html
**Source:** `score/message\_passing/dependability/requirements/component\_requirements.trlc:191:18 `__
.. _lobster-item-555d71af7fc08ec1339fbb5c5b96ff1f415c02cd:
.. dropdown:: [OK] TRLC Compreq MessagePassing.ServerRingBufferQueueSizeConfigurable
:class-title: sd-bg-success sd-text-white
.. pull-quote::
The server shall implement the shared incoming message queue as a ring buffer with the number of slots equal to \`ServerConfig::max\_queued\_sends\`, configured at construction time.
.. raw:: html
**Traces to:**
* :ref:`//score/message\_passing/dependability:dispatch `
* :ref:`//score/message\_passing/dependability:component\_message\_passing `
.. raw:: html
**Derived from:**
* :ref:`MessagePassing.AllowsBoundedMonotonicMemoryAllocation `
.. raw:: html
**Source:** `score/message\_passing/dependability/requirements/component\_requirements.trlc:198:18 `__
.. _lobster-item-272611f1645a3f2b4b09c19b6c2523be5967f3df:
.. dropdown:: [OK] TRLC Compreq MessagePassing.ServerConnectionRefusal
:class-title: sd-bg-success sd-text-white
.. pull-quote::
The server shall enable the connection callback to reject an incoming client connection by returning an error, without establishing a server connection for the rejected client.
.. raw:: html
**Traces to:**
* :ref:`//score/message\_passing/dependability:dispatch `
* :ref:`//score/message\_passing/dependability:component\_message\_passing `
.. raw:: html
**Derived from:**
* :ref:`MessagePassing.ServerInterface `
.. raw:: html
**Source:** `score/message\_passing/dependability/requirements/component\_requirements.trlc:205:18 `__
.. _lobster-item-8346b9cd08a8a5abcb4448d33f2e0dacdab4d5f4:
.. dropdown:: [OK] TRLC Compreq MessagePassing.ServerIConnectionHandlerDispatch
:class-title: sd-bg-success sd-text-white
.. pull-quote::
The server shall invoke the \`IConnectionHandler\` virtual methods of the \`UserData\` object for a given \`IServerConnection\` in place of the server-wide callbacks, when the UserData holds an \`IConnectionHandler\` instance.
.. raw:: html
**Traces to:**
* :ref:`//score/message\_passing/dependability:dispatch `
* :ref:`//score/message\_passing/dependability:component\_message\_passing `
.. raw:: html
**Derived from:**
* :ref:`MessagePassing.ServerInterface `
.. raw:: html
**Source:** `score/message\_passing/dependability/requirements/component\_requirements.trlc:212:18 `__
.. _lobster-item-66271ff8c7107c2e1b8995a1e15a26f9038768c5:
.. dropdown:: [OK] TRLC Compreq MessagePassing.ClientConnectionSendQueuePreallocation
:class-title: sd-bg-success sd-text-white
.. pull-quote::
The \`ClientConnection\` shall preallocate send queue storage for the number of asynchronous messages specified by \`ClientConfig::max\_queued\_sends\` at construction time.
.. raw:: html
**Traces to:**
* :ref:`//score/message\_passing/dependability:dispatch `
* :ref:`//score/message\_passing/dependability:component\_message\_passing `
.. raw:: html
**Derived from:**
* :ref:`MessagePassing.AllowsBoundedMonotonicMemoryAllocation `
.. raw:: html
**Source:** `score/message\_passing/dependability/requirements/component\_requirements.trlc:223:18 `__
.. _lobster-item-ad9ec3c0cd9d9745f5292397166c0dcb4a9fed9b:
.. dropdown:: [OK] TRLC Compreq MessagePassing.ClientConnectionSharedResourceEngineInjection
:class-title: sd-bg-success sd-text-white
.. pull-quote::
The \`ClientConnection\` shall accept an \`ISharedResourceEngine\` instance as a constructor parameter, which shouldbe the exclusive provider forall shared resources.
.. raw:: html
**Traces to:**
* :ref:`//score/message\_passing/dependability:dispatch `
* :ref:`//score/message\_passing/dependability:component\_message\_passing `
.. raw:: html
**Derived from:**
* :ref:`MessagePassing.SingletonFreeImplementation `
.. raw:: html
**Source:** `score/message\_passing/dependability/requirements/component\_requirements.trlc:231:18 `__
.. _lobster-item-03da5be8c9ef4a170a61a8f5ff9b075879a71521:
.. dropdown:: [OK] TRLC Compreq MessagePassing.ClientConnectionMockInjectionForTesting
:class-title: sd-bg-success sd-text-white
.. pull-quote::
The \`ClientConnection\` shall use the \`ISharedResourceEngine\` interface for all OS interactions.
.. raw:: html
**Traces to:**
* :ref:`//score/message\_passing/dependability:dispatch `
* :ref:`//score/message\_passing/dependability:component\_message\_passing `
.. raw:: html
**Derived from:**
* :ref:`MessagePassing.AllowsResourceMockInjectionForTesting `
.. raw:: html
**Source:** `score/message\_passing/dependability/requirements/component\_requirements.trlc:238:18 `__
.. _lobster-item-11eb8bac40cdaa960d87c16b5bdfe1d4dd04a76c:
.. dropdown:: [OK] TRLC Compreq MessagePassing.ClientConnectionSendFailsWhenStopped
:class-title: sd-bg-success sd-text-white
.. pull-quote::
The \`ClientConnection\` shall return an error for a Send call when the connection is in the \`Stopped\` state.
.. raw:: html
**Traces to:**
* :ref:`//score/message\_passing/dependability:dispatch `
* :ref:`//score/message\_passing/dependability:component\_message\_passing `
.. raw:: html
**Derived from:**
* :ref:`MessagePassing.SynchronousUnidirectionalCommunication `
.. raw:: html
**Source:** `score/message\_passing/dependability/requirements/component\_requirements.trlc:246:18 `__
.. _lobster-item-c68576219af5b2d13cae61823a18d0ad0d3425cc:
.. dropdown:: [OK] TRLC Compreq MessagePassing.ClientConnectionSendWaitReplyFailsWhenStopped
:class-title: sd-bg-success sd-text-white
.. pull-quote::
The \`ClientConnection\` shall return an error for a \`SendWaitReply\` call when the connection is in the \`Stopped\` state.
.. raw:: html
**Traces to:**
* :ref:`//score/message\_passing/dependability:dispatch `
* :ref:`//score/message\_passing/dependability:component\_message\_passing `
.. raw:: html
**Derived from:**
* :ref:`MessagePassing.SynchronousBidirectionalCommunication `
.. raw:: html
**Source:** `score/message\_passing/dependability/requirements/component\_requirements.trlc:253:18 `__
.. _lobster-item-64eb4e6b36d587b042da259a2fc0aa57676f334c:
.. dropdown:: [OK] TRLC Compreq MessagePassing.ClientConnectionSendWithCallbackFailsWhenStopped
:class-title: sd-bg-success sd-text-white
.. pull-quote::
The \`ClientConnection\` shall return an error for a \`SendWithCallback\` call when the connection is in the \`Stopped\` state.
.. raw:: html
**Traces to:**
* :ref:`//score/message\_passing/dependability:dispatch `
* :ref:`//score/message\_passing/dependability:component\_message\_passing `
.. raw:: html
**Derived from:**
* :ref:`MessagePassing.AsynchronousUnidirectionalCommunication `
.. raw:: html
**Source:** `score/message\_passing/dependability/requirements/component\_requirements.trlc:260:18 `__
.. _lobster-item-4f82140f2d70e45a9068394b471a0fef0390bfd7:
.. dropdown:: [OK] TRLC Compreq MessagePassing.ClientConnectionStateCallbackInvocation
:class-title: sd-bg-success sd-text-white
.. pull-quote::
The \`ClientConnection\` shall invoke the registered \`StateCallback\` each time the connection state changes, passing the new state as the argument.
.. raw:: html
**Traces to:**
* :ref:`//score/message\_passing/dependability:dispatch `
* :ref:`//score/message\_passing/dependability:component\_message\_passing `
.. raw:: html
**Derived from:**
* :ref:`MessagePassing.OSIndependentAPI `
.. raw:: html
**Source:** `score/message\_passing/dependability/requirements/component\_requirements.trlc:267:18 `__