GatewayConfig.fromJson constructor
Creates a GatewayConfig from a JSON map.
Implementation
factory GatewayConfig.fromJson(Map<String, dynamic> json) {
return GatewayConfig(
enabled: json['enabled'] as bool? ?? false,
port: json['port'] as int? ?? 8080,
address: json['address'] as String? ?? '0.0.0.0',
writable: json['writable'] as bool? ?? false,
enableCache: json['enableCache'] as bool? ?? true,
cacheSize: json['cacheSize'] as int? ?? 104857600,
gatewayDomain: json['gatewayDomain'] as String?,
enableSubdomainGateway: json['enableSubdomainGateway'] as bool? ?? false,
subdomainDNSLinkResolver:
json['subdomainDNSLinkResolver'] as bool? ?? true,
subdomainTLSRedirect: json['subdomainTLSRedirect'] as bool? ?? false,
enableTls: json['enableTls'] as bool? ?? false,
certificatePath: json['certificatePath'] as String?,
privateKeyPath: json['privateKeyPath'] as String?,
certificatePassword: json['certificatePassword'] as String?,
autoTls: json['autoTls'] as bool? ?? false,
autoTlsDomain: json['autoTlsDomain'] as String?,
autoTlsEmail: json['autoTlsEmail'] as String?,
autoTlsProvider: json['autoTlsProvider'] as String? ?? 'letsencrypt',
autoTlsAcceptTos: json['autoTlsAcceptTos'] as bool? ?? false,
autoTlsSANs:
(json['autoTlsSANs'] as List<dynamic>?)?.cast<String>() ?? const [],
tlsPort: json['tlsPort'] as int? ?? 443,
redirectHttpToHttps: json['redirectHttpToHttps'] as bool? ?? false,
);
}