diff --git a/proto.py b/proto.py index 9616a61..734e358 100644 --- a/proto.py +++ b/proto.py @@ -65,83 +65,6 @@ class SessionPropertyMixin(object): session.close() -# Reflect each database table we need to use, via schemas. -class Slugs(Base, SessionPropertyMixin): - __table__ = Table('slugs', metadata, autoload=True) - -class Apps(Base, SessionPropertyMixin): - __table__ = Table('apps', metadata, autoload=True) - - @classmethod - def register(cls, app, session): - # TODO: Check for existing record first. - - existing = session.query(cls).filter_by(app=app).first() - - if existing: - self = existing - else: - self = cls() - - self.session = session - self.save() - - return self - - -class Extracts(Base, SessionPropertyMixin): - __table__ = Table('extracts', metadata, autoload=True) - - @classmethod - def register(cls, slug, session): - # TODO: Check for existing record first. - - existing = session.query(cls).filter_by(slug=slug).first() - - if existing: - self = existing - else: - self = cls() - - self.session = session - self.slug = slug - self.updated_at = datetime.utcnow() - self.save() - - return self - - def mark_fail(self, failure_step, meta=None): - self.success = False - self.failure_step = failure_step - self.meta = meta - self.updated_at = datetime.utcnow() - self.save() - - def extract_fail(self, language, stdout, stderr): - self.success = False - self.failure_step = 'extract' - self.language = language - - if not self.meta: - self.meta = {} - - self.meta['stdout'] = stdout - self.meta['stderr'] = stderr - - self.updated_at = datetime.utcnow() - - self.save() - - def mark_success(self): - self.success = True - self.updated_at = datetime.utcnow() - self.save() - - def save(self): - self.session.add(self) - self.session.commit() - - class Warehouse(object): def __init__(self, conn_str): self.db = RealDictConnection(conn_str)