diff --git a/doc/source/api.rst b/doc/source/api.rst index 3feec74..e8f8d99 100644 --- a/doc/source/api.rst +++ b/doc/source/api.rst @@ -23,5 +23,4 @@ API Documentation blue_cwl.recipes blue_cwl.statistics blue_cwl.density_manipulation - blue_cwl.model blue_cwl.variant diff --git a/src/blue_cwl/core/common.py b/src/blue_cwl/core/common.py index a6848a1..f4f8b42 100644 --- a/src/blue_cwl/core/common.py +++ b/src/blue_cwl/core/common.py @@ -33,6 +33,10 @@ def to_dict(self, **kwargs) -> dict: return self.model_dump(**kwargs) def to_string(self, **kwargs) -> str: + """Serialize the object to JSON.""" + return self.to_json(**kwargs) + + def to_json(self, **kwargs) -> str: """Serialize the object to JSON.""" return self.model_dump_json(**kwargs) diff --git a/src/blue_cwl/mmodel/schemas.py b/src/blue_cwl/mmodel/schemas.py index 62f2d0f..1ae7558 100644 --- a/src/blue_cwl/mmodel/schemas.py +++ b/src/blue_cwl/mmodel/schemas.py @@ -7,12 +7,12 @@ from enum import Enum from pathlib import Path +from blue_cwl.core.common import CustomBaseModel from blue_cwl.mmodel.config import split_config from blue_cwl.mmodel.staging import ( materialize_canonical_config, materialize_placeholders_config, ) -from blue_cwl.model import CustomBaseModel from blue_cwl.nexus import get_distribution_as_dict from blue_cwl.staging import get_entry_id diff --git a/src/blue_cwl/model.py b/src/blue_cwl/model.py deleted file mode 100644 index f512d05..0000000 --- a/src/blue_cwl/model.py +++ /dev/null @@ -1,32 +0,0 @@ -# SPDX-License-Identifier: Apache-2.0 - -"""Custom Base Model for pydantic classes.""" - -import pydantic - -_PYDANTIC_MAJOR = int(pydantic.__version__.split(".", maxsplit=1)[0]) - - -class CustomBaseModel(pydantic.BaseModel): - """Custom Model Config.""" - - class Config: - """Custom Model Config.""" - - frozen = True - extra = pydantic.Extra.forbid - validate_assignment = True - arbitrary_types_allowed = True - - @classmethod - def from_dict(cls, obj): - """Convert object to model instance.""" - return cls.model_validate(obj) if _PYDANTIC_MAJOR > 1 else cls.parse_obj(obj) - - def to_dict(self) -> dict: - """Convert the object into a dict.""" - return self.model_dump() if _PYDANTIC_MAJOR > 1 else self.dict() - - def to_json(self) -> str: - """Serialize the object to JSON.""" - return self.model_dump_json() if _PYDANTIC_MAJOR > 1 else self.json() diff --git a/src/blue_cwl/utils.py b/src/blue_cwl/utils.py index 58f3aa4..4ab1ac8 100644 --- a/src/blue_cwl/utils.py +++ b/src/blue_cwl/utils.py @@ -31,8 +31,8 @@ from blue_cwl.constants import DEFAULT_CIRCUIT_BUILD_PARAMETERS from blue_cwl.core import cwl +from blue_cwl.core.common import CustomBaseModel from blue_cwl.exceptions import CWLWorkflowError -from blue_cwl.model import CustomBaseModel from blue_cwl.typing import StrOrPath if TYPE_CHECKING: