from datetime import datetime
from typing import Optional
from tdw_catalog.utils import MetadataFieldType
import tdw_catalog.metadata_template.field as field
[docs]class Field(field.MetadataTemplateField[datetime]):
"""
A specific time and date associated with the :class:`.Dataset`
Attributes
----------
None
"""
def __init__(self, key: str, default_value: Optional[datetime],
optional: Optional[bool]) -> None:
super().__init__(key, default_value, optional)
def serialize(self) -> dict:
res = super().serialize()
res["default_value"] = self.default_value.isoformat(
) if self.default_value is not None else None
res["field_type"] = MetadataFieldType.FT_DATETIME
return res