pa_api.xmlapi.types.config.rules.rulebase

 1from pydantic import AliasPath, ConfigDict, Field
 2
 3from pa_api.xmlapi.types.utils import List, XMLBaseModel
 4
 5from .nat import NAT
 6from .security import Security
 7
 8
 9class RuleBase(XMLBaseModel):
10    model_config = ConfigDict(extra="allow")
11
12    security: List[Security] = Field(
13        validation_alias=AliasPath("security", "rules", "entry"),
14        default_factory=list,
15    )
16    nat: List[NAT] = Field(
17        validation_alias=AliasPath("nat", "rules", "entry"),
18        default_factory=list,
19    )
class RuleBase(pa_api.xmlapi.types.utils.XMLBaseModel):
10class RuleBase(XMLBaseModel):
11    model_config = ConfigDict(extra="allow")
12
13    security: List[Security] = Field(
14        validation_alias=AliasPath("security", "rules", "entry"),
15        default_factory=list,
16    )
17    nat: List[NAT] = Field(
18        validation_alias=AliasPath("nat", "rules", "entry"),
19        default_factory=list,
20    )

Usage docs: https://docs.pydantic.dev/2.9/concepts/models/

A base class for creating Pydantic models.

Attributes: __class_vars__: The names of the class variables defined on the model. __private_attributes__: Metadata about the private attributes of the model. __signature__: The synthesized __init__ [Signature][inspect.Signature] of the model.

__pydantic_complete__: Whether model building is completed, or if there are still undefined fields.
__pydantic_core_schema__: The core schema of the model.
__pydantic_custom_init__: Whether the model has a custom `__init__` function.
__pydantic_decorators__: Metadata containing the decorators defined on the model.
    This replaces `Model.__validators__` and `Model.__root_validators__` from Pydantic V1.
__pydantic_generic_metadata__: Metadata for generic models; contains data used for a similar purpose to
    __args__, __origin__, __parameters__ in typing-module generics. May eventually be replaced by these.
__pydantic_parent_namespace__: Parent namespace of the model, used for automatic rebuilding of models.
__pydantic_post_init__: The name of the post-init method for the model, if defined.
__pydantic_root_model__: Whether the model is a [`RootModel`][pydantic.root_model.RootModel].
__pydantic_serializer__: The `pydantic-core` `SchemaSerializer` used to dump instances of the model.
__pydantic_validator__: The `pydantic-core` `SchemaValidator` used to validate instances of the model.

__pydantic_extra__: A dictionary containing extra values, if [`extra`][pydantic.config.ConfigDict.extra]
    is set to `'allow'`.
__pydantic_fields_set__: The names of fields explicitly set during instantiation.
__pydantic_private__: Values of private attributes set on the model instance.
model_config = {'extra': 'allow'}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

security: Annotated[List[pa_api.xmlapi.types.config.rules.security.Security], BeforeValidator(func=<function ensure_list at 0x7f0db0c89ab0>, json_schema_input_type=PydanticUndefined)]
nat: Annotated[List[pa_api.xmlapi.types.config.rules.nat.NAT], BeforeValidator(func=<function ensure_list at 0x7f0db0c89ab0>, json_schema_input_type=PydanticUndefined)]
model_fields: ClassVar[Dict[str, pydantic.fields.FieldInfo]] = {'security': FieldInfo(annotation=List[Security], required=False, default_factory=list, alias_priority=2, validation_alias=AliasPath(path=['security', 'rules', 'entry']), metadata=[BeforeValidator(func=<function ensure_list>, json_schema_input_type=PydanticUndefined)]), 'nat': FieldInfo(annotation=List[NAT], required=False, default_factory=list, alias_priority=2, validation_alias=AliasPath(path=['nat', 'rules', 'entry']), metadata=[BeforeValidator(func=<function ensure_list>, json_schema_input_type=PydanticUndefined)])}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo] objects.

This replaces Model.__fields__ from Pydantic V1.

model_computed_fields: ClassVar[Dict[str, pydantic.fields.ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

Inherited Members
pydantic.main.BaseModel
BaseModel
model_extra
model_fields_set
model_construct
model_copy
model_dump
model_dump_json
model_json_schema
model_parametrized_name
model_post_init
model_rebuild
model_validate
model_validate_json
model_validate_strings
dict
json
parse_obj
parse_raw
parse_file
from_orm
construct
copy
schema
schema_json
validate
update_forward_refs
pa_api.xmlapi.types.utils.XMLBaseModel
from_xml