Documentation

ConnectionProbeController extends z_controller
in package

Table of Contents

action_assertConnectionHappy()  : mixed
action_assertConnectionViaHeartbeat()  : mixed
action_catchHelperHappyPath()  : mixed
action_constructorNonNumericTimeout()  : mixed
action_execBindFail()  : mixed
action_execExecuteFail()  : mixed
action_execPrepareFail()  : mixed
action_execQueryAllBindingTypes()  : mixed
action_execQueryWithBindings()  : mixed
action_execQueryWithoutBindings()  : mixed
action_executeMultiQueryFailSwallowed()  : mixed
action_executeMultiQueryHappy()  : mixed
action_executeMultiQueryThrows()  : mixed
action_getDatabaseConnection()  : mixed
action_heartbeatBeforeConnect()  : mixed
action_heartbeatForce()  : mixed
action_heartbeatRecent()  : mixed
action_persistentReuse()  : mixed
action_switchUser()  : mixed
action_tlsHostWithPort()  : mixed
A host:port dbhost cannot be verified; the error must say why.
action_tlsTransport()  : mixed
How the application's configured connection is talking right now.
action_tlsVerified()  : mixed
db_ssl = true alone: encrypted, verified via the system store.
action_tlsWrongHost()  : mixed
The endpoint's IP is not a name on the certificate, so this must be refused. Proof that verification really happens - mysqli given no authority skips every check and would connect happily.
catchThrowableMessage()  : void
connectWith()  : mixed
Opens a connection under the given settings and reports how it went. Failures are reported as data, not as a 500, so the spec can assert on the negative cases too.
ensureConnection()  : void
resetEndpoint()  : void
The framework reads the endpoint once per request (a singleton); these probes vary it within one request, so the cached instance is cleared around every override. Test-only reflection, deliberately not a framework API.
sessionStatus()  : string
transportOf()  : array<string|int, mixed>
The transport actually negotiated for this session. Both status variables are empty on a plaintext connection.
twoSessions()  : array<string|int, mixed>
Identifies the server session of two consecutive connections.
withSettings()  : mixed
Runs the callback with booter settings temporarily overridden.

Methods

action_assertConnectionHappy()

public action_assertConnectionHappy(Request $req, Response $res) : mixed
Parameters
$req : Request
$res : Response
Return values
mixed

action_assertConnectionViaHeartbeat()

public action_assertConnectionViaHeartbeat(Request $req, Response $res) : mixed
Parameters
$req : Request
$res : Response
Return values
mixed

action_catchHelperHappyPath()

public action_catchHelperHappyPath(Request $req, Response $res) : mixed
Parameters
$req : Request
$res : Response
Return values
mixed

action_constructorNonNumericTimeout()

public action_constructorNonNumericTimeout(Request $req, Response $res) : mixed
Parameters
$req : Request
$res : Response
Return values
mixed

action_execBindFail()

public action_execBindFail(Request $req, Response $res) : mixed
Parameters
$req : Request
$res : Response
Return values
mixed

action_execExecuteFail()

public action_execExecuteFail(Request $req, Response $res) : mixed
Parameters
$req : Request
$res : Response
Return values
mixed

action_execPrepareFail()

public action_execPrepareFail(Request $req, Response $res) : mixed
Parameters
$req : Request
$res : Response
Return values
mixed

action_execQueryAllBindingTypes()

public action_execQueryAllBindingTypes(Request $req, Response $res) : mixed
Parameters
$req : Request
$res : Response
Return values
mixed

action_execQueryWithBindings()

public action_execQueryWithBindings(Request $req, Response $res) : mixed
Parameters
$req : Request
$res : Response
Return values
mixed

action_execQueryWithoutBindings()

public action_execQueryWithoutBindings(Request $req, Response $res) : mixed
Parameters
$req : Request
$res : Response
Return values
mixed

action_executeMultiQueryFailSwallowed()

public action_executeMultiQueryFailSwallowed(Request $req, Response $res) : mixed
Parameters
$req : Request
$res : Response
Return values
mixed

action_executeMultiQueryHappy()

public action_executeMultiQueryHappy(Request $req, Response $res) : mixed
Parameters
$req : Request
$res : Response
Return values
mixed

action_executeMultiQueryThrows()

public action_executeMultiQueryThrows(Request $req, Response $res) : mixed
Parameters
$req : Request
$res : Response
Return values
mixed

action_getDatabaseConnection()

public action_getDatabaseConnection(Request $req, Response $res) : mixed
Parameters
$req : Request
$res : Response
Return values
mixed

action_heartbeatBeforeConnect()

public action_heartbeatBeforeConnect(Request $req, Response $res) : mixed
Parameters
$req : Request
$res : Response
Return values
mixed

action_heartbeatForce()

public action_heartbeatForce(Request $req, Response $res) : mixed
Parameters
$req : Request
$res : Response
Return values
mixed

action_heartbeatRecent()

public action_heartbeatRecent(Request $req, Response $res) : mixed
Parameters
$req : Request
$res : Response
Return values
mixed

action_persistentReuse()

public action_persistentReuse(Request $req, Response $res) : mixed
Parameters
$req : Request
$res : Response
Return values
mixed

action_switchUser()

public action_switchUser(Request $req, Response $res) : mixed
Parameters
$req : Request
$res : Response
Return values
mixed

action_tlsHostWithPort()

A host:port dbhost cannot be verified; the error must say why.

public action_tlsHostWithPort(Request $req, Response $res) : mixed
Parameters
$req : Request
$res : Response
Return values
mixed

action_tlsTransport()

How the application's configured connection is talking right now.

public action_tlsTransport(Request $req, Response $res) : mixed
Parameters
$req : Request
$res : Response
Return values
mixed

action_tlsVerified()

db_ssl = true alone: encrypted, verified via the system store.

public action_tlsVerified(Request $req, Response $res) : mixed
Parameters
$req : Request
$res : Response
Return values
mixed

action_tlsWrongHost()

The endpoint's IP is not a name on the certificate, so this must be refused. Proof that verification really happens - mysqli given no authority skips every check and would connect happily.

public action_tlsWrongHost(Request $req, Response $res) : mixed
Parameters
$req : Request
$res : Response
Return values
mixed

catchThrowableMessage()

private catchThrowableMessage(Closure $action) : void
Parameters
$action : Closure
Return values
void

connectWith()

Opens a connection under the given settings and reports how it went. Failures are reported as data, not as a 500, so the spec can assert on the negative cases too.

private connectWith(array<string|int, mixed> $settings, Response $res) : mixed
Parameters
$settings : array<string|int, mixed>
$res : Response
Return values
mixed

resetEndpoint()

The framework reads the endpoint once per request (a singleton); these probes vary it within one request, so the cached instance is cleared around every override. Test-only reflection, deliberately not a framework API.

private static resetEndpoint() : void

setStaticPropertyValue() reaches the private property on every supported version: ReflectionProperty would need setAccessible() on 8.0, which is deprecated as of 8.5.

Return values
void

transportOf()

The transport actually negotiated for this session. Both status variables are empty on a plaintext connection.

private transportOf(Connection $connection) : array<string|int, mixed>
Parameters
$connection : Connection
Return values
array<string|int, mixed>

twoSessions()

Identifies the server session of two consecutive connections.

private twoSessions(bool $persistent) : array<string|int, mixed>
Parameters
$persistent : bool
Return values
array<string|int, mixed>

withSettings()

Runs the callback with booter settings temporarily overridden.

private withSettings(array<string|int, mixed> $settings, Closure $action) : mixed
Parameters
$settings : array<string|int, mixed>
$action : Closure
Return values
mixed

Search results