Client constructor
Client(
- ClientConfig config,
- HTTPClient httpClient
Implementation
Client(ClientConfig config, HTTPClient httpClient) {
final String? endpoint = config.endpoint_;
if ((endpoint == null) || endpoint.isEmpty) {
throw ArgumentError("Missing Endpoint configuration");
}
final String? apiKey = config.apiKey_;
if ((apiKey == null) || apiKey.isEmpty) {
throw ArgumentError("Missing APIKey configuration");
}
final String? application = config.application_;
if ((application == null) || application.isEmpty) {
throw ArgumentError("Missing Application configuration");
}
final String? environment = config.environment_;
if ((environment == null) || environment.isEmpty) {
throw ArgumentError("Missing Environment configuration");
}
url_ = "$endpoint/context";
httpClient_ = httpClient;
deserializer_ = config.deserializer_;
serializer_ = config.serializer_;
deserializer_ ??= DefaultContextDataDeserializer();
serializer_ ??= DefaultContextEventSerializer();
headers_ = {
"X-API-Key": apiKey,
"X-Application": application,
"X-Environment": environment,
"X-Application-Version": "0",
"X-Agent": "absmartly-dart-sdk",
};
query_ = {
"application": application,
"environment": environment,
};
}