DedicatedDatabase.fromMap constructor

DedicatedDatabase.fromMap(
  1. Map<String, dynamic> map
)

Implementation

factory DedicatedDatabase.fromMap(
  Map<String, dynamic> map,
) {
  map = {
    '\$id': "",
    '\$createdAt': "",
    '\$updatedAt': "",
    'projectId': "",
    'name': "",
    'version': "",
    'specification': "",
    'backend': "",
    'hostname': "",
    'connectionUser': "",
    'connectionPassword': "",
    'connectionString': "",
    'ssl': false,
    'status': "provisioning",
    'containerStatus': "",
    'lifecycleState': "",
    'idleTimeoutMinutes': 15,
    'cpu': 500,
    'memory': 512,
    'storage': 10,
    'storageStatus': "idle",
    'storageTargetGb': 0,
    'storageClass': "ssd",
    'storageMaxGb': 0,
    'nodePool': "",
    'replicas': 0,
    'syncMode': "",
    'networkMaxConnections': 100,
    'networkIdleTimeoutSeconds': 900,
    'networkIPAllowlist': [],
    'backupEnabled': true,
    'pitr': true,
    'pitrRetentionDays': 7,
    'storageAutoscaling': true,
    'storageAutoscalingThresholdPercent': 85,
    'storageAutoscalingMaxGb': 0,
    'maintenanceWindowDay': "sun",
    'maintenanceWindowHourUtc': 3,
    'metricsEnabled': false,
    'sqlApiEnabled': true,
    'sqlApiAllowedStatements': ["SELECT", "INSERT", "UPDATE", "DELETE"],
    'sqlApiMaxRows': 10000,
    'sqlApiMaxBytes': 10485760,
    'sqlApiTimeoutSeconds': 30,
    'error': "",
    ...map,
  };

  return DedicatedDatabase(
    $id: map['\$id'].toString(),
    $createdAt: map['\$createdAt'].toString(),
    $updatedAt: map['\$updatedAt'].toString(),
    projectId: map['projectId'].toString(),
    name: map['name'].toString(),
    api: map['api']?.toString(),
    engine: map['engine']?.toString(),
    version: map['version'].toString(),
    specification: map['specification'].toString(),
    backend: map['backend'].toString(),
    hostname: map['hostname'].toString(),
    connectionPort: map['connectionPort'],
    connectionUser: map['connectionUser'].toString(),
    connectionPassword: map['connectionPassword'].toString(),
    credentialGeneration: map['credentialGeneration'],
    connectionString: map['connectionString'].toString(),
    ssl: map['ssl'],
    status: map['status'].toString(),
    containerStatus: map['containerStatus'].toString(),
    lastAccessedAt: map['lastAccessedAt']?.toString(),
    idleUntil: map['idleUntil']?.toString(),
    lifecycleState: map['lifecycleState'].toString(),
    idleTimeoutMinutes: map['idleTimeoutMinutes'],
    cpu: map['cpu'],
    memory: map['memory'],
    storage: map['storage'],
    storageStatus: map['storageStatus'].toString(),
    storageTargetGb: map['storageTargetGb'],
    storageResizeStartedAt: map['storageResizeStartedAt']?.toString(),
    storageClass: map['storageClass'].toString(),
    storageMaxGb: map['storageMaxGb'],
    nodePool: map['nodePool'].toString(),
    replicas: map['replicas'],
    syncMode: map['syncMode'].toString(),
    networkMaxConnections: map['networkMaxConnections'],
    networkIdleTimeoutSeconds: map['networkIdleTimeoutSeconds'],
    networkIPAllowlist: List.from(map['networkIPAllowlist'] ?? []),
    backupEnabled: map['backupEnabled'],
    pitr: map['pitr'],
    pitrRetentionDays: map['pitrRetentionDays'],
    storageAutoscaling: map['storageAutoscaling'],
    storageAutoscalingThresholdPercent:
        map['storageAutoscalingThresholdPercent'],
    storageAutoscalingMaxGb: map['storageAutoscalingMaxGb'],
    maintenanceWindowDay: map['maintenanceWindowDay'].toString(),
    maintenanceWindowHourUtc: map['maintenanceWindowHourUtc'],
    metricsEnabled: map['metricsEnabled'],
    sqlApiEnabled: map['sqlApiEnabled'],
    sqlApiAllowedStatements: List.from(map['sqlApiAllowedStatements'] ?? []),
    sqlApiMaxRows: map['sqlApiMaxRows'],
    sqlApiMaxBytes: map['sqlApiMaxBytes'],
    sqlApiTimeoutSeconds: map['sqlApiTimeoutSeconds'],
    error: map['error'].toString(),
  );
}