Package zephir :: Package backend :: Module db_utils
[frames] | no frames]

Source Code for Module zephir.backend.db_utils

 1  # -*- coding: UTF-8 -*- 
 2  ########################################################################### 
 3  # Eole NG - 2007   
 4  # Copyright Pole de Competence Eole  (Ministere Education - Academie Dijon) 
 5  # Licence CeCill  cf /root/LicenceEole.txt 
 6  # eole@ac-dijon.fr  
 7  #   
 8  # db_utils.py 
 9  #   
10  # fonctions utiles pour l'accès à la base de données (via adbapi) 
11  #        
12  ########################################################################### 
13  from zephir.backend import config 
14  from twisted.enterprise import adbapi 
15  import traceback 
16   
17 -class DBException(Exception): pass
18
19 -def db_client_failed(error,*args):
20 """errback du deffered 21 """ 22 try: 23 traceback.print_exc() 24 return 0, str(error.type), error.getErrorMessage() 25 except: 26 return 0,''
27
28 -def dbClientSucceeded(l):
29 """callback du deffered 30 """ 31 if l: 32 return 1,'ok' 33 else: 34 return 0,"no records" 35 raise DBException("No records")
36
37 -def db_connect():
38 """crée un pool de connexion pour la base de données zephir 39 """ 40 return adbapi.ConnectionPool("psycopg2",host=config.DB_HOST,user=config.DB_USER,password=config.DB_PASSWD,database=config.DB_NAME)
41
42 -def db_log(dbpool,id_serveur,date,type_msg,msg):
43 """insère un log dans la base zephir 44 """ 45 query = """insert into log_serveur (id_serveur,date,type,message) values (%s,%s,%s,E%s)""" 46 return dbpool.runOperation(query, (int(id_serveur),date,type_msg,msg))
47
48 -class Serveur:
49 """classe utilitaire pour récupérer diverses données sur un serveur""" 50
51 - def __init__(self, id_s):
52 """initialise l'objet serveur et récupère les infos 53 """ 54 # réucpération de l'établissement et de l'état 55 import psycopg2 as pgsql 56 cx = PgSQL.connect(database=config.DB_NAME,user=config.DB_USER,password=config.DB_PASSWD) 57 cu = cx.cursor() 58 cu.execute("select * from serveurs where id=%s", (int(id_s),)) 59 cu.close() 60 cx.close()
61