def _build_schema_on_200()

in src/databox/azext_databox/aaz/latest/databox/job/_list.py [0:0]


        def _build_schema_on_200(cls):
            if cls._schema_on_200 is not None:
                return cls._schema_on_200

            cls._schema_on_200 = AAZObjectType()

            _schema_on_200 = cls._schema_on_200
            _schema_on_200.next_link = AAZStrType(
                serialized_name="nextLink",
            )
            _schema_on_200.value = AAZListType()

            value = cls._schema_on_200.value
            value.Element = AAZObjectType()

            _element = cls._schema_on_200.value.Element
            _element.id = AAZStrType(
                flags={"read_only": True},
            )
            _element.identity = AAZObjectType()
            _element.location = AAZStrType(
                flags={"required": True},
            )
            _element.name = AAZStrType(
                flags={"read_only": True},
            )
            _element.properties = AAZObjectType(
                flags={"required": True, "client_flatten": True},
            )
            _element.sku = AAZObjectType(
                flags={"required": True},
            )
            _element.system_data = AAZObjectType(
                serialized_name="systemData",
            )
            _element.tags = AAZDictType()
            _element.type = AAZStrType(
                flags={"read_only": True},
            )

            identity = cls._schema_on_200.value.Element.identity
            identity.principal_id = AAZStrType(
                serialized_name="principalId",
                flags={"read_only": True},
            )
            identity.tenant_id = AAZStrType(
                serialized_name="tenantId",
                flags={"read_only": True},
            )
            identity.type = AAZStrType()
            identity.user_assigned_identities = AAZDictType(
                serialized_name="userAssignedIdentities",
            )

            user_assigned_identities = cls._schema_on_200.value.Element.identity.user_assigned_identities
            user_assigned_identities.Element = AAZObjectType()

            _element = cls._schema_on_200.value.Element.identity.user_assigned_identities.Element
            _element.client_id = AAZStrType(
                serialized_name="clientId",
                flags={"read_only": True},
            )
            _element.principal_id = AAZStrType(
                serialized_name="principalId",
                flags={"read_only": True},
            )

            properties = cls._schema_on_200.value.Element.properties
            properties.cancellation_reason = AAZStrType(
                serialized_name="cancellationReason",
                flags={"read_only": True},
            )
            properties.delivery_info = AAZObjectType(
                serialized_name="deliveryInfo",
            )
            properties.delivery_type = AAZStrType(
                serialized_name="deliveryType",
            )
            properties.details = AAZObjectType()
            properties.error = AAZObjectType()
            _ListHelper._build_schema_cloud_error_read(properties.error)
            properties.is_cancellable = AAZBoolType(
                serialized_name="isCancellable",
                flags={"read_only": True},
            )
            properties.is_cancellable_without_fee = AAZBoolType(
                serialized_name="isCancellableWithoutFee",
                flags={"read_only": True},
            )
            properties.is_deletable = AAZBoolType(
                serialized_name="isDeletable",
                flags={"read_only": True},
            )
            properties.is_prepare_to_ship_enabled = AAZBoolType(
                serialized_name="isPrepareToShipEnabled",
                flags={"read_only": True},
            )
            properties.is_shipping_address_editable = AAZBoolType(
                serialized_name="isShippingAddressEditable",
                flags={"read_only": True},
            )
            properties.reverse_shipping_details_update = AAZStrType(
                serialized_name="reverseShippingDetailsUpdate",
                flags={"read_only": True},
            )
            properties.reverse_transport_preference_update = AAZStrType(
                serialized_name="reverseTransportPreferenceUpdate",
                flags={"read_only": True},
            )
            properties.start_time = AAZStrType(
                serialized_name="startTime",
                flags={"read_only": True},
            )
            properties.status = AAZStrType(
                flags={"read_only": True},
            )
            properties.transfer_type = AAZStrType(
                serialized_name="transferType",
                flags={"required": True},
            )

            delivery_info = cls._schema_on_200.value.Element.properties.delivery_info
            delivery_info.scheduled_date_time = AAZStrType(
                serialized_name="scheduledDateTime",
            )

            details = cls._schema_on_200.value.Element.properties.details
            details.actions = AAZListType(
                flags={"read_only": True},
            )
            details.chain_of_custody_sas_key = AAZStrType(
                serialized_name="chainOfCustodySasKey",
                flags={"read_only": True},
            )
            details.contact_details = AAZObjectType(
                serialized_name="contactDetails",
                flags={"required": True},
            )
            details.copy_log_details = AAZListType(
                serialized_name="copyLogDetails",
                flags={"read_only": True},
            )
            details.data_center_code = AAZStrType(
                serialized_name="dataCenterCode",
                flags={"read_only": True},
            )
            details.data_export_details = AAZListType(
                serialized_name="dataExportDetails",
            )
            details.data_import_details = AAZListType(
                serialized_name="dataImportDetails",
            )
            details.datacenter_address = AAZObjectType(
                serialized_name="datacenterAddress",
            )
            details.delivery_package = AAZObjectType(
                serialized_name="deliveryPackage",
            )
            _ListHelper._build_schema_package_shipping_details_read(details.delivery_package)
            details.device_erasure_details = AAZObjectType(
                serialized_name="deviceErasureDetails",
            )
            details.expected_data_size_in_tera_bytes = AAZIntType(
                serialized_name="expectedDataSizeInTeraBytes",
            )
            details.job_details_type = AAZStrType(
                serialized_name="jobDetailsType",
                flags={"required": True},
            )
            details.job_stages = AAZListType(
                serialized_name="jobStages",
                flags={"read_only": True},
            )
            details.key_encryption_key = AAZObjectType(
                serialized_name="keyEncryptionKey",
            )
            details.last_mitigation_action_on_job = AAZObjectType(
                serialized_name="lastMitigationActionOnJob",
            )
            details.preferences = AAZObjectType()
            details.return_package = AAZObjectType(
                serialized_name="returnPackage",
            )
            _ListHelper._build_schema_package_shipping_details_read(details.return_package)
            details.reverse_shipment_label_sas_key = AAZStrType(
                serialized_name="reverseShipmentLabelSasKey",
                flags={"read_only": True},
            )
            details.reverse_shipping_details = AAZObjectType(
                serialized_name="reverseShippingDetails",
            )
            details.shipping_address = AAZObjectType(
                serialized_name="shippingAddress",
            )
            _ListHelper._build_schema_shipping_address_read(details.shipping_address)

            actions = cls._schema_on_200.value.Element.properties.details.actions
            actions.Element = AAZStrType()

            contact_details = cls._schema_on_200.value.Element.properties.details.contact_details
            contact_details.contact_name = AAZStrType(
                serialized_name="contactName",
                flags={"required": True},
            )
            contact_details.email_list = AAZListType(
                serialized_name="emailList",
                flags={"required": True},
            )
            contact_details.mobile = AAZStrType()
            contact_details.notification_preference = AAZListType(
                serialized_name="notificationPreference",
            )
            contact_details.phone = AAZStrType(
                flags={"required": True},
            )
            contact_details.phone_extension = AAZStrType(
                serialized_name="phoneExtension",
            )

            email_list = cls._schema_on_200.value.Element.properties.details.contact_details.email_list
            email_list.Element = AAZStrType()

            notification_preference = cls._schema_on_200.value.Element.properties.details.contact_details.notification_preference
            notification_preference.Element = AAZObjectType()

            _element = cls._schema_on_200.value.Element.properties.details.contact_details.notification_preference.Element
            _element.send_notification = AAZBoolType(
                serialized_name="sendNotification",
                flags={"required": True},
            )
            _element.stage_name = AAZStrType(
                serialized_name="stageName",
                flags={"required": True},
            )

            copy_log_details = cls._schema_on_200.value.Element.properties.details.copy_log_details
            copy_log_details.Element = AAZObjectType()

            _element = cls._schema_on_200.value.Element.properties.details.copy_log_details.Element
            _element.copy_log_details_type = AAZStrType(
                serialized_name="copyLogDetailsType",
                flags={"required": True},
            )

            disc_data_box = cls._schema_on_200.value.Element.properties.details.copy_log_details.Element.discriminate_by("copy_log_details_type", "DataBox")
            disc_data_box.account_name = AAZStrType(
                serialized_name="accountName",
                flags={"read_only": True},
            )
            disc_data_box.copy_log_link = AAZStrType(
                serialized_name="copyLogLink",
                flags={"read_only": True},
            )
            disc_data_box.copy_verbose_log_link = AAZStrType(
                serialized_name="copyVerboseLogLink",
                flags={"read_only": True},
            )

            disc_data_box_customer_disk = cls._schema_on_200.value.Element.properties.details.copy_log_details.Element.discriminate_by("copy_log_details_type", "DataBoxCustomerDisk")
            disc_data_box_customer_disk.error_log_link = AAZStrType(
                serialized_name="errorLogLink",
                flags={"read_only": True},
            )
            disc_data_box_customer_disk.serial_number = AAZStrType(
                serialized_name="serialNumber",
                flags={"read_only": True},
            )
            disc_data_box_customer_disk.verbose_log_link = AAZStrType(
                serialized_name="verboseLogLink",
                flags={"read_only": True},
            )

            disc_data_box_disk = cls._schema_on_200.value.Element.properties.details.copy_log_details.Element.discriminate_by("copy_log_details_type", "DataBoxDisk")
            disc_data_box_disk.disk_serial_number = AAZStrType(
                serialized_name="diskSerialNumber",
                flags={"read_only": True},
            )
            disc_data_box_disk.error_log_link = AAZStrType(
                serialized_name="errorLogLink",
                flags={"read_only": True},
            )
            disc_data_box_disk.verbose_log_link = AAZStrType(
                serialized_name="verboseLogLink",
                flags={"read_only": True},
            )

            disc_data_box_heavy = cls._schema_on_200.value.Element.properties.details.copy_log_details.Element.discriminate_by("copy_log_details_type", "DataBoxHeavy")
            disc_data_box_heavy.account_name = AAZStrType(
                serialized_name="accountName",
                flags={"read_only": True},
            )
            disc_data_box_heavy.copy_log_link = AAZListType(
                serialized_name="copyLogLink",
                flags={"read_only": True},
            )
            disc_data_box_heavy.copy_verbose_log_link = AAZListType(
                serialized_name="copyVerboseLogLink",
                flags={"read_only": True},
            )

            copy_log_link = cls._schema_on_200.value.Element.properties.details.copy_log_details.Element.discriminate_by("copy_log_details_type", "DataBoxHeavy").copy_log_link
            copy_log_link.Element = AAZStrType()

            copy_verbose_log_link = cls._schema_on_200.value.Element.properties.details.copy_log_details.Element.discriminate_by("copy_log_details_type", "DataBoxHeavy").copy_verbose_log_link
            copy_verbose_log_link.Element = AAZStrType()

            data_export_details = cls._schema_on_200.value.Element.properties.details.data_export_details
            data_export_details.Element = AAZObjectType()

            _element = cls._schema_on_200.value.Element.properties.details.data_export_details.Element
            _element.account_details = AAZObjectType(
                serialized_name="accountDetails",
                flags={"required": True},
            )
            _ListHelper._build_schema_data_account_details_read(_element.account_details)
            _element.log_collection_level = AAZStrType(
                serialized_name="logCollectionLevel",
            )
            _element.transfer_configuration = AAZObjectType(
                serialized_name="transferConfiguration",
                flags={"required": True},
            )

            transfer_configuration = cls._schema_on_200.value.Element.properties.details.data_export_details.Element.transfer_configuration
            transfer_configuration.transfer_all_details = AAZObjectType(
                serialized_name="transferAllDetails",
            )
            transfer_configuration.transfer_configuration_type = AAZStrType(
                serialized_name="transferConfigurationType",
                flags={"required": True},
            )
            transfer_configuration.transfer_filter_details = AAZObjectType(
                serialized_name="transferFilterDetails",
            )

            transfer_all_details = cls._schema_on_200.value.Element.properties.details.data_export_details.Element.transfer_configuration.transfer_all_details
            transfer_all_details.include = AAZObjectType()

            include = cls._schema_on_200.value.Element.properties.details.data_export_details.Element.transfer_configuration.transfer_all_details.include
            include.data_account_type = AAZStrType(
                serialized_name="dataAccountType",
                flags={"required": True},
            )
            include.transfer_all_blobs = AAZBoolType(
                serialized_name="transferAllBlobs",
            )
            include.transfer_all_files = AAZBoolType(
                serialized_name="transferAllFiles",
            )

            transfer_filter_details = cls._schema_on_200.value.Element.properties.details.data_export_details.Element.transfer_configuration.transfer_filter_details
            transfer_filter_details.include = AAZObjectType()

            include = cls._schema_on_200.value.Element.properties.details.data_export_details.Element.transfer_configuration.transfer_filter_details.include
            include.azure_file_filter_details = AAZObjectType(
                serialized_name="azureFileFilterDetails",
            )
            include.blob_filter_details = AAZObjectType(
                serialized_name="blobFilterDetails",
            )
            include.data_account_type = AAZStrType(
                serialized_name="dataAccountType",
                flags={"required": True},
            )
            include.filter_file_details = AAZListType(
                serialized_name="filterFileDetails",
            )

            azure_file_filter_details = cls._schema_on_200.value.Element.properties.details.data_export_details.Element.transfer_configuration.transfer_filter_details.include.azure_file_filter_details
            azure_file_filter_details.file_path_list = AAZListType(
                serialized_name="filePathList",
            )
            azure_file_filter_details.file_prefix_list = AAZListType(
                serialized_name="filePrefixList",
            )
            azure_file_filter_details.file_share_list = AAZListType(
                serialized_name="fileShareList",
            )

            file_path_list = cls._schema_on_200.value.Element.properties.details.data_export_details.Element.transfer_configuration.transfer_filter_details.include.azure_file_filter_details.file_path_list
            file_path_list.Element = AAZStrType()

            file_prefix_list = cls._schema_on_200.value.Element.properties.details.data_export_details.Element.transfer_configuration.transfer_filter_details.include.azure_file_filter_details.file_prefix_list
            file_prefix_list.Element = AAZStrType()

            file_share_list = cls._schema_on_200.value.Element.properties.details.data_export_details.Element.transfer_configuration.transfer_filter_details.include.azure_file_filter_details.file_share_list
            file_share_list.Element = AAZStrType()

            blob_filter_details = cls._schema_on_200.value.Element.properties.details.data_export_details.Element.transfer_configuration.transfer_filter_details.include.blob_filter_details
            blob_filter_details.blob_path_list = AAZListType(
                serialized_name="blobPathList",
            )
            blob_filter_details.blob_prefix_list = AAZListType(
                serialized_name="blobPrefixList",
            )
            blob_filter_details.container_list = AAZListType(
                serialized_name="containerList",
            )

            blob_path_list = cls._schema_on_200.value.Element.properties.details.data_export_details.Element.transfer_configuration.transfer_filter_details.include.blob_filter_details.blob_path_list
            blob_path_list.Element = AAZStrType()

            blob_prefix_list = cls._schema_on_200.value.Element.properties.details.data_export_details.Element.transfer_configuration.transfer_filter_details.include.blob_filter_details.blob_prefix_list
            blob_prefix_list.Element = AAZStrType()

            container_list = cls._schema_on_200.value.Element.properties.details.data_export_details.Element.transfer_configuration.transfer_filter_details.include.blob_filter_details.container_list
            container_list.Element = AAZStrType()

            filter_file_details = cls._schema_on_200.value.Element.properties.details.data_export_details.Element.transfer_configuration.transfer_filter_details.include.filter_file_details
            filter_file_details.Element = AAZObjectType()

            _element = cls._schema_on_200.value.Element.properties.details.data_export_details.Element.transfer_configuration.transfer_filter_details.include.filter_file_details.Element
            _element.filter_file_path = AAZStrType(
                serialized_name="filterFilePath",
                flags={"required": True},
            )
            _element.filter_file_type = AAZStrType(
                serialized_name="filterFileType",
                flags={"required": True},
            )

            data_import_details = cls._schema_on_200.value.Element.properties.details.data_import_details
            data_import_details.Element = AAZObjectType()

            _element = cls._schema_on_200.value.Element.properties.details.data_import_details.Element
            _element.account_details = AAZObjectType(
                serialized_name="accountDetails",
                flags={"required": True},
            )
            _ListHelper._build_schema_data_account_details_read(_element.account_details)
            _element.log_collection_level = AAZStrType(
                serialized_name="logCollectionLevel",
            )

            datacenter_address = cls._schema_on_200.value.Element.properties.details.datacenter_address
            datacenter_address.data_center_azure_location = AAZStrType(
                serialized_name="dataCenterAzureLocation",
                flags={"read_only": True},
            )
            datacenter_address.datacenter_address_type = AAZStrType(
                serialized_name="datacenterAddressType",
                flags={"required": True},
            )
            datacenter_address.supported_carriers_for_return_shipment = AAZListType(
                serialized_name="supportedCarriersForReturnShipment",
                flags={"read_only": True},
            )

            supported_carriers_for_return_shipment = cls._schema_on_200.value.Element.properties.details.datacenter_address.supported_carriers_for_return_shipment
            supported_carriers_for_return_shipment.Element = AAZStrType()

            disc_datacenter_address_instruction = cls._schema_on_200.value.Element.properties.details.datacenter_address.discriminate_by("datacenter_address_type", "DatacenterAddressInstruction")
            disc_datacenter_address_instruction.communication_instruction = AAZStrType(
                serialized_name="communicationInstruction",
                flags={"read_only": True},
            )

            disc_datacenter_address_location = cls._schema_on_200.value.Element.properties.details.datacenter_address.discriminate_by("datacenter_address_type", "DatacenterAddressLocation")
            disc_datacenter_address_location.additional_shipping_information = AAZStrType(
                serialized_name="additionalShippingInformation",
                flags={"read_only": True},
            )
            disc_datacenter_address_location.address_type = AAZStrType(
                serialized_name="addressType",
                flags={"read_only": True},
            )
            disc_datacenter_address_location.city = AAZStrType(
                flags={"read_only": True},
            )
            disc_datacenter_address_location.company = AAZStrType(
                flags={"read_only": True},
            )
            disc_datacenter_address_location.contact_person_name = AAZStrType(
                serialized_name="contactPersonName",
                flags={"read_only": True},
            )
            disc_datacenter_address_location.country = AAZStrType(
                flags={"read_only": True},
            )
            disc_datacenter_address_location.phone = AAZStrType(
                flags={"read_only": True},
            )
            disc_datacenter_address_location.phone_extension = AAZStrType(
                serialized_name="phoneExtension",
                flags={"read_only": True},
            )
            disc_datacenter_address_location.state = AAZStrType(
                flags={"read_only": True},
            )
            disc_datacenter_address_location.street1 = AAZStrType(
                flags={"read_only": True},
            )
            disc_datacenter_address_location.street2 = AAZStrType(
                flags={"read_only": True},
            )
            disc_datacenter_address_location.street3 = AAZStrType(
                flags={"read_only": True},
            )
            disc_datacenter_address_location.zip = AAZStrType(
                flags={"read_only": True},
            )

            device_erasure_details = cls._schema_on_200.value.Element.properties.details.device_erasure_details
            device_erasure_details.device_erasure_status = AAZStrType(
                serialized_name="deviceErasureStatus",
                flags={"read_only": True},
            )
            device_erasure_details.erasure_or_destruction_certificate_sas_key = AAZStrType(
                serialized_name="erasureOrDestructionCertificateSasKey",
                flags={"read_only": True},
            )

            job_stages = cls._schema_on_200.value.Element.properties.details.job_stages
            job_stages.Element = AAZObjectType()

            _element = cls._schema_on_200.value.Element.properties.details.job_stages.Element
            _element.display_name = AAZStrType(
                serialized_name="displayName",
                flags={"read_only": True},
            )
            _element.stage_name = AAZStrType(
                serialized_name="stageName",
                flags={"read_only": True},
            )
            _element.stage_status = AAZStrType(
                serialized_name="stageStatus",
                flags={"read_only": True},
            )
            _element.stage_time = AAZStrType(
                serialized_name="stageTime",
                flags={"read_only": True},
            )

            key_encryption_key = cls._schema_on_200.value.Element.properties.details.key_encryption_key
            key_encryption_key.identity_properties = AAZObjectType(
                serialized_name="identityProperties",
            )
            key_encryption_key.kek_type = AAZStrType(
                serialized_name="kekType",
                flags={"required": True},
            )
            key_encryption_key.kek_url = AAZStrType(
                serialized_name="kekUrl",
            )
            key_encryption_key.kek_vault_resource_id = AAZStrType(
                serialized_name="kekVaultResourceID",
            )

            identity_properties = cls._schema_on_200.value.Element.properties.details.key_encryption_key.identity_properties
            identity_properties.type = AAZStrType()
            identity_properties.user_assigned = AAZObjectType(
                serialized_name="userAssigned",
            )

            user_assigned = cls._schema_on_200.value.Element.properties.details.key_encryption_key.identity_properties.user_assigned
            user_assigned.resource_id = AAZStrType(
                serialized_name="resourceId",
            )

            last_mitigation_action_on_job = cls._schema_on_200.value.Element.properties.details.last_mitigation_action_on_job
            last_mitigation_action_on_job.action_date_time_in_utc = AAZStrType(
                serialized_name="actionDateTimeInUtc",
            )
            last_mitigation_action_on_job.customer_resolution = AAZStrType(
                serialized_name="customerResolution",
            )
            last_mitigation_action_on_job.is_performed_by_customer = AAZBoolType(
                serialized_name="isPerformedByCustomer",
            )

            preferences = cls._schema_on_200.value.Element.properties.details.preferences
            preferences.encryption_preferences = AAZObjectType(
                serialized_name="encryptionPreferences",
            )
            preferences.preferred_data_center_region = AAZListType(
                serialized_name="preferredDataCenterRegion",
            )
            preferences.reverse_transport_preferences = AAZObjectType(
                serialized_name="reverseTransportPreferences",
            )
            _ListHelper._build_schema_transport_preferences_read(preferences.reverse_transport_preferences)
            preferences.storage_account_access_tier_preferences = AAZListType(
                serialized_name="storageAccountAccessTierPreferences",
            )
            preferences.transport_preferences = AAZObjectType(
                serialized_name="transportPreferences",
            )
            _ListHelper._build_schema_transport_preferences_read(preferences.transport_preferences)

            encryption_preferences = cls._schema_on_200.value.Element.properties.details.preferences.encryption_preferences
            encryption_preferences.double_encryption = AAZStrType(
                serialized_name="doubleEncryption",
            )
            encryption_preferences.hardware_encryption = AAZStrType(
                serialized_name="hardwareEncryption",
            )

            preferred_data_center_region = cls._schema_on_200.value.Element.properties.details.preferences.preferred_data_center_region
            preferred_data_center_region.Element = AAZStrType()

            storage_account_access_tier_preferences = cls._schema_on_200.value.Element.properties.details.preferences.storage_account_access_tier_preferences
            storage_account_access_tier_preferences.Element = AAZStrType()

            reverse_shipping_details = cls._schema_on_200.value.Element.properties.details.reverse_shipping_details
            reverse_shipping_details.contact_details = AAZObjectType(
                serialized_name="contactDetails",
            )
            reverse_shipping_details.is_updated = AAZBoolType(
                serialized_name="isUpdated",
                flags={"read_only": True},
            )
            reverse_shipping_details.shipping_address = AAZObjectType(
                serialized_name="shippingAddress",
            )
            _ListHelper._build_schema_shipping_address_read(reverse_shipping_details.shipping_address)

            contact_details = cls._schema_on_200.value.Element.properties.details.reverse_shipping_details.contact_details
            contact_details.contact_name = AAZStrType(
                serialized_name="contactName",
                flags={"required": True},
            )
            contact_details.mobile = AAZStrType()
            contact_details.phone = AAZStrType(
                flags={"required": True},
            )
            contact_details.phone_extension = AAZStrType(
                serialized_name="phoneExtension",
            )

            disc_data_box = cls._schema_on_200.value.Element.properties.details.discriminate_by("job_details_type", "DataBox")
            disc_data_box.copy_progress = AAZListType(
                serialized_name="copyProgress",
                flags={"read_only": True},
            )
            disc_data_box.device_password = AAZStrType(
                serialized_name="devicePassword",
            )

            copy_progress = cls._schema_on_200.value.Element.properties.details.discriminate_by("job_details_type", "DataBox").copy_progress
            copy_progress.Element = AAZObjectType()
            _ListHelper._build_schema_copy_progress_read(copy_progress.Element)

            disc_data_box_customer_disk = cls._schema_on_200.value.Element.properties.details.discriminate_by("job_details_type", "DataBoxCustomerDisk")
            disc_data_box_customer_disk.copy_progress = AAZListType(
                serialized_name="copyProgress",
                flags={"read_only": True},
            )
            disc_data_box_customer_disk.deliver_to_dc_package_details = AAZObjectType(
                serialized_name="deliverToDcPackageDetails",
            )
            disc_data_box_customer_disk.enable_manifest_backup = AAZBoolType(
                serialized_name="enableManifestBackup",
            )
            disc_data_box_customer_disk.export_disk_details_collection = AAZDictType(
                serialized_name="exportDiskDetailsCollection",
                flags={"read_only": True},
            )
            disc_data_box_customer_disk.import_disk_details_collection = AAZDictType(
                serialized_name="importDiskDetailsCollection",
            )
            disc_data_box_customer_disk.return_to_customer_package_details = AAZObjectType(
                serialized_name="returnToCustomerPackageDetails",
                flags={"required": True},
            )

            copy_progress = cls._schema_on_200.value.Element.properties.details.discriminate_by("job_details_type", "DataBoxCustomerDisk").copy_progress
            copy_progress.Element = AAZObjectType()

            _element = cls._schema_on_200.value.Element.properties.details.discriminate_by("job_details_type", "DataBoxCustomerDisk").copy_progress.Element
            _element.account_id = AAZStrType(
                serialized_name="accountId",
                flags={"read_only": True},
            )
            _element.actions = AAZListType(
                flags={"read_only": True},
            )
            _element.bytes_processed = AAZIntType(
                serialized_name="bytesProcessed",
                flags={"read_only": True},
            )
            _element.copy_status = AAZStrType(
                serialized_name="copyStatus",
                flags={"read_only": True},
            )
            _element.data_account_type = AAZStrType(
                serialized_name="dataAccountType",
                flags={"read_only": True},
            )
            _element.directories_errored_out = AAZIntType(
                serialized_name="directoriesErroredOut",
                flags={"read_only": True},
            )
            _element.error = AAZObjectType()
            _ListHelper._build_schema_cloud_error_read(_element.error)
            _element.files_errored_out = AAZIntType(
                serialized_name="filesErroredOut",
                flags={"read_only": True},
            )
            _element.files_processed = AAZIntType(
                serialized_name="filesProcessed",
                flags={"read_only": True},
            )
            _element.invalid_directories_processed = AAZIntType(
                serialized_name="invalidDirectoriesProcessed",
                flags={"read_only": True},
            )
            _element.invalid_file_bytes_uploaded = AAZIntType(
                serialized_name="invalidFileBytesUploaded",
                flags={"read_only": True},
            )
            _element.invalid_files_processed = AAZIntType(
                serialized_name="invalidFilesProcessed",
                flags={"read_only": True},
            )
            _element.is_enumeration_in_progress = AAZBoolType(
                serialized_name="isEnumerationInProgress",
                flags={"read_only": True},
            )
            _element.renamed_container_count = AAZIntType(
                serialized_name="renamedContainerCount",
                flags={"read_only": True},
            )
            _element.serial_number = AAZStrType(
                serialized_name="serialNumber",
                flags={"read_only": True},
            )
            _element.storage_account_name = AAZStrType(
                serialized_name="storageAccountName",
                flags={"read_only": True},
            )
            _element.total_bytes_to_process = AAZIntType(
                serialized_name="totalBytesToProcess",
                flags={"read_only": True},
            )
            _element.total_files_to_process = AAZIntType(
                serialized_name="totalFilesToProcess",
                flags={"read_only": True},
            )
            _element.transfer_type = AAZStrType(
                serialized_name="transferType",
                flags={"read_only": True},
            )

            actions = cls._schema_on_200.value.Element.properties.details.discriminate_by("job_details_type", "DataBoxCustomerDisk").copy_progress.Element.actions
            actions.Element = AAZStrType()

            deliver_to_dc_package_details = cls._schema_on_200.value.Element.properties.details.discriminate_by("job_details_type", "DataBoxCustomerDisk").deliver_to_dc_package_details
            deliver_to_dc_package_details.carrier_name = AAZStrType(
                serialized_name="carrierName",
            )
            deliver_to_dc_package_details.tracking_id = AAZStrType(
                serialized_name="trackingId",
            )

            export_disk_details_collection = cls._schema_on_200.value.Element.properties.details.discriminate_by("job_details_type", "DataBoxCustomerDisk").export_disk_details_collection
            export_disk_details_collection.Element = AAZObjectType()

            _element = cls._schema_on_200.value.Element.properties.details.discriminate_by("job_details_type", "DataBoxCustomerDisk").export_disk_details_collection.Element
            _element.backup_manifest_cloud_path = AAZStrType(
                serialized_name="backupManifestCloudPath",
                flags={"read_only": True},
            )
            _element.manifest_file = AAZStrType(
                serialized_name="manifestFile",
                flags={"read_only": True},
            )
            _element.manifest_hash = AAZStrType(
                serialized_name="manifestHash",
                flags={"read_only": True},
            )

            import_disk_details_collection = cls._schema_on_200.value.Element.properties.details.discriminate_by("job_details_type", "DataBoxCustomerDisk").import_disk_details_collection
            import_disk_details_collection.Element = AAZObjectType()

            _element = cls._schema_on_200.value.Element.properties.details.discriminate_by("job_details_type", "DataBoxCustomerDisk").import_disk_details_collection.Element
            _element.backup_manifest_cloud_path = AAZStrType(
                serialized_name="backupManifestCloudPath",
                flags={"read_only": True},
            )
            _element.bit_locker_key = AAZStrType(
                serialized_name="bitLockerKey",
                flags={"required": True, "secret": True},
            )
            _element.manifest_file = AAZStrType(
                serialized_name="manifestFile",
                flags={"required": True},
            )
            _element.manifest_hash = AAZStrType(
                serialized_name="manifestHash",
                flags={"required": True},
            )

            return_to_customer_package_details = cls._schema_on_200.value.Element.properties.details.discriminate_by("job_details_type", "DataBoxCustomerDisk").return_to_customer_package_details
            return_to_customer_package_details.carrier_account_number = AAZStrType(
                serialized_name="carrierAccountNumber",
                flags={"secret": True},
            )
            return_to_customer_package_details.carrier_name = AAZStrType(
                serialized_name="carrierName",
            )
            return_to_customer_package_details.tracking_id = AAZStrType(
                serialized_name="trackingId",
            )

            disc_data_box_disk = cls._schema_on_200.value.Element.properties.details.discriminate_by("job_details_type", "DataBoxDisk")
            disc_data_box_disk.copy_progress = AAZListType(
                serialized_name="copyProgress",
                flags={"read_only": True},
            )
            disc_data_box_disk.disks_and_size_details = AAZDictType(
                serialized_name="disksAndSizeDetails",
                flags={"read_only": True},
            )
            disc_data_box_disk.granular_copy_log_details = AAZListType(
                serialized_name="granularCopyLogDetails",
                flags={"read_only": True},
            )
            disc_data_box_disk.granular_copy_progress = AAZListType(
                serialized_name="granularCopyProgress",
                flags={"read_only": True},
            )
            disc_data_box_disk.passkey = AAZStrType()
            disc_data_box_disk.preferred_disks = AAZDictType(
                serialized_name="preferredDisks",
            )

            copy_progress = cls._schema_on_200.value.Element.properties.details.discriminate_by("job_details_type", "DataBoxDisk").copy_progress
            copy_progress.Element = AAZObjectType()

            _element = cls._schema_on_200.value.Element.properties.details.discriminate_by("job_details_type", "DataBoxDisk").copy_progress.Element
            _element.actions = AAZListType(
                flags={"read_only": True},
            )
            _element.bytes_copied = AAZIntType(
                serialized_name="bytesCopied",
                flags={"read_only": True},
            )
            _element.error = AAZObjectType()
            _ListHelper._build_schema_cloud_error_read(_element.error)
            _element.percent_complete = AAZIntType(
                serialized_name="percentComplete",
                flags={"read_only": True},
            )
            _element.serial_number = AAZStrType(
                serialized_name="serialNumber",
                flags={"read_only": True},
            )
            _element.status = AAZStrType(
                flags={"read_only": True},
            )

            actions = cls._schema_on_200.value.Element.properties.details.discriminate_by("job_details_type", "DataBoxDisk").copy_progress.Element.actions
            actions.Element = AAZStrType()

            disks_and_size_details = cls._schema_on_200.value.Element.properties.details.discriminate_by("job_details_type", "DataBoxDisk").disks_and_size_details
            disks_and_size_details.Element = AAZIntType()

            granular_copy_log_details = cls._schema_on_200.value.Element.properties.details.discriminate_by("job_details_type", "DataBoxDisk").granular_copy_log_details
            granular_copy_log_details.Element = AAZObjectType()

            _element = cls._schema_on_200.value.Element.properties.details.discriminate_by("job_details_type", "DataBoxDisk").granular_copy_log_details.Element
            _element.account_id = AAZStrType(
                serialized_name="accountId",
                flags={"read_only": True},
            )
            _element.copy_log_details_type = AAZStrType(
                serialized_name="copyLogDetailsType",
                flags={"required": True},
            )
            _element.error_log_link = AAZStrType(
                serialized_name="errorLogLink",
                flags={"read_only": True},
            )
            _element.serial_number = AAZStrType(
                serialized_name="serialNumber",
                flags={"read_only": True},
            )
            _element.verbose_log_link = AAZStrType(
                serialized_name="verboseLogLink",
                flags={"read_only": True},
            )

            granular_copy_progress = cls._schema_on_200.value.Element.properties.details.discriminate_by("job_details_type", "DataBoxDisk").granular_copy_progress
            granular_copy_progress.Element = AAZObjectType()

            _element = cls._schema_on_200.value.Element.properties.details.discriminate_by("job_details_type", "DataBoxDisk").granular_copy_progress.Element
            _element.account_id = AAZStrType(
                serialized_name="accountId",
                flags={"read_only": True},
            )
            _element.actions = AAZListType(
                flags={"read_only": True},
            )
            _element.bytes_processed = AAZIntType(
                serialized_name="bytesProcessed",
                flags={"read_only": True},
            )
            _element.copy_status = AAZStrType(
                serialized_name="copyStatus",
                flags={"read_only": True},
            )
            _element.data_account_type = AAZStrType(
                serialized_name="dataAccountType",
                flags={"read_only": True},
            )
            _element.directories_errored_out = AAZIntType(
                serialized_name="directoriesErroredOut",
                flags={"read_only": True},
            )
            _element.error = AAZObjectType()
            _ListHelper._build_schema_cloud_error_read(_element.error)
            _element.files_errored_out = AAZIntType(
                serialized_name="filesErroredOut",
                flags={"read_only": True},
            )
            _element.files_processed = AAZIntType(
                serialized_name="filesProcessed",
                flags={"read_only": True},
            )
            _element.invalid_directories_processed = AAZIntType(
                serialized_name="invalidDirectoriesProcessed",
                flags={"read_only": True},
            )
            _element.invalid_file_bytes_uploaded = AAZIntType(
                serialized_name="invalidFileBytesUploaded",
                flags={"read_only": True},
            )
            _element.invalid_files_processed = AAZIntType(
                serialized_name="invalidFilesProcessed",
                flags={"read_only": True},
            )
            _element.is_enumeration_in_progress = AAZBoolType(
                serialized_name="isEnumerationInProgress",
                flags={"read_only": True},
            )
            _element.renamed_container_count = AAZIntType(
                serialized_name="renamedContainerCount",
                flags={"read_only": True},
            )
            _element.serial_number = AAZStrType(
                serialized_name="serialNumber",
                flags={"read_only": True},
            )
            _element.storage_account_name = AAZStrType(
                serialized_name="storageAccountName",
                flags={"read_only": True},
            )
            _element.total_bytes_to_process = AAZIntType(
                serialized_name="totalBytesToProcess",
                flags={"read_only": True},
            )
            _element.total_files_to_process = AAZIntType(
                serialized_name="totalFilesToProcess",
                flags={"read_only": True},
            )
            _element.transfer_type = AAZStrType(
                serialized_name="transferType",
                flags={"read_only": True},
            )

            actions = cls._schema_on_200.value.Element.properties.details.discriminate_by("job_details_type", "DataBoxDisk").granular_copy_progress.Element.actions
            actions.Element = AAZStrType()

            preferred_disks = cls._schema_on_200.value.Element.properties.details.discriminate_by("job_details_type", "DataBoxDisk").preferred_disks
            preferred_disks.Element = AAZIntType()

            disc_data_box_heavy = cls._schema_on_200.value.Element.properties.details.discriminate_by("job_details_type", "DataBoxHeavy")
            disc_data_box_heavy.copy_progress = AAZListType(
                serialized_name="copyProgress",
                flags={"read_only": True},
            )
            disc_data_box_heavy.device_password = AAZStrType(
                serialized_name="devicePassword",
            )

            copy_progress = cls._schema_on_200.value.Element.properties.details.discriminate_by("job_details_type", "DataBoxHeavy").copy_progress
            copy_progress.Element = AAZObjectType()
            _ListHelper._build_schema_copy_progress_read(copy_progress.Element)

            sku = cls._schema_on_200.value.Element.sku
            sku.display_name = AAZStrType(
                serialized_name="displayName",
            )
            sku.family = AAZStrType()
            sku.name = AAZStrType(
                flags={"required": True},
            )

            system_data = cls._schema_on_200.value.Element.system_data
            system_data.created_at = AAZStrType(
                serialized_name="createdAt",
                flags={"read_only": True},
            )
            system_data.created_by = AAZStrType(
                serialized_name="createdBy",
                flags={"read_only": True},
            )
            system_data.created_by_type = AAZStrType(
                serialized_name="createdByType",
                flags={"read_only": True},
            )
            system_data.last_modified_at = AAZStrType(
                serialized_name="lastModifiedAt",
                flags={"read_only": True},
            )
            system_data.last_modified_by = AAZStrType(
                serialized_name="lastModifiedBy",
                flags={"read_only": True},
            )
            system_data.last_modified_by_type = AAZStrType(
                serialized_name="lastModifiedByType",
                flags={"read_only": True},
            )

            tags = cls._schema_on_200.value.Element.tags
            tags.Element = AAZStrType()

            return cls._schema_on_200