addService method
Adds a subsystem registration parameter.
Overrides existing registrations for the same type/class according to SubsystemTypeDesc.supportsMultipleClasses.
Implementation
TSubsystemFactory<TSubsystem> addService(BuildServiceParameters parameter) {
if (!parameter.isValid) {
throw ArgumentError.value(
parameter,
'parameter',
'Invalid service registration parameters',
);
}
if (!parameter.classDescription.serviceType.supportsMultipleClasses) {
removeType(parameter.classDescription.serviceType.serviceTypeId);
} else {
removeClass(parameter.classDescription.serviceClassId);
}
_registrations.add(parameter);
return this;
}