def from_dict()

in client/python/polaris/catalog/models/base_update.py [0:0]


    def from_dict(cls, obj: Dict[str, Any]) -> Optional[Union[AddSchemaUpdate, AddSnapshotUpdate, AddSortOrderUpdate, AddPartitionSpecUpdate, AddViewVersionUpdate, AssignUUIDUpdate, RemovePartitionStatisticsUpdate, RemovePropertiesUpdate, RemoveSnapshotRefUpdate, RemoveSnapshotsUpdate, RemoveStatisticsUpdate, SetCurrentSchemaUpdate, SetCurrentViewVersionUpdate, SetDefaultSortOrderUpdate, SetDefaultSpecUpdate, SetLocationUpdate, SetPartitionStatisticsUpdate, SetPropertiesUpdate, SetSnapshotRefUpdate, SetStatisticsUpdate, UpgradeFormatVersionUpdate]]:
        """Create an instance of BaseUpdate from a dict"""
        # look up the object type based on discriminator mapping
        object_type = cls.get_discriminator_value(obj)
        if object_type ==  'AddSchemaUpdate':
            return import_module("polaris.catalog.models.add_schema_update").AddSchemaUpdate.from_dict(obj)
        if object_type ==  'AddSnapshotUpdate':
            return import_module("polaris.catalog.models.add_snapshot_update").AddSnapshotUpdate.from_dict(obj)
        if object_type ==  'AddSortOrderUpdate':
            return import_module("polaris.catalog.models.add_sort_order_update").AddSortOrderUpdate.from_dict(obj)
        if object_type ==  'AddPartitionSpecUpdate':
            return import_module("polaris.catalog.models.add_partition_spec_update").AddPartitionSpecUpdate.from_dict(obj)
        if object_type ==  'AddViewVersionUpdate':
            return import_module("polaris.catalog.models.add_view_version_update").AddViewVersionUpdate.from_dict(obj)
        if object_type ==  'AssignUUIDUpdate':
            return import_module("polaris.catalog.models.assign_uuid_update").AssignUUIDUpdate.from_dict(obj)
        if object_type ==  'RemovePartitionStatisticsUpdate':
            return import_module("polaris.catalog.models.remove_partition_statistics_update").RemovePartitionStatisticsUpdate.from_dict(obj)
        if object_type ==  'RemovePropertiesUpdate':
            return import_module("polaris.catalog.models.remove_properties_update").RemovePropertiesUpdate.from_dict(obj)
        if object_type ==  'RemoveSnapshotRefUpdate':
            return import_module("polaris.catalog.models.remove_snapshot_ref_update").RemoveSnapshotRefUpdate.from_dict(obj)
        if object_type ==  'RemoveSnapshotsUpdate':
            return import_module("polaris.catalog.models.remove_snapshots_update").RemoveSnapshotsUpdate.from_dict(obj)
        if object_type ==  'RemoveStatisticsUpdate':
            return import_module("polaris.catalog.models.remove_statistics_update").RemoveStatisticsUpdate.from_dict(obj)
        if object_type ==  'SetCurrentSchemaUpdate':
            return import_module("polaris.catalog.models.set_current_schema_update").SetCurrentSchemaUpdate.from_dict(obj)
        if object_type ==  'SetCurrentViewVersionUpdate':
            return import_module("polaris.catalog.models.set_current_view_version_update").SetCurrentViewVersionUpdate.from_dict(obj)
        if object_type ==  'SetDefaultSortOrderUpdate':
            return import_module("polaris.catalog.models.set_default_sort_order_update").SetDefaultSortOrderUpdate.from_dict(obj)
        if object_type ==  'SetDefaultSpecUpdate':
            return import_module("polaris.catalog.models.set_default_spec_update").SetDefaultSpecUpdate.from_dict(obj)
        if object_type ==  'SetLocationUpdate':
            return import_module("polaris.catalog.models.set_location_update").SetLocationUpdate.from_dict(obj)
        if object_type ==  'SetPartitionStatisticsUpdate':
            return import_module("polaris.catalog.models.set_partition_statistics_update").SetPartitionStatisticsUpdate.from_dict(obj)
        if object_type ==  'SetPropertiesUpdate':
            return import_module("polaris.catalog.models.set_properties_update").SetPropertiesUpdate.from_dict(obj)
        if object_type ==  'SetSnapshotRefUpdate':
            return import_module("polaris.catalog.models.set_snapshot_ref_update").SetSnapshotRefUpdate.from_dict(obj)
        if object_type ==  'SetStatisticsUpdate':
            return import_module("polaris.catalog.models.set_statistics_update").SetStatisticsUpdate.from_dict(obj)
        if object_type ==  'UpgradeFormatVersionUpdate':
            return import_module("polaris.catalog.models.upgrade_format_version_update").UpgradeFormatVersionUpdate.from_dict(obj)

        raise ValueError("BaseUpdate failed to lookup discriminator value from " +
                            json.dumps(obj) + ". Discriminator property name: " + cls.__discriminator_property_name +
                            ", mapping: " + json.dumps(cls.__discriminator_value_class_map))