selfprivacy.org.app/lib/logic/providers/providers_controller.dart

35 lines
1.1 KiB
Dart

import 'package:selfprivacy/logic/providers/dns_providers/dns_provider.dart';
import 'package:selfprivacy/logic/providers/dns_providers/dns_provider_factory.dart';
import 'package:selfprivacy/logic/providers/provider_settings.dart';
import 'package:selfprivacy/logic/providers/server_providers/server_provider.dart';
import 'package:selfprivacy/logic/providers/server_providers/server_provider_factory.dart';
class ProvidersController {
static ServerProvider? get currentServerProvider => _serverProvider;
static DnsProvider? get currentDnsProvider => _dnsProvider;
static void initServerProvider(
final ServerProviderSettings settings,
) {
_serverProvider = ServerProviderFactory.createServerProviderInterface(
settings,
);
}
static void initDnsProvider(
final DnsProviderSettings settings,
) {
_dnsProvider = DnsProviderFactory.createDnsProviderInterface(
settings,
);
}
static void clearProviders() {
_serverProvider = null;
_dnsProvider = null;
}
static ServerProvider? _serverProvider;
static DnsProvider? _dnsProvider;
}