]>
Commit | Line | Data |
---|---|---|
436f27dd AS |
1 | # Copyright (c) 2010 Citrix Systems, Inc. |
2 | # | |
3 | # Licensed under the Apache License, Version 2.0 (the "License"); | |
4 | # you may not use this file except in compliance with the License. | |
5 | # You may obtain a copy of the License at: | |
6 | # | |
7 | # http://www.apache.org/licenses/LICENSE-2.0 | |
8 | # | |
9 | # Unless required by applicable law or agreed to in writing, software | |
10 | # distributed under the License is distributed on an "AS IS" BASIS, | |
11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
12 | # See the License for the specific language governing permissions and | |
13 | # limitations under the License. | |
14 | ||
15 | from OVEStandard import * | |
16 | ||
17 | class OVELogger(QtCore.QObject): | |
18 | instance = None | |
19 | def __init__(self): | |
20 | QtCore.QObject.__init__(self) | |
21 | self.contents = [] | |
22 | self.loggers = [] | |
23 | ||
24 | @classmethod | |
25 | def Inst(cls): | |
26 | if cls.instance is None: | |
27 | cls.instance = OVELogger() | |
28 | return cls.instance | |
29 | ||
30 | def reset(self): | |
31 | self.contents = [] | |
32 | self.update() | |
33 | ||
34 | def logString(self, message): | |
35 | self.contents += [str(message)] | |
36 | if len(self.contents) > 500: | |
37 | self.contents = ['+++ Log truncated', ''] + self.contents[50:] | |
38 | self.update() | |
39 | ||
40 | def update(self): | |
41 | self.emit(QtCore.SIGNAL("logUpdated()")) | |
42 | ||
43 | def OVELog(message): | |
44 | OVELogger.Inst().logString(message) | |
45 |