refactoring and add various comments
[rainbowstream.git] / rainbowstream / db.py
index 5bfb04081c715ad1b8f2690b1527a42987e9222a..1714005d77a4154d9052144b595e5b978a855640 100644 (file)
@@ -9,10 +9,14 @@ class RainbowDB():
     engine = None
 
     def __init__(self):
     engine = None
 
     def __init__(self):
+        """
+        Init DB
+        """
         if not os.path.isfile('rainbow.db'):
             init_db()
         self.engine = create_engine('sqlite:///rainbow.db', echo=False)
 
         if not os.path.isfile('rainbow.db'):
             init_db()
         self.engine = create_engine('sqlite:///rainbow.db', echo=False)
 
+
     def tweet_store(self, tweet_id):
         """
         Store tweet id
     def tweet_store(self, tweet_id):
         """
         Store tweet id
@@ -23,6 +27,7 @@ class RainbowDB():
         session.add(t)
         session.commit()
 
         session.add(t)
         session.commit()
 
+
     def rainbow_to_tweet_query(self, rid):
         """
         Query base of rainbow id
     def rainbow_to_tweet_query(self, rid):
         """
         Query base of rainbow id
@@ -32,6 +37,7 @@ class RainbowDB():
         res = session.query(Tweet).filter_by(rainbow_id=rid).all()
         return res
 
         res = session.query(Tweet).filter_by(rainbow_id=rid).all()
         return res
 
+
     def tweet_to_rainbow_query(self, tid):
         """
         Query base of tweet id
     def tweet_to_rainbow_query(self, tid):
         """
         Query base of tweet id
@@ -41,6 +47,7 @@ class RainbowDB():
         res = session.query(Tweet).filter_by(tweet_id=tid).all()
         return res
 
         res = session.query(Tweet).filter_by(tweet_id=tid).all()
         return res
 
+
     def message_store(self, message_id):
         """
         Store message id
     def message_store(self, message_id):
         """
         Store message id
@@ -51,6 +58,7 @@ class RainbowDB():
         session.add(m)
         session.commit()
 
         session.add(m)
         session.commit()
 
+
     def rainbow_to_message_query(self, rid):
         """
         Query base of rainbow id
     def rainbow_to_message_query(self, rid):
         """
         Query base of rainbow id
@@ -60,6 +68,7 @@ class RainbowDB():
         res = session.query(Message).filter_by(rainbow_id=rid).all()
         return res
 
         res = session.query(Message).filter_by(rainbow_id=rid).all()
         return res
 
+
     def message_to_rainbow_query(self, mid):
         """
         Query base of message id
     def message_to_rainbow_query(self, mid):
         """
         Query base of message id
@@ -69,6 +78,7 @@ class RainbowDB():
         res = session.query(Message).filter_by(message_id=mid).all()
         return res
 
         res = session.query(Message).filter_by(message_id=mid).all()
         return res
 
+
     def theme_store(self, theme_name):
         """
         Store theme
     def theme_store(self, theme_name):
         """
         Store theme
@@ -79,6 +89,7 @@ class RainbowDB():
         session.add(th)
         session.commit()
 
         session.add(th)
         session.commit()
 
+
     def theme_update(self, theme_name):
         """
         Update theme
     def theme_update(self, theme_name):
         """
         Update theme
@@ -90,6 +101,7 @@ class RainbowDB():
             r.theme_name = theme_name
         session.commit()
 
             r.theme_name = theme_name
         session.commit()
 
+
     def theme_query(self):
         """
         Query theme
     def theme_query(self):
         """
         Query theme
@@ -98,3 +110,36 @@ class RainbowDB():
         session = Session()
         res = session.query(Theme).all()
         return res
         session = Session()
         res = session.query(Theme).all()
         return res
+
+
+    def semaphore_store(self, flag):
+        """
+        Store semaphore flag
+        """
+        Session = sessionmaker(bind=self.engine)
+        session = Session()
+        th = Semaphore(flag)
+        session.add(th)
+        session.commit()
+
+
+    def semaphore_update(self, flag):
+        """
+        Update semaphore flag
+        """
+        Session = sessionmaker(bind=self.engine)
+        session = Session()
+        res = session.query(Semaphore).all()
+        for r in res:
+            r.flag = flag
+        session.commit()
+
+
+    def semaphore_query(self):
+        """
+        Query semaphore
+        """
+        Session = sessionmaker(bind=self.engine)
+        session = Session()
+        res = session.query(Semaphore).all()
+        return res[0].flag