コード例 #1
0
ファイル: revision.py プロジェクト: hetida/hetida-designer
def update_tr(session: SQLAlchemySession,
              transformation_revision: TransformationRevision) -> None:
    try:
        db_model = transformation_revision.to_orm_model()
        session.execute(
            update(TransformationRevisionDBModel).where(
                TransformationRevisionDBModel.id == db_model.id).values(
                    revision_group_id=db_model.revision_group_id,
                    name=db_model.name,
                    description=db_model.description,
                    category=db_model.category,
                    version_tag=db_model.version_tag,
                    state=db_model.state,
                    type=db_model.type,
                    documentation=db_model.documentation,
                    workflow_content=db_model.workflow_content,
                    component_code=db_model.component_code,
                    io_interface=db_model.io_interface,
                    test_wiring=db_model.test_wiring,
                    released_timestamp=db_model.released_timestamp,
                    disabled_timestamp=db_model.disabled_timestamp,
                ))

    except IntegrityError as e:
        msg = (
            f"Integrity Error while trying to update "
            f"transformation revision with id {transformation_revision.id}.\n"
            f"Error was:\n{str(e)}")
        logger.error(msg)
        raise DBIntegrityError(msg) from e
コード例 #2
0
ファイル: revision.py プロジェクト: hetida/hetida-designer
def add_tr(session: SQLAlchemySession,
           transformation_revision: TransformationRevision) -> None:
    try:
        db_model = transformation_revision.to_orm_model()
        session.add(db_model)
    except IntegrityError as e:
        msg = (
            f"Integrity Error while trying to store transformation revision "
            f"with id {transformation_revision.id}. Error was:\n{str(e)}")
        logger.error(msg)
        raise DBIntegrityError(msg) from e