cognee/cognee-mcp/cognee-api-client/cognee_api_client/models/memify_payload_dto.py
2025-10-09 17:48:48 +01:00

239 lines
8.2 KiB
Python

from collections.abc import Mapping
from typing import Any, Literal, TypeVar, Union, cast
from uuid import UUID
from attrs import define as _attrs_define
from attrs import field as _attrs_field
from ..types import UNSET, Unset
T = TypeVar("T", bound="MemifyPayloadDTO")
@_attrs_define
class MemifyPayloadDTO:
"""
Attributes:
extraction_tasks (Union[None, Unset, list[str]]):
enrichment_tasks (Union[None, Unset, list[str]]):
data (Union[None, Unset, str]): Default: ''.
dataset_name (Union[None, Unset, str]):
dataset_id (Union[Literal[''], None, UUID, Unset]):
node_name (Union[None, Unset, list[str]]):
run_in_background (Union[None, Unset, bool]): Default: False.
"""
extraction_tasks: Union[None, Unset, list[str]] = UNSET
enrichment_tasks: Union[None, Unset, list[str]] = UNSET
data: Union[None, Unset, str] = ""
dataset_name: Union[None, Unset, str] = UNSET
dataset_id: Union[Literal[""], None, UUID, Unset] = UNSET
node_name: Union[None, Unset, list[str]] = UNSET
run_in_background: Union[None, Unset, bool] = False
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
def to_dict(self) -> dict[str, Any]:
extraction_tasks: Union[None, Unset, list[str]]
if isinstance(self.extraction_tasks, Unset):
extraction_tasks = UNSET
elif isinstance(self.extraction_tasks, list):
extraction_tasks = self.extraction_tasks
else:
extraction_tasks = self.extraction_tasks
enrichment_tasks: Union[None, Unset, list[str]]
if isinstance(self.enrichment_tasks, Unset):
enrichment_tasks = UNSET
elif isinstance(self.enrichment_tasks, list):
enrichment_tasks = self.enrichment_tasks
else:
enrichment_tasks = self.enrichment_tasks
data: Union[None, Unset, str]
if isinstance(self.data, Unset):
data = UNSET
else:
data = self.data
dataset_name: Union[None, Unset, str]
if isinstance(self.dataset_name, Unset):
dataset_name = UNSET
else:
dataset_name = self.dataset_name
dataset_id: Union[Literal[""], None, Unset, str]
if isinstance(self.dataset_id, Unset):
dataset_id = UNSET
elif isinstance(self.dataset_id, UUID):
dataset_id = str(self.dataset_id)
else:
dataset_id = self.dataset_id
node_name: Union[None, Unset, list[str]]
if isinstance(self.node_name, Unset):
node_name = UNSET
elif isinstance(self.node_name, list):
node_name = self.node_name
else:
node_name = self.node_name
run_in_background: Union[None, Unset, bool]
if isinstance(self.run_in_background, Unset):
run_in_background = UNSET
else:
run_in_background = self.run_in_background
field_dict: dict[str, Any] = {}
field_dict.update(self.additional_properties)
field_dict.update({})
if extraction_tasks is not UNSET:
field_dict["extractionTasks"] = extraction_tasks
if enrichment_tasks is not UNSET:
field_dict["enrichmentTasks"] = enrichment_tasks
if data is not UNSET:
field_dict["data"] = data
if dataset_name is not UNSET:
field_dict["datasetName"] = dataset_name
if dataset_id is not UNSET:
field_dict["datasetId"] = dataset_id
if node_name is not UNSET:
field_dict["nodeName"] = node_name
if run_in_background is not UNSET:
field_dict["runInBackground"] = run_in_background
return field_dict
@classmethod
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
d = dict(src_dict)
def _parse_extraction_tasks(data: object) -> Union[None, Unset, list[str]]:
if data is None:
return data
if isinstance(data, Unset):
return data
try:
if not isinstance(data, list):
raise TypeError()
extraction_tasks_type_0 = cast(list[str], data)
return extraction_tasks_type_0
except: # noqa: E722
pass
return cast(Union[None, Unset, list[str]], data)
extraction_tasks = _parse_extraction_tasks(d.pop("extractionTasks", UNSET))
def _parse_enrichment_tasks(data: object) -> Union[None, Unset, list[str]]:
if data is None:
return data
if isinstance(data, Unset):
return data
try:
if not isinstance(data, list):
raise TypeError()
enrichment_tasks_type_0 = cast(list[str], data)
return enrichment_tasks_type_0
except: # noqa: E722
pass
return cast(Union[None, Unset, list[str]], data)
enrichment_tasks = _parse_enrichment_tasks(d.pop("enrichmentTasks", UNSET))
def _parse_data(data: object) -> Union[None, Unset, str]:
if data is None:
return data
if isinstance(data, Unset):
return data
return cast(Union[None, Unset, str], data)
data = _parse_data(d.pop("data", UNSET))
def _parse_dataset_name(data: object) -> Union[None, Unset, str]:
if data is None:
return data
if isinstance(data, Unset):
return data
return cast(Union[None, Unset, str], data)
dataset_name = _parse_dataset_name(d.pop("datasetName", UNSET))
def _parse_dataset_id(data: object) -> Union[Literal[""], None, UUID, Unset]:
if data is None:
return data
if isinstance(data, Unset):
return data
try:
if not isinstance(data, str):
raise TypeError()
dataset_id_type_0 = UUID(data)
return dataset_id_type_0
except: # noqa: E722
pass
dataset_id_type_1 = cast(Literal[""], data)
if dataset_id_type_1 != "":
raise ValueError(f"datasetId_type_1 must match const '', got '{dataset_id_type_1}'")
return dataset_id_type_1
return cast(Union[Literal[""], None, UUID, Unset], data)
dataset_id = _parse_dataset_id(d.pop("datasetId", UNSET))
def _parse_node_name(data: object) -> Union[None, Unset, list[str]]:
if data is None:
return data
if isinstance(data, Unset):
return data
try:
if not isinstance(data, list):
raise TypeError()
node_name_type_0 = cast(list[str], data)
return node_name_type_0
except: # noqa: E722
pass
return cast(Union[None, Unset, list[str]], data)
node_name = _parse_node_name(d.pop("nodeName", UNSET))
def _parse_run_in_background(data: object) -> Union[None, Unset, bool]:
if data is None:
return data
if isinstance(data, Unset):
return data
return cast(Union[None, Unset, bool], data)
run_in_background = _parse_run_in_background(d.pop("runInBackground", UNSET))
memify_payload_dto = cls(
extraction_tasks=extraction_tasks,
enrichment_tasks=enrichment_tasks,
data=data,
dataset_name=dataset_name,
dataset_id=dataset_id,
node_name=node_name,
run_in_background=run_in_background,
)
memify_payload_dto.additional_properties = d
return memify_payload_dto
@property
def additional_keys(self) -> list[str]:
return list(self.additional_properties.keys())
def __getitem__(self, key: str) -> Any:
return self.additional_properties[key]
def __setitem__(self, key: str, value: Any) -> None:
self.additional_properties[key] = value
def __delitem__(self, key: str) -> None:
del self.additional_properties[key]
def __contains__(self, key: str) -> bool:
return key in self.additional_properties