1 | # -*- coding: ISO-8859-1 -*- |
---|
2 | |
---|
3 | ################################## |
---|
4 | # @program smon |
---|
5 | # @description simulation monitor |
---|
6 | # @copyright Copyright â(c)2009 Centre National de la Recherche Scientifique CNRS. |
---|
7 | # All Rights Reservedâ |
---|
8 | # @svn_file $Id: dao.py 2585 2013-03-24 04:09:22Z jripsl $ |
---|
9 | # @version $Rev: 2585 $ |
---|
10 | # @lastrevision $Date: 2013-03-24 05:09:22 +0100 (Sun, 24 Mar 2013) $ |
---|
11 | # @license CeCILL (http://dods.ipsl.jussieu.fr/jripsl/smon/LICENSE) |
---|
12 | ################################## |
---|
13 | |
---|
14 | from logger import * |
---|
15 | |
---|
16 | class DAO(Database,Logger): |
---|
17 | message_columns="id,name,timestamp,nested_level,simulation_id" |
---|
18 | |
---|
19 | @classmethod |
---|
20 | def get_message_from_resultset(self,rs): |
---|
21 | return Message(id=rs[0],name=rs[1],timestamp=rs[2],nested_level=rs[3],simulation_id=rs[4]) |
---|
22 | |
---|
23 | @classmethod |
---|
24 | def add_message(self,message,con): |
---|
25 | c = con.cursor() |
---|
26 | |
---|
27 | c.execute("insert into message (id,name,timestamp,nested_level,simulation_id) values (?,?,?,?,?)",(m.name,m.timestamp,m.nested_level,m.simulation_id)) |
---|
28 | |
---|
29 | m.id=c.lastrowid |
---|
30 | |
---|
31 | c.close() |
---|
32 | |
---|
33 | @classmethod |
---|
34 | def get_messages(self): |
---|
35 | messages=[] |
---|
36 | |
---|
37 | c = self._conn.cursor() |
---|
38 | |
---|
39 | q="select %s from message order by timestamp asc" % (self.message_columns) |
---|
40 | c.execute(q) |
---|
41 | |
---|
42 | rs=c.fetchone() |
---|
43 | while rs!=None: |
---|
44 | messages.append(self.getMessageFromResultSet(rs)) |
---|
45 | rs=c.fetchone() |
---|
46 | |
---|
47 | c.close() |
---|
48 | |
---|
49 | return messages |
---|