summaryrefslogtreecommitdiffstats
path: root/tools/axl/log.py
diff options
context:
space:
mode:
authorThe Android Open Source Project <initial-contribution@android.com>2008-10-21 07:00:00 -0700
committerThe Android Open Source Project <initial-contribution@android.com>2008-10-21 07:00:00 -0700
commit5c11852110eeb03dc5a69111354b383f98d15336 (patch)
tree7b26fde6effb80c241f28fc3e620016e7f86418e /tools/axl/log.py
downloadandroid_development-5c11852110eeb03dc5a69111354b383f98d15336.tar.gz
android_development-5c11852110eeb03dc5a69111354b383f98d15336.tar.bz2
android_development-5c11852110eeb03dc5a69111354b383f98d15336.zip
Initial Contribution
Diffstat (limited to 'tools/axl/log.py')
-rw-r--r--tools/axl/log.py55
1 files changed, 55 insertions, 0 deletions
diff --git a/tools/axl/log.py b/tools/axl/log.py
new file mode 100644
index 000000000..7543270b1
--- /dev/null
+++ b/tools/axl/log.py
@@ -0,0 +1,55 @@
+#!/usr/bin/env python
+
+#
+# Copyright 2007, The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+import time, sys
+import singletonmixin
+
+class Log(singletonmixin.Singleton):
+
+ def __init__(self, file):
+ """_file: filename or open file"""
+
+ if type(file) is str:
+ self._file = open(file, "a")
+ else:
+ self._file = file
+
+ def _getTime(self):
+ tm = time.time()
+ return "%s:%.2d" % (time.strftime('%m/%d/%Y %H:%M:%S',
+ time.localtime(tm)),
+ int((tm - int(tm)) * 100))
+
+ def _log(self, *logstrs):
+ timeStr = self._getTime()
+ for ln in " ".join(map(str, logstrs)).split("\n"):
+ self._file.write("%s %s\n" % (timeStr, ln))
+ self._file.flush()
+
+ def debug(self, *logstrs):
+ self._log("D", *logstrs)
+ def info(self, *logstrs):
+ self._log("I", *logstrs)
+ def warn(self, *logstrs):
+ self._log("W", *logstrs)
+ def error(self, *logstrs):
+ self._log("E", *logstrs)
+
+ # default to info
+ log = info
+ __call__ = log