BonsoirDiscovery constructor

BonsoirDiscovery({
  1. bool printLogs = kDebugMode,
  2. required String type,
  3. ServiceResolver? serviceResolver,
})

Creates a new Bonsoir discovery instance.

Implementation

factory BonsoirDiscovery({
  bool printLogs = kDebugMode,
  required String type,
  ServiceResolver? serviceResolver,
}) {
  if (kDebugMode) {
    String normalizedType = BonsoirServiceNormalizer.normalizeType(type);
    if (type != normalizedType) {
      print(
          'It seems that you are trying to discover an invalid type using Bonsoir.');
      print('Did you mean "$normalizedType" instead of "$type" ?');
    }
  }
  BonsoirAction<BonsoirDiscoveryEvent> action =
      BonsoirPlatformInterface.instance.createDiscoveryAction(
    type,
    printLogs: printLogs,
  );
  serviceResolver ??= action is ServiceResolver
      ? (action as ServiceResolver)
      : _NoServiceResolver();
  return BonsoirDiscovery._internal(
    type: type,
    serviceResolver: serviceResolver,
    action: action,
  );
}