decisions[strtolower($decision->getProviderName())] = $decision; } } public function getDecision(string $providerName): ?ProviderDecision { return $this->decisions[strtolower(trim($providerName))] ?? null; } public function explain(string $providerName): string { $decision = $this->getDecision($providerName); return $decision === null ? 'Provider is not registered.' : $decision->getReason(); } public function getDecisions(): array { return array_values($this->decisions); } }