Component Requirements#
Coverage: 0.0% (0 of 40 items OK)
[PARTIAL] TRLC Compreq MessagePassing.SafetyCertifiedTransportMechanismUnderQNX
On the QNX operating system, the message passing component shall use the QNX-message-passing as the underlying IPC mechanism.
Traces to:
missing reference to Unit Test
Derived from:
Source: score/message_passing/dependability/requirements/component_requirements.trlc:19:18
[PARTIAL] TRLC Compreq MessagePassing.TransportMechanismOnLinux
On the Linux operating system, the message passing component shall use unix domain-sockets as the underlying IPC mechanism.
Traces to:
missing reference to Unit Test
Derived from:
Source: score/message_passing/dependability/requirements/component_requirements.trlc:26:18
[PARTIAL] TRLC Compreq MessagePassing.OSProvidedClientIdentityPerConnection
The message passing server shall identify the client of a Server Connection once, when the connection is accepted, by the client’s OS-provided process ID (PID), user ID (UID), and primary group ID (GID).
Traces to:
missing reference to Unit Test
Derived from:
Source: score/message_passing/dependability/requirements/component_requirements.trlc:34:18
[PARTIAL] TRLC Compreq MessagePassing.ServerCallbacksAreSequential
The server shall serialize all callbacks belonging to the same server instance, such that no two such callbacks execute concurrently.
Traces to:
missing reference to Unit Test
Derived from:
Source: score/message_passing/dependability/requirements/component_requirements.trlc:46:18
[PARTIAL] TRLC Compreq MessagePassing.ServerProcessesSinglePendingRequest
The server shall not dispatch a new sent-with-reply message callback on a given `ServerConnection` until the preceding request has been replied to.
Traces to:
missing reference to Unit Test
Derived from:
Source: score/message_passing/dependability/requirements/component_requirements.trlc:53:18
[PARTIAL] TRLC Compreq MessagePassing.ClientConnectionMaintainsStateMachine
The `ClientConnection` shall maintain a state machine with the states `Starting`, `Ready`, `Stopping`, and `Stopped`.
Traces to:
missing reference to Unit Test
Derived from:
Source: score/message_passing/dependability/requirements/component_requirements.trlc:60:18
[PARTIAL] TRLC Compreq MessagePassing.ClientSendUsesDirectTransportCallByDefault
The `ClientConnection` shall issue the `Send` message via an immediate OS-level transport call, which may block the calling thread, unless `ClientConfig::truly_async` is configured, or a `SendWaitReply`/`SendWithCallback` reply is currently pending on the same connection while `ClientConfig::fully_ordered` is configured.
Traces to:
missing reference to Unit Test
Derived from:
Source: score/message_passing/dependability/requirements/component_requirements.trlc:67:18
[PARTIAL] TRLC Compreq MessagePassing.ClientSendQueuesForAsyncOrOrderingReasons
The `ClientConnection` shall enqueue the `Send` message for asynchronous delivery by the background transport, returning after local acceptance, whenever `ClientConfig::truly_async` is configured, or whenever a `SendWaitReply`/`SendWithCallback` reply is currently pending on the same connection while `ClientConfig::fully_ordered` is configured.
Traces to:
missing reference to Unit Test
Derived from:
Source: score/message_passing/dependability/requirements/component_requirements.trlc:75:18
[PARTIAL] TRLC Compreq MessagePassing.SendWaitReplyBlocksUntilServerReply
The ClientConnection shall block the calling thread during a SendWaitReply call until a reply from the server is received or an error is detected.
Traces to:
missing reference to Unit Test
Derived from:
Source: score/message_passing/dependability/requirements/component_requirements.trlc:83:18
[PARTIAL] TRLC Compreq MessagePassing.MessageOrderPreservationPerConnection
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.
Traces to:
missing reference to Unit Test
Derived from:
Source: score/message_passing/dependability/requirements/component_requirements.trlc:90:18
[PARTIAL] TRLC Compreq MessagePassing.SingleServerInstancePerServiceIdentifier
The message passing component shall prevent more than one active `IServer` instance serves any given service identifier at any point in time.
Traces to:
missing reference to Unit Test
Derived from:
Source: score/message_passing/dependability/requirements/component_requirements.trlc:97:18
[PARTIAL] TRLC Compreq MessagePassing.IServerStartListeningAPI
`IServer` shall provide a `StartListening` method that registers connection, disconnection, fire-and-forget message, and sent-with-reply message callbacks.
Traces to:
missing reference to Unit Test
Derived from:
Source: score/message_passing/dependability/requirements/component_requirements.trlc:108:18
[PARTIAL] TRLC Compreq MessagePassing.IServerStopListeningAPI
`IServer` shall provide a `StopListening` method that releases all registered callbacks and closes all active server connections.
Traces to:
missing reference to Unit Test
Derived from:
Source: score/message_passing/dependability/requirements/component_requirements.trlc:115:18
[PARTIAL] TRLC Compreq MessagePassing.IClientConnectionSendAPI
`IClientConnection` shall provide a Send method that accepts a byte-span message and transmits it to the server.
Traces to:
missing reference to Unit Test
Derived from:
Source: score/message_passing/dependability/requirements/component_requirements.trlc:122:18
[PARTIAL] TRLC Compreq MessagePassing.IClientConnectionSendWaitReplyAPI
`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.
Traces to:
missing reference to Unit Test
Derived from:
Source: score/message_passing/dependability/requirements/component_requirements.trlc:129:18
[PARTIAL] TRLC Compreq MessagePassing.IClientConnectionSendWithCallbackAPI
`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.
Traces to:
missing reference to Unit Test
Derived from:
Source: score/message_passing/dependability/requirements/component_requirements.trlc:136:18
[PARTIAL] TRLC Compreq MessagePassing.IServerConnectionReplyAPI
`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.
Traces to:
missing reference to Unit Test
Derived from:
Source: score/message_passing/dependability/requirements/component_requirements.trlc:143:18
[PARTIAL] TRLC Compreq MessagePassing.IServerConnectionNotifyAPI
`IServerConnection` shall provide a `Notify` method that accepts a byte-span message and sends it as an asynchronous notification to the client.
Traces to:
missing reference to Unit Test
Derived from:
Source: score/message_passing/dependability/requirements/component_requirements.trlc:150:18
[PARTIAL] TRLC Compreq MessagePassing.ClientFactoryCreateAPI
`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`.
Traces to:
missing reference to Unit Test
Derived from:
Source: score/message_passing/dependability/requirements/component_requirements.trlc:157:18
[PARTIAL] TRLC Compreq MessagePassing.ServerFactoryCreateAPI
`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`.
Traces to:
missing reference to Unit Test
Derived from:
Source: score/message_passing/dependability/requirements/component_requirements.trlc:164:18
[PARTIAL] TRLC Compreq MessagePassing.ClientFactoryEngineSharingAPI
`ClientFactory` shall provide a constructor accepting a `shared_ptr<Engine>` and a `GetEngine` accessor, so that it can share a single `Engine` instance with other `ClientFactory`/`ServerFactory` instances in the same process instead of each owning its own.
Traces to:
missing reference to Unit Test
Derived from:
Source: score/message_passing/dependability/requirements/component_requirements.trlc:171:18
[PARTIAL] TRLC Compreq MessagePassing.ServerFactoryEngineSharingAPI
`ServerFactory` shall provide a constructor accepting a `shared_ptr<Engine>` and a `GetEngine` accessor, so that it can share a single `Engine` instance with other `ClientFactory`/`ServerFactory` instances in the same process instead of each owning its own.
Traces to:
missing reference to Unit Test
Derived from:
Source: score/message_passing/dependability/requirements/component_requirements.trlc:178:18
[PARTIAL] TRLC Compreq MessagePassing.IClientConnectionGetStateAPI
`IClientConnection` shall provide a `GetState` method that returns the current connection state.
Traces to:
missing reference to Unit Test
Derived from:
Source: score/message_passing/dependability/requirements/component_requirements.trlc:185:18
[PARTIAL] TRLC Compreq MessagePassing.IClientConnectionGetStopReasonAPI
`IClientConnection` shall provide a `GetStopReason` method that returns the reason for the most recent transition to the `Stopping`/`Stopped` state.
Traces to:
missing reference to Unit Test
Derived from:
Source: score/message_passing/dependability/requirements/component_requirements.trlc:192:18
[PARTIAL] TRLC Compreq MessagePassing.IClientConnectionStartAPI
`IClientConnection` shall provide a `Start` method that begins connecting to the server, registering the state and notification callbacks for the connection’s lifetime.
Traces to:
missing reference to Unit Test
Derived from:
Source: score/message_passing/dependability/requirements/component_requirements.trlc:199:18
[PARTIAL] TRLC Compreq MessagePassing.IClientConnectionStopAPI
`IClientConnection` shall provide a `Stop` method that ends the existing connection.
Traces to:
missing reference to Unit Test
Derived from:
Source: score/message_passing/dependability/requirements/component_requirements.trlc:206:18
[PARTIAL] TRLC Compreq MessagePassing.IClientConnectionRestartAPI
`IClientConnection` shall provide a `Restart` method that attempts to bring a stopped connection back to the `Starting` state.
Traces to:
missing reference to Unit Test
Derived from:
Source: score/message_passing/dependability/requirements/component_requirements.trlc:213:18
[PARTIAL] TRLC Compreq MessagePassing.IServerConnectionGetClientIdentityAPI
`IServerConnection` shall provide a `GetClientIdentity` method that returns the client’s OS-provided process ID (PID), user ID (UID), and primary group ID (GID), established once when the connection was accepted.
Traces to:
missing reference to Unit Test
Derived from:
Source: score/message_passing/dependability/requirements/component_requirements.trlc:220:18
[PARTIAL] TRLC Compreq MessagePassing.IServerConnectionGetUserDataAPI
`IServerConnection` shall provide a `GetUserData` method that returns the `UserData` object associated with the connection, as returned by the connection callback when the connection was accepted.
Traces to:
missing reference to Unit Test
Derived from:
Source: score/message_passing/dependability/requirements/component_requirements.trlc:228:18
[PARTIAL] TRLC Compreq MessagePassing.ServerPreallocatesConnectionObjects
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.
Traces to:
missing reference to Unit Test
Derived from:
Source: score/message_passing/dependability/requirements/component_requirements.trlc:239:18
[PARTIAL] TRLC Compreq MessagePassing.ServerRingBufferQueueSizeConfigurable
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.
Traces to:
missing reference to Unit Test
Derived from:
Source: score/message_passing/dependability/requirements/component_requirements.trlc:246:18
[PARTIAL] TRLC Compreq MessagePassing.ServerConnectionRefusal
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.
Traces to:
missing reference to Unit Test
Derived from:
Source: score/message_passing/dependability/requirements/component_requirements.trlc:253:18
[PARTIAL] TRLC Compreq MessagePassing.ServerIConnectionHandlerDispatch
The server shall invoke the `IConnectionHandler` virtual methods of the `UserData` object for a given `IServerConnection` instead of the server-wide callbacks, when the UserData holds an `IConnectionHandler` instance.
Traces to:
missing reference to Unit Test
Derived from:
Source: score/message_passing/dependability/requirements/component_requirements.trlc:260:18
[PARTIAL] TRLC Compreq MessagePassing.ClientConnectionSendQueuePreallocation
The `ClientConnection` shall preallocate send queue storage for the number of asynchronous messages specified by `ClientConfig::max_queued_sends` at construction time.
Traces to:
missing reference to Unit Test
Derived from:
Source: score/message_passing/dependability/requirements/component_requirements.trlc:271:18
[PARTIAL] TRLC Compreq MessagePassing.ClientConnectionSharedResourceEngineInjection
The `ClientConnection` shall accept an `ISharedResourceEngine` instance as a constructor parameter, which shouldbe the exclusive provider forall shared resources.
Traces to:
missing reference to Unit Test
Derived from:
Source: score/message_passing/dependability/requirements/component_requirements.trlc:279:18
[PARTIAL] TRLC Compreq MessagePassing.ClientConnectionMockInjectionForTesting
The `ClientConnection` shall use the `ISharedResourceEngine` interface for all OS interactions.
Traces to:
missing reference to Unit Test
Derived from:
Source: score/message_passing/dependability/requirements/component_requirements.trlc:286:18
[PARTIAL] TRLC Compreq MessagePassing.ClientConnectionSendFailsWhenStopped
The `ClientConnection` shall return an error for a Send call when the connection is in the `Stopped` state.
Traces to:
missing reference to Unit Test
Derived from:
Source: score/message_passing/dependability/requirements/component_requirements.trlc:294:18
[PARTIAL] TRLC Compreq MessagePassing.ClientConnectionSendWaitReplyFailsWhenStopped
The `ClientConnection` shall return an error for a `SendWaitReply` call when the connection is in the `Stopped` state.
Traces to:
missing reference to Unit Test
Derived from:
Source: score/message_passing/dependability/requirements/component_requirements.trlc:301:18
[PARTIAL] TRLC Compreq MessagePassing.ClientConnectionSendWithCallbackFailsWhenStopped
The `ClientConnection` shall return an error for a `SendWithCallback` call when the connection is in the `Stopped` state.
Traces to:
missing reference to Unit Test
Derived from:
Source: score/message_passing/dependability/requirements/component_requirements.trlc:308:18
[PARTIAL] TRLC Compreq MessagePassing.ClientConnectionStateCallbackInvocation
The `ClientConnection` shall invoke the registered `StateCallback` each time the connection state changes, passing the new state as the argument.
Traces to:
missing reference to Unit Test
Derived from:
Source: score/message_passing/dependability/requirements/component_requirements.trlc:315:18