added loggers
This commit is contained in:
29
L.hx
Executable file
29
L.hx
Executable file
@@ -0,0 +1,29 @@
|
||||
package;
|
||||
|
||||
import haxework.log.ILogger;
|
||||
|
||||
class L {
|
||||
|
||||
private static var loggers:Array<ILogger> = new Array<ILogger>();
|
||||
|
||||
public static function push(logger:ILogger):Void {
|
||||
loggers.push(logger);
|
||||
}
|
||||
|
||||
public static function d(tag:String, message:String, ?error:Dynamic, ?p:haxe.PosInfos):Void {
|
||||
//trace(p);
|
||||
for (logger in loggers) logger.d(tag, message, error, p);
|
||||
}
|
||||
|
||||
public static function i(tag:String, message:String, ?error:Dynamic, ?p:haxe.PosInfos):Void {
|
||||
for (logger in loggers) logger.i(tag, message, error, p);
|
||||
}
|
||||
|
||||
public static function w(tag:String, message:String, ?error:Dynamic, ?p:haxe.PosInfos):Void {
|
||||
for (logger in loggers) logger.w(tag, message, error, p);
|
||||
}
|
||||
|
||||
public static function e(tag:String, message:String, ?error:Dynamic, ?p:haxe.PosInfos):Void {
|
||||
for (logger in loggers) logger.e(tag, message, error, p);
|
||||
}
|
||||
}
|
||||
12
haxelib.json
12
haxelib.json
@@ -1,11 +1,11 @@
|
||||
{
|
||||
"name": "haxework",
|
||||
"url" : "git@bitbucket.org/shmyga/haxework.git",
|
||||
"license": "",
|
||||
"tags": [],
|
||||
"description": "",
|
||||
"url" : "https://bitbucket.org/shmyga/haxework.git",
|
||||
"license": "BSD",
|
||||
"tags": ["flash"],
|
||||
"description": "Framework.",
|
||||
"version": "0.0.0",
|
||||
"releasenote": "Updated from git.",
|
||||
"contributors": [],
|
||||
"releasenote": "First release.",
|
||||
"contributors": ["shmyga"],
|
||||
"dependencies": {}
|
||||
}
|
||||
31
haxework/log/BaseLogger.hx
Executable file
31
haxework/log/BaseLogger.hx
Executable file
@@ -0,0 +1,31 @@
|
||||
package haxework.log;
|
||||
|
||||
import haxework.log.ILogger.LogLevel;
|
||||
|
||||
class BaseLogger implements ILogger {
|
||||
|
||||
public function new() {}
|
||||
|
||||
public function log(level:LogLevel, tag:String, message:String, ?error:Dynamic, ?p:haxe.PosInfos):Void {
|
||||
var s:String = "[" + level + "] " + tag + " - " + message + (error == null ? "" : " {" + Std.string(error) + "}");
|
||||
write(s, p);
|
||||
}
|
||||
|
||||
private function write(text:String, ?p:haxe.PosInfos):Void {}
|
||||
|
||||
public function d(tag:String, message:String, ?error:Dynamic, ?p:haxe.PosInfos):Void {
|
||||
log(LogLevel.DEBUG, tag, message, error, p);
|
||||
}
|
||||
|
||||
public function i(tag:String, message:String, ?error:Dynamic, ?p:haxe.PosInfos):Void {
|
||||
log(LogLevel.INFO, tag, message, error, p);
|
||||
}
|
||||
|
||||
public function w(tag:String, message:String, ?error:Dynamic, ?p:haxe.PosInfos):Void {
|
||||
log(LogLevel.WARNING, tag, message, error, p);
|
||||
}
|
||||
|
||||
public function e(tag:String, message:String, ?error:Dynamic, ?p:haxe.PosInfos):Void {
|
||||
log(LogLevel.ERROR, tag, message, error, p);
|
||||
}
|
||||
}
|
||||
13
haxework/log/ILogger.hx
Executable file
13
haxework/log/ILogger.hx
Executable file
@@ -0,0 +1,13 @@
|
||||
package haxework.log;
|
||||
|
||||
enum LogLevel {
|
||||
DEBUG; INFO; WARNING; ERROR;
|
||||
}
|
||||
|
||||
interface ILogger {
|
||||
public function log(level:LogLevel, tag:String, message:String, ?error:Dynamic, ?p:haxe.PosInfos):Void;
|
||||
public function d(tag:String, message:String, ?error:Dynamic, ?p:haxe.PosInfos):Void;
|
||||
public function i(tag:String, message:String, ?error:Dynamic, ?p:haxe.PosInfos):Void;
|
||||
public function w(tag:String, message:String, ?error:Dynamic, ?p:haxe.PosInfos):Void;
|
||||
public function e(tag:String, message:String, ?error:Dynamic, ?p:haxe.PosInfos):Void;
|
||||
}
|
||||
14
haxework/log/TraceLogger.hx
Executable file
14
haxework/log/TraceLogger.hx
Executable file
@@ -0,0 +1,14 @@
|
||||
package haxework.log;
|
||||
|
||||
import haxework.log.ILogger.LogLevel;
|
||||
|
||||
class TraceLogger extends BaseLogger {
|
||||
|
||||
public function new() {
|
||||
super();
|
||||
}
|
||||
|
||||
override private function write(text:String, ?p:haxe.PosInfos):Void {
|
||||
haxe.Log.trace(text, p);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user