optionalUri method
Reads an optional URI environment variable identified by key.
Returns defaultValue if unset or empty.
Throws BloomEnvironmentException if the variable is present but cannot be parsed as a URI.
Implementation
Uri? optionalUri(String key, {Uri? defaultValue, String? description}) {
final val = BloomEnv.getOrNull(key)?.trim();
if (val == null || val.isEmpty) {
return defaultValue;
}
final parsed = Uri.tryParse(val);
if (parsed == null) {
final err = 'Environment variable "$key" is not a valid URI: "$val".';
_validationErrors.add(err);
throw BloomEnvironmentException(err, errors: [err]);
}
return parsed;
}