TIERS
TIERS = 4
Tier rows the form renders.
Four is what the shape this exists for needs - hot, last month, half a year, a year or two - and a row left without a provider is dropped on save, so a site using two configures two.
Which buckets history is spread across, and when it moves between them.
The ladder is validated by building it, not by a second copy of the rules written for a form. TierMap refuses a repeated bucket, a threshold that does not increase and a tier naming no provider, and every one of those produces a store that looks configured and is not; running the real constructor here is what stops the two sets of rules drifting apart.
The retention cutoffs are printed next to the age thresholds, because the two are separate dials that answer questions about the same history and an operator setting one wants to see the other. A tier threshold near a retention cutoff means a bucket fills up as a rollup level empties.
The nearest tier's threshold is not editable. It holds everything by definition, and a form that let it be set would let a site configure a store with a gap at the front.
$engine : ?\Drupal\strata\Engine
The engine, reset after a save.
create(\Symfony\Component\DependencyInjection\ContainerInterface $container) : static
{@inheritdoc}
The engine is asked for, never required. composer.json PSR-4 maps Drupal\strata\ onto
src/, so every class here loads off composer's autoloader whether or not the module is in
core.extension, while strata.services.yml reaches the container only when it is. A router
table still holding this route after the module left - a failed install, a composer remove
with no uninstall - therefore resolves the class, calls this, and answered 500 with
ServiceNotFoundException until 1.0.3. The property is nullable and every use of it is
null-safe, so asking is the whole fix.
| \Symfony\Component\DependencyInjection\ContainerInterface | $container |
coerce(mixed $value, string $type) : mixed
Coerces a submitted value to the type the config schema declares.
A form always submits strings, and configuration is schema-validated on save, so an integer
setting handed the string "15" fails validation on a site running strictConfigSchema.
| mixed | $value | The submitted value. |
| string | $type | One of "string", "int", "float" or "bool". |
The coerced value.