summaryrefslogtreecommitdiff
path: root/lib/Db/__init__.py
diff options
context:
space:
mode:
authoryo mama <pepper@scannerjammer.com>2015-09-22 00:51:40 -0700
committeryo mama <pepper@scannerjammer.com>2015-09-22 00:51:40 -0700
commitd3e7b5708deffbed864c916de22663f48333c58b (patch)
treeef76784a7827baff88c03670bf22832a3f146b17 /lib/Db/__init__.py
parent86c79f4372d7b2e7640a26473c7a4d331cdf7d16 (diff)
finishing server
Diffstat (limited to 'lib/Db/__init__.py')
-rw-r--r--lib/Db/__init__.py60
1 files changed, 60 insertions, 0 deletions
diff --git a/lib/Db/__init__.py b/lib/Db/__init__.py
new file mode 100644
index 0000000..c6286ad
--- /dev/null
+++ b/lib/Db/__init__.py
@@ -0,0 +1,60 @@
+# coding: utf-8
+import time, sys
+HOST = "lalalizard.com"
+USER = "asdfus"
+PASSWORD = "gTYgT&M6q"
+DATABASE = "asdfus"
+
+from sqlalchemy import Column, Integer, LargeBinary, String, create_engine, sql
+from sqlalchemy.ext.declarative import declarative_base
+from sqlalchemy.orm import sessionmaker
+_NULL = sql.null()
+
+Base = declarative_base()
+metadata = Base.metadata
+
+class ImCmd(Base):
+ __tablename__ = 'im_cmd'
+ id = Column(Integer, primary_key=True)
+ date = Column(Integer)
+ remote_addr = Column(String(16))
+ name = Column(String(16))
+ url = Column(String(256))
+ dir = Column(String(2))
+ oldfile = Column(String(256))
+ newfile = Column(String(256))
+ cmd = Column(LargeBinary)
+ dataobj = Column(LargeBinary)
+ tag = Column(String(50))
+
+class Db(object):
+ def __init__(self):
+ engine = create_engine('mysql://{}:{}@{}/{}'.format(
+ USER,
+ PASSWORD,
+ HOST,
+ DATABASE
+ ))
+ self.Session = sessionmaker(bind=engine)
+
+ def insert_cmd ( self, **kwargs):
+ try:
+ session = self.Session()
+ _entry_data = {
+ 'date' : kwargs.get("date", int(time.time())),
+ 'remote_addr' : kwargs['remote_addr'] or _NULL,
+ 'name' : kwargs['username'] or _NULL,
+ 'url' : kwargs['username'] or _NULL,
+ 'dir' : kwargs['directory'] or _NULL,
+ 'oldfile' : kwargs['oldfile'] or _NULL,
+ 'newfile' : kwargs['newfile'] or _NULL,
+ 'cmd' : kwargs['cmd'] or _NULL,
+ 'dataobj' : kwargs['dataobj'] or _NULL,
+ 'tag' : kwargs['tag'] or _NULL
+ }
+ session.add(ImCmd(**_entry_data))
+ session.commit()
+ #FIXME session.close()....
+ except Exception as e:
+ sys.stderr.write("Unable to commit database entry\n");
+ sys.stderr.write(str(e))