Config (autotransform.schema.config)
A set of configuration options for a schema.
- class autotransform.schema.config.SchemaConfig(*, schema_name: str, allowed_validation_level: ValidationResultLevel = ValidationResultLevel.NONE, max_submissions: int | None = None, owners: List[str] = None)
Bases:
ComponentModel
An object containing all configuration information for a Schema.
- schema_name
The unique name of the schema.
- Type:
str
- allowed_validation_level
The allowed level of validation issues. Any issues raised above this level will trigger exceptions. Defaults to ValidationResultLevel.NONE.
- Type:
ValidationResultLevel, optional
- max_submissions
The maximum number of submissions the schema can create per run. If None, there is no limit. Defaults to None.
- Type:
Optional[int], optional
- owners
The owners for the schema. Defaults to [].
- Type:
List[str], optional
- allowed_validation_level: ValidationResultLevel
- static from_console(prev_config: SchemaConfig | None = None) SchemaConfig
Gets a SchemaConfig using console inputs.
- Parameters:
prev_config (Optional[SchemaConfig], optional) – A previously input SchemaConfig. Defaults to None.
- Returns:
The input SchemaConfig.
- Return type:
- max_submissions: int | None
- classmethod max_submissions_is_positive(v: int | None) int | None
Validates that max submissions is positive.
- Parameters:
cls (Type[SchemaConfig]) – The Config class.
v (int) – The maximum number of submissions.
- Raises:
ValueError – Raised if the maximum number of submissions is not positive.
- Returns:
The unmodified maximum number of submissions.
- Return type:
Optional[int]
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {}
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'allowed_validation_level': FieldInfo(annotation=ValidationResultLevel, required=False, default=<ValidationResultLevel.NONE: 'none'>), 'max_submissions': FieldInfo(annotation=Union[int, NoneType], required=False, default=None), 'owners': FieldInfo(annotation=List[str], required=False, default_factory=list), 'schema_name': FieldInfo(annotation=str, required=True)}
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- owners: List[str]
- schema_name: str