EnvironmentConfig class abstract
Generic environment configuration
Developers can extend this for their specific needs.
Example:
class MyConfig extends EnvironmentConfig {
@override
final Environment environment;
const MyConfig(this.environment);
@override
String get baseUrl {
return switch (environment) {
Environment.development => 'https://dev-api.example.com',
Environment.staging => 'https://staging-api.example.com',
Environment.production => 'https://api.example.com',
};
}
@override
Map<String, dynamic> get headers => {
'X-App-Version': '1.0.0',
'X-Environment': environment.name,
};
}
// Usage
const config = MyConfig(Environment.production);
KeystoneNetwork.initialize(
baseUrl: config.baseUrl,
connectTimeout: config.connectTimeout,
headers: config.headers,
);
- Implementers
Constructors
Properties
- baseUrl → String
-
Base URL for API requests
no setter
- connectTimeout → Duration
-
Connection timeout duration
no setter
- enableLogging → bool
-
Enable debug logging
no setter
- environment → Environment
-
Current environment
no setter
- hashCode → int
-
The hash code for this object.
no setterinherited
-
headers
→ Map<
String, dynamic> -
Default headers for all requests
no setter
- receiveTimeout → Duration
-
Response receive timeout duration
no setter
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- sendTimeout → Duration
-
Request send timeout duration
no setter
Methods
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited