from sqlalchemy import Column, Integer from sqlalchemy.orm import Session from product.connectors import mysql class UnsafeMethods: """ This class contains methods that are intended for a single purpose: hard deletes of data from the database. These methods are not safe to use outside of that context -- please do not use them. """ class _Track(mysql.BaseModel): """Track Model class.""" __tablename__ = "track" tuid = Column("id", Integer, primary_key=True) release_id = Column("release_id", Integer) class _Release(mysql.BaseModel): """Release Model class.""" __tablename__ = "releases" release_id = Column("release_id", Integer, primary_key=True) @staticmethod def UNSAFE_delete_product_by_product_id(product_id: str, session: Session): """Delete a product by product id.""" session.query(UnsafeMethods._Release).filter( UnsafeMethods._Release.release_id == product_id ).delete()