WebSocketConfig.fromJson constructor

WebSocketConfig.fromJson(
  1. Map<String, dynamic> json
)

Creates a config from JSON representation.

Implementation

factory WebSocketConfig.fromJson(Map<String, dynamic> json) {
  return WebSocketConfig(
    url: json['url'] as String,
    connectionTimeout:
        Duration(milliseconds: json['connectionTimeout'] as int? ?? 30000),
    enableReconnection: json['enableReconnection'] as bool? ?? true,
    maxReconnectionAttempts: json['maxReconnectionAttempts'] as int? ?? 10,
    initialReconnectionDelay: Duration(
        milliseconds: json['initialReconnectionDelay'] as int? ?? 1000),
    maxReconnectionDelay: Duration(
        milliseconds: json['maxReconnectionDelay'] as int? ?? 300000),
    backoffMultiplier: json['backoffMultiplier'] as double? ?? 2.0,
    enableMessageQueue: json['enableMessageQueue'] as bool? ?? true,
    maxQueueSize: json['maxQueueSize'] as int? ?? 1000,
    heartbeatInterval:
        Duration(milliseconds: json['heartbeatInterval'] as int? ?? 30000),
    enableHeartbeat: json['enableHeartbeat'] as bool? ?? true,
    headers: Map<String, String>.from(json['headers'] as Map? ?? {}),
    protocols: List<String>.from(json['protocols'] as List? ?? []),
    enableCompression: json['enableCompression'] as bool? ?? false,
  );
}