VinculumClient.withConfig constructor
VinculumClient.withConfig({
- required VinculumConfig config,
- TokenStorage? tokenStorage,
Creates a new VinculumClient instance with a configuration object
Implementation
VinculumClient.withConfig({
required VinculumConfig config,
TokenStorage? tokenStorage,
}) : _config = config,
_tokenStorage = tokenStorage ?? InMemoryTokenStorage(),
_logger = Logger('VinculumClient') {
if (config.enableLogging) {
Logger.root.level = config.logLevel;
Logger.root.onRecord.listen((record) {
// ignore: avoid_print
print('${record.level.name}: ${record.time}: ${record.message}');
});
}
_auth = AuthClient(
baseUrl: config.resolvedAuthUrl,
tokenStorage: _tokenStorage,
timeout: config.timeout,
headers: config.headers,
);
_database = DatabaseClient(
baseUrl: config.resolvedDatabaseUrl,
tokenStorage: _tokenStorage,
timeout: config.timeout,
headers: config.headers,
);
_storage = StorageClient(
baseUrl: config.resolvedStorageUrl,
tokenStorage: _tokenStorage,
timeout: config.timeout,
headers: config.headers,
);
_realtime = RealtimeClient(
wsUrl: config.resolvedRealtimeUrl,
tokenStorage: _tokenStorage,
);
_batch = BatchClient(
baseUrl: config.resolvedDatabaseUrl,
tokenStorage: _tokenStorage,
timeout: config.timeout,
headers: config.headers,
);
_logger.info('VinculumClient initialized with base URL: ${config.baseUrl}');
}