getCapabilities method

  1. @override
Future<CampusWifiCapabilitiesDto> getCapabilities()
override

Implementation

@override
Future<CampusWifiCapabilitiesDto> getCapabilities() async {
  return _invokeOnMobile(
    fallback: (
      isSupported: false,
      androidSdkInt: null,
      canOpenWifiSettings: false,
      canOpenWifiPanel: false,
      canProvisionNtut8021xSuggestion: false,
      canProvisionNtut8021xCompat: false,
      canProvisionNtut8021x: false,
      suggestionPermissionState: 'unknown',
    ),
    invoke: () async {
      final result = await _channel.invokeMapMethod<String, Object?>(
        'getCapabilities',
      );
      return (
        isSupported: result.readBool('isSupported') ?? result != null,
        androidSdkInt: result.readInt('sdkInt'),
        canOpenWifiSettings: result.readBool('canOpenWifiSettings') ?? false,
        canOpenWifiPanel: result.readBool('canOpenWifiPanel') ?? false,
        canProvisionNtut8021xSuggestion:
            result.readBool('canProvisionNtut8021xSuggestion') ?? false,
        canProvisionNtut8021xCompat:
            result.readBool('canProvisionNtut8021xCompat') ?? false,
        canProvisionNtut8021x:
            result.readBool('canProvisionNtut8021x') ??
            ((result.readBool('canProvisionNtut8021xSuggestion') ?? false) ||
                (result.readBool('canProvisionNtut8021xCompat') ?? false)),
        suggestionPermissionState:
            result.readString('suggestionPermissionState') ?? 'unknown',
      );
    },
  );
}