2014年07月15日

さいきんは空前の Java ブームの兆しが高まっているので、練習を兼ねてlogminimalっていうライブラリ書いてみました。

import static jp.yappo.logminimal.Log.*;
public class Foo {
    public void var() {
        critf("crit log");
        warnf("warn log");
        infof("info log");
        debugf("debug log");
        critf("crit log %s", str);
        warnf("warn log %s", str);
        infof("info log %s", str);
        debugf("debug log %s", str);
    }
}
って感じで使えます!かんたん!

デフォルトの出力内容とかは以下のテストが通る感じの出力です。

		assertEquals(LogTest.logResult, "[2014/06/10 18:19:20] [CRITICAL] log 0001 at jp.yappo.logminimal.LogTest.test(LogTest.java:35)");
warnf("%s %04d", "log", 1);
assertEquals(LogTest.logResult, "[2014/06/10 18:19:20] [WARN] log 0001 at jp.yappo.logminimal.LogTest.test(LogTest.java:37)");
infof("%s %04d", "log", 1);
assertEquals(LogTest.logResult, "[2014/06/10 18:19:20] [INFO] log 0001 at jp.yappo.logminimal.LogTest.test(LogTest.java:39)");
debugf("%s %04d", "log", 1);
assertEquals(LogTest.logResult, "[2014/06/10 18:19:20] [DEBUG] log 0001 at jp.yappo.logminimal.LogTest.test(LogTest.java:41)");

critf("foo\nbar\rbaz\tblha");
assertEquals(LogTest.logResult, "[2014/06/10 18:19:20] [CRITICAL] foo\\nbar\\rbaz\\tblha at jp.yappo.logminimal.LogTest.test(LogTest.java:44)");

ログの出力先は lambda で差し替えられます

Log.setLogger((time, type, message, rawMessage, trace) -> {
...
});
みたいにすればいいですね。

1個の java file で作ってるのでコピペでつかえてべんり!

Posted by Yappo at 2014年07月15日 17:13 | TrackBack | casual java
Comments
Post a comment









Remember personal info?






コメントを投稿する前に↓の場所にnospamと入力してください。