from dataclasses import dataclass, field from typing import Dict, Optional import uuid from frostfs_sdk.models.dto.owner_id import OwnerId from frostfs_sdk.models.dto.version import Version from frostfs_sdk.models.enums.basic_acl import BasicAcl from frostfs_sdk.models.dto.placement_policy import PlacementPolicy @dataclass class Container: # basicAcl: BasicAcl # TODO: will remove it? placementPolicy: PlacementPolicy nonce: uuid.UUID = field(default_factory=uuid.uuid4) version: Optional[Version] = None owner_id: Optional[OwnerId] = None attributes: Dict[str, str] = field(default_factory=dict) def __init__(self, placementPolicy: PlacementPolicy): self.nonce = uuid.uuid4() self.placementPolicy = placementPolicy self.attributes = {} @dataclass class ContainerId: value: str