Softanza
StartFrançais
Softanza
The library documents itself · Web & app server

stzServiceRegistry

40 own methods · 7 forms written with extensions, listed under their method

the source: base/service/stzServiceRegistry.ring(opens in a new tab) · All classes · The area reference: Web & app server

Under each method, its extensions (Q CS XT Z ZZ IB W U): bold and ticked, it exists; struck, it does not. The extensions and what they mean

No method of this class is run on this page: the class reaches files, the network, processes, the clock, chance or sound, and an example run here would only be an example of its effects. Each method carries the explanation the library gives of itself.

Method
Explanation, as the source carries it
init
(no comment in the source: the name reads as a sentence) initno extension
Name
(no comment in the source: the name reads as a sentence) nameno extension
Declare
the dependency surface ------------------------------------------- Declare a service this solution depends on, before anything is bound. This is what turns "what does this touch?" from archaeology into a query -- and it is what lets an UNBOUND dependency be a finding rather than a surprise.QCSXTZZZIBWUMany
IsDeclared
(no comment in the source: the name reads as a sentence) is declaredno extension
DeclaredServices
(no comment in the source: the name reads as a sentence) declared servicesno extension
NumberOfDeclared
(no comment in the source: the name reads as a sentence) number of declaredno extension
Bind
binding ---------------------------------------------------------- Bind an implementation. The posture is asked OF THE OBJECT: anything with IsSandbox() answering true is a sandbox. Declaring itself beats guessing from a class name, and it means a third-party double can opt in.QCSXTZZZIBWU
BindSandbox
...say it explicitly when the object cannot.QCSXTZZZIBWU
BindLocal
Bind a genuine LOCAL equivalent -- sqlite, the filesystem, a local model. Not a fake, so unlike a sandbox this may ship; see the posture note above.QCSXTZZZIBWU
BindLive
Bind the real thing, naming the STORE SECRET its credential lives in. The name, not the key: a registry that held credentials would be one more place they leak from.QCSXTZZZIBWU
Unbind
Remove the IMPLEMENTATION but keep the dependency. The service is then declared-and-unbound, which IS a finding -- your solution still needs the thing, it just has nothing to serve it. To retire the dependency itself, use Undeclare.no extension
Undeclare
Retire the dependency altogether -- the solution no longer needs this service. Unbinds it too, so nothing is left half-declared.no extension
Service
resolution (what the application actually calls) ------------------ The service by name. RAISES when nothing is bound -- an unbound dependency that silently returned NULL would fail later, somewhere else, as a null-call with no hint of the real cause.no extension
Has
(no comment in the source: the name reads as a sentence) hasno extension
BoundServices
(no comment in the source: the name reads as a sentence) bound servicesno extension
NumberOfBound
(no comment in the source: the name reads as a sentence) number of boundno extension
PostureOf
(no comment in the source: the name reads as a sentence) posture ofno extension
IsSandboxed
(no comment in the source: the name reads as a sentence) is sandboxedno extension
SecretNameOf
(no comment in the source: the name reads as a sentence) secret name ofno extension
SandboxedServices
every service still bound to a fake -- the "what is not real yet" list.no extension
LocalServices
the genuinely-local ones: real, self-hosted, shippable.no extension
IsLocal
(no comment in the source: the name reads as a sentence) is localno extension
LiveServices
(no comment in the source: the name reads as a sentence) live servicesno extension
UnboundServices
(no comment in the source: the name reads as a sentence) unbound servicesno extension
SetPhase
the phase -------------------------------------------------------- :development / :emulated -> sandboxes are expected. :production -> they are a violation. The phase is the SAME switch stzDelivery already uses, so nothing new decides what is real.QCSXTZZZIBWU
Phase
(no comment in the source: the name reads as a sentence) phaseno extension
IsProduction
(no comment in the source: the name reads as a sentence) is productionno extension
FindingsVia
governance ------------------------------------------------------- [ [ :invariant, :severity, :where, :message ], ... ] -- the same shape stzSecurityPosture and the graph rules use, so one CI gate covers all three. poStore may be NULL when there is no keyring to check against. NOTE: each _Check returns its OWN list and this LOOPS to append the elements. Haro's `+` on a list appends the whole list as ONE element, so `_aF_ + This._Check...()` would nest rather than accumulate -- and a nested findings list silently reports zero errors. Same shape as stzSecurityPosture.no extension
Findings
(no comment in the source: the name reads as a sentence) findingsno extension
IsSoundVia
(no comment in the source: the name reads as a sentence) is sound viano extension
IsSound
(no comment in the source: the name reads as a sentence) is soundno extension
NumberOfFindings
(no comment in the source: the name reads as a sentence) number of findingsno extension
ReportVia
(no comment in the source: the name reads as a sentence) report viano extension
Report
(no comment in the source: the name reads as a sentence) reportno extension
MayGoLive
ASKED IN THE PRODUCTION FRAME, whatever the current phase. "May I go LIVE?" IS the production question, so answering it from a :development phase would have said YES with a fake still bound -- the phase-dependent invariants (sandbox-in-production, ephemeral-in-production) simply had not fired yet. The phase is set, the surface judged, the phase restored: asking is not declaring. (Found while writing the narration; the guard had only ever asked after setting production, so the honest answer and the convenient one agreed.)no extension
FindingsForProductionVia
the surface judged as production would judge it, then put backno extension
FindingsForProduction
(no comment in the source: the name reads as a sentence) findings for productionno extension
WhyNotLive
...and the same, but explaining itself.no extension
AsRuleGraph
NOTE this does NOT duplicate the invariants above. Findings from Findings() already carry the report's shape, so the registry joins the shared CI gate directly: oReport.IngestLegacy(oReg.Findings(), "services"). What the GRAPH adds is the question a flag check cannot ask -- which PART of a solution depends on a fake -- and that needs the delivery's parts joined to these nodes (see stzDelivery.AsRuleGraph and stzServiceRuleSet).no extension
Show
(no comment in the source: the name reads as a sentence) showno extension