<?php

declare(strict_types=1);

namespace App\Framework\Config\Exceptions;

use App\Framework\Exception\ExceptionContext;
use App\Framework\Exception\FrameworkException;

class RequiredEnvironmentVariableException extends FrameworkException
{
    /**
     * @param string $key
     */
    public function __construct(string $key)
    {
        parent::__construct(
            message: "Required environment variable '$key' is not set.",
            context: ExceptionContext::forOperation('config_validation', 'Configuration')
                ->withData(['environment_variable' => $key])
        );
    }
}
