bindClientToProvider method
void
bindClientToProvider(
- String clientId,
- String providerName, {
- DomainConfiguration? config,
- String? parentDomainId,
Implementation
void bindClientToProvider(
String clientId,
String providerName, {
DomainConfiguration? config,
String? parentDomainId,
}) {
final domainConfig = config ?? DomainConfiguration(name: clientId);
if (!domainConfig.validate()) {
throw DomainValidationException('Invalid domain configuration');
}
Domain? parentDomain;
if (parentDomainId != null) {
parentDomain = _domains[parentDomainId];
if (parentDomain == null) {
throw DomainValidationException('Parent domain not found');
}
}
final domain = Domain(
clientId,
providerName,
config: domainConfig,
parent: parentDomain,
);
_domains[clientId] = domain;
_clientDomainBindings[clientId] = providerName;
_domainUpdates.add(domain);
}