public static function fromMap()

in cs-20151215/src/Models/CreateClusterRequest.php [1177:1675]


    public static function fromMap($map = [])
    {
        $model = new self();
        if (isset($map['access_control_list'])) {
            if (!empty($map['access_control_list'])) {
                $model->accessControlList = [];
                $n1 = 0;
                foreach ($map['access_control_list'] as $item1) {
                    $model->accessControlList[$n1++] = $item1;
                }
            }
        }

        if (isset($map['addons'])) {
            if (!empty($map['addons'])) {
                $model->addons = [];
                $n1 = 0;
                foreach ($map['addons'] as $item1) {
                    $model->addons[$n1++] = Addon::fromMap($item1);
                }
            }
        }

        if (isset($map['api_audiences'])) {
            $model->apiAudiences = $map['api_audiences'];
        }

        if (isset($map['auto_renew'])) {
            $model->autoRenew = $map['auto_renew'];
        }

        if (isset($map['auto_renew_period'])) {
            $model->autoRenewPeriod = $map['auto_renew_period'];
        }

        if (isset($map['charge_type'])) {
            $model->chargeType = $map['charge_type'];
        }

        if (isset($map['cis_enabled'])) {
            $model->cisEnabled = $map['cis_enabled'];
        }

        if (isset($map['cloud_monitor_flags'])) {
            $model->cloudMonitorFlags = $map['cloud_monitor_flags'];
        }

        if (isset($map['cluster_domain'])) {
            $model->clusterDomain = $map['cluster_domain'];
        }

        if (isset($map['cluster_spec'])) {
            $model->clusterSpec = $map['cluster_spec'];
        }

        if (isset($map['cluster_type'])) {
            $model->clusterType = $map['cluster_type'];
        }

        if (isset($map['container_cidr'])) {
            $model->containerCidr = $map['container_cidr'];
        }

        if (isset($map['control_plane_config'])) {
            $model->controlPlaneConfig = controlPlaneConfig::fromMap($map['control_plane_config']);
        }

        if (isset($map['controlplane_log_components'])) {
            if (!empty($map['controlplane_log_components'])) {
                $model->controlplaneLogComponents = [];
                $n1 = 0;
                foreach ($map['controlplane_log_components'] as $item1) {
                    $model->controlplaneLogComponents[$n1++] = $item1;
                }
            }
        }

        if (isset($map['controlplane_log_project'])) {
            $model->controlplaneLogProject = $map['controlplane_log_project'];
        }

        if (isset($map['controlplane_log_ttl'])) {
            $model->controlplaneLogTtl = $map['controlplane_log_ttl'];
        }

        if (isset($map['cpu_policy'])) {
            $model->cpuPolicy = $map['cpu_policy'];
        }

        if (isset($map['custom_san'])) {
            $model->customSan = $map['custom_san'];
        }

        if (isset($map['deletion_protection'])) {
            $model->deletionProtection = $map['deletion_protection'];
        }

        if (isset($map['disable_rollback'])) {
            $model->disableRollback = $map['disable_rollback'];
        }

        if (isset($map['enable_rrsa'])) {
            $model->enableRrsa = $map['enable_rrsa'];
        }

        if (isset($map['encryption_provider_key'])) {
            $model->encryptionProviderKey = $map['encryption_provider_key'];
        }

        if (isset($map['endpoint_public_access'])) {
            $model->endpointPublicAccess = $map['endpoint_public_access'];
        }

        if (isset($map['format_disk'])) {
            $model->formatDisk = $map['format_disk'];
        }

        if (isset($map['image_id'])) {
            $model->imageId = $map['image_id'];
        }

        if (isset($map['image_type'])) {
            $model->imageType = $map['image_type'];
        }

        if (isset($map['instances'])) {
            if (!empty($map['instances'])) {
                $model->instances = [];
                $n1 = 0;
                foreach ($map['instances'] as $item1) {
                    $model->instances[$n1++] = $item1;
                }
            }
        }

        if (isset($map['ip_stack'])) {
            $model->ipStack = $map['ip_stack'];
        }

        if (isset($map['is_enterprise_security_group'])) {
            $model->isEnterpriseSecurityGroup = $map['is_enterprise_security_group'];
        }

        if (isset($map['keep_instance_name'])) {
            $model->keepInstanceName = $map['keep_instance_name'];
        }

        if (isset($map['key_pair'])) {
            $model->keyPair = $map['key_pair'];
        }

        if (isset($map['kubernetes_version'])) {
            $model->kubernetesVersion = $map['kubernetes_version'];
        }

        if (isset($map['load_balancer_id'])) {
            $model->loadBalancerId = $map['load_balancer_id'];
        }

        if (isset($map['load_balancer_spec'])) {
            $model->loadBalancerSpec = $map['load_balancer_spec'];
        }

        if (isset($map['logging_type'])) {
            $model->loggingType = $map['logging_type'];
        }

        if (isset($map['login_password'])) {
            $model->loginPassword = $map['login_password'];
        }

        if (isset($map['maintenance_window'])) {
            $model->maintenanceWindow = MaintenanceWindow::fromMap($map['maintenance_window']);
        }

        if (isset($map['master_auto_renew'])) {
            $model->masterAutoRenew = $map['master_auto_renew'];
        }

        if (isset($map['master_auto_renew_period'])) {
            $model->masterAutoRenewPeriod = $map['master_auto_renew_period'];
        }

        if (isset($map['master_count'])) {
            $model->masterCount = $map['master_count'];
        }

        if (isset($map['master_instance_charge_type'])) {
            $model->masterInstanceChargeType = $map['master_instance_charge_type'];
        }

        if (isset($map['master_instance_types'])) {
            if (!empty($map['master_instance_types'])) {
                $model->masterInstanceTypes = [];
                $n1 = 0;
                foreach ($map['master_instance_types'] as $item1) {
                    $model->masterInstanceTypes[$n1++] = $item1;
                }
            }
        }

        if (isset($map['master_period'])) {
            $model->masterPeriod = $map['master_period'];
        }

        if (isset($map['master_period_unit'])) {
            $model->masterPeriodUnit = $map['master_period_unit'];
        }

        if (isset($map['master_system_disk_category'])) {
            $model->masterSystemDiskCategory = $map['master_system_disk_category'];
        }

        if (isset($map['master_system_disk_performance_level'])) {
            $model->masterSystemDiskPerformanceLevel = $map['master_system_disk_performance_level'];
        }

        if (isset($map['master_system_disk_size'])) {
            $model->masterSystemDiskSize = $map['master_system_disk_size'];
        }

        if (isset($map['master_system_disk_snapshot_policy_id'])) {
            $model->masterSystemDiskSnapshotPolicyId = $map['master_system_disk_snapshot_policy_id'];
        }

        if (isset($map['master_vswitch_ids'])) {
            if (!empty($map['master_vswitch_ids'])) {
                $model->masterVswitchIds = [];
                $n1 = 0;
                foreach ($map['master_vswitch_ids'] as $item1) {
                    $model->masterVswitchIds[$n1++] = $item1;
                }
            }
        }

        if (isset($map['name'])) {
            $model->name = $map['name'];
        }

        if (isset($map['nat_gateway'])) {
            $model->natGateway = $map['nat_gateway'];
        }

        if (isset($map['node_cidr_mask'])) {
            $model->nodeCidrMask = $map['node_cidr_mask'];
        }

        if (isset($map['node_name_mode'])) {
            $model->nodeNameMode = $map['node_name_mode'];
        }

        if (isset($map['node_port_range'])) {
            $model->nodePortRange = $map['node_port_range'];
        }

        if (isset($map['nodepools'])) {
            if (!empty($map['nodepools'])) {
                $model->nodepools = [];
                $n1 = 0;
                foreach ($map['nodepools'] as $item1) {
                    $model->nodepools[$n1++] = Nodepool::fromMap($item1);
                }
            }
        }

        if (isset($map['num_of_nodes'])) {
            $model->numOfNodes = $map['num_of_nodes'];
        }

        if (isset($map['operation_policy'])) {
            $model->operationPolicy = operationPolicy::fromMap($map['operation_policy']);
        }

        if (isset($map['os_type'])) {
            $model->osType = $map['os_type'];
        }

        if (isset($map['period'])) {
            $model->period = $map['period'];
        }

        if (isset($map['period_unit'])) {
            $model->periodUnit = $map['period_unit'];
        }

        if (isset($map['platform'])) {
            $model->platform = $map['platform'];
        }

        if (isset($map['pod_vswitch_ids'])) {
            if (!empty($map['pod_vswitch_ids'])) {
                $model->podVswitchIds = [];
                $n1 = 0;
                foreach ($map['pod_vswitch_ids'] as $item1) {
                    $model->podVswitchIds[$n1++] = $item1;
                }
            }
        }

        if (isset($map['profile'])) {
            $model->profile = $map['profile'];
        }

        if (isset($map['proxy_mode'])) {
            $model->proxyMode = $map['proxy_mode'];
        }

        if (isset($map['rds_instances'])) {
            if (!empty($map['rds_instances'])) {
                $model->rdsInstances = [];
                $n1 = 0;
                foreach ($map['rds_instances'] as $item1) {
                    $model->rdsInstances[$n1++] = $item1;
                }
            }
        }

        if (isset($map['region_id'])) {
            $model->regionId = $map['region_id'];
        }

        if (isset($map['resource_group_id'])) {
            $model->resourceGroupId = $map['resource_group_id'];
        }

        if (isset($map['runtime'])) {
            $model->runtime = Runtime::fromMap($map['runtime']);
        }

        if (isset($map['security_group_id'])) {
            $model->securityGroupId = $map['security_group_id'];
        }

        if (isset($map['security_hardening_os'])) {
            $model->securityHardeningOs = $map['security_hardening_os'];
        }

        if (isset($map['service_account_issuer'])) {
            $model->serviceAccountIssuer = $map['service_account_issuer'];
        }

        if (isset($map['service_cidr'])) {
            $model->serviceCidr = $map['service_cidr'];
        }

        if (isset($map['service_discovery_types'])) {
            if (!empty($map['service_discovery_types'])) {
                $model->serviceDiscoveryTypes = [];
                $n1 = 0;
                foreach ($map['service_discovery_types'] as $item1) {
                    $model->serviceDiscoveryTypes[$n1++] = $item1;
                }
            }
        }

        if (isset($map['snat_entry'])) {
            $model->snatEntry = $map['snat_entry'];
        }

        if (isset($map['soc_enabled'])) {
            $model->socEnabled = $map['soc_enabled'];
        }

        if (isset($map['ssh_flags'])) {
            $model->sshFlags = $map['ssh_flags'];
        }

        if (isset($map['tags'])) {
            if (!empty($map['tags'])) {
                $model->tags = [];
                $n1 = 0;
                foreach ($map['tags'] as $item1) {
                    $model->tags[$n1++] = Tag::fromMap($item1);
                }
            }
        }

        if (isset($map['taints'])) {
            if (!empty($map['taints'])) {
                $model->taints = [];
                $n1 = 0;
                foreach ($map['taints'] as $item1) {
                    $model->taints[$n1++] = Taint::fromMap($item1);
                }
            }
        }

        if (isset($map['timeout_mins'])) {
            $model->timeoutMins = $map['timeout_mins'];
        }

        if (isset($map['timezone'])) {
            $model->timezone = $map['timezone'];
        }

        if (isset($map['user_ca'])) {
            $model->userCa = $map['user_ca'];
        }

        if (isset($map['user_data'])) {
            $model->userData = $map['user_data'];
        }

        if (isset($map['vpcid'])) {
            $model->vpcid = $map['vpcid'];
        }

        if (isset($map['vswitch_ids'])) {
            if (!empty($map['vswitch_ids'])) {
                $model->vswitchIds = [];
                $n1 = 0;
                foreach ($map['vswitch_ids'] as $item1) {
                    $model->vswitchIds[$n1++] = $item1;
                }
            }
        }

        if (isset($map['worker_auto_renew'])) {
            $model->workerAutoRenew = $map['worker_auto_renew'];
        }

        if (isset($map['worker_auto_renew_period'])) {
            $model->workerAutoRenewPeriod = $map['worker_auto_renew_period'];
        }

        if (isset($map['worker_data_disks'])) {
            if (!empty($map['worker_data_disks'])) {
                $model->workerDataDisks = [];
                $n1 = 0;
                foreach ($map['worker_data_disks'] as $item1) {
                    $model->workerDataDisks[$n1++] = workerDataDisks::fromMap($item1);
                }
            }
        }

        if (isset($map['worker_instance_charge_type'])) {
            $model->workerInstanceChargeType = $map['worker_instance_charge_type'];
        }

        if (isset($map['worker_instance_types'])) {
            if (!empty($map['worker_instance_types'])) {
                $model->workerInstanceTypes = [];
                $n1 = 0;
                foreach ($map['worker_instance_types'] as $item1) {
                    $model->workerInstanceTypes[$n1++] = $item1;
                }
            }
        }

        if (isset($map['worker_period'])) {
            $model->workerPeriod = $map['worker_period'];
        }

        if (isset($map['worker_period_unit'])) {
            $model->workerPeriodUnit = $map['worker_period_unit'];
        }

        if (isset($map['worker_system_disk_category'])) {
            $model->workerSystemDiskCategory = $map['worker_system_disk_category'];
        }

        if (isset($map['worker_system_disk_performance_level'])) {
            $model->workerSystemDiskPerformanceLevel = $map['worker_system_disk_performance_level'];
        }

        if (isset($map['worker_system_disk_size'])) {
            $model->workerSystemDiskSize = $map['worker_system_disk_size'];
        }

        if (isset($map['worker_system_disk_snapshot_policy_id'])) {
            $model->workerSystemDiskSnapshotPolicyId = $map['worker_system_disk_snapshot_policy_id'];
        }

        if (isset($map['worker_vswitch_ids'])) {
            if (!empty($map['worker_vswitch_ids'])) {
                $model->workerVswitchIds = [];
                $n1 = 0;
                foreach ($map['worker_vswitch_ids'] as $item1) {
                    $model->workerVswitchIds[$n1++] = $item1;
                }
            }
        }

        if (isset($map['zone_id'])) {
            $model->zoneId = $map['zone_id'];
        }

        if (isset($map['zone_ids'])) {
            if (!empty($map['zone_ids'])) {
                $model->zoneIds = [];
                $n1 = 0;
                foreach ($map['zone_ids'] as $item1) {
                    $model->zoneIds[$n1++] = $item1;
                }
            }
        }

        return $model;
    }