-バッファなログシステム
とりあえずAPI切ってみました。ちょっと違和感あって足りないぐらいからスタート。
public interface FrameworkLogger extends Serializable { FrameworkLogger ln(); FrameworkLogger append(Object obj); FrameworkLogger append(String pattern, Object... args); void start(); void commit(); void rollback(); }
public abstract class LoggerSupply implements Serializable { public static FrameworkLogger getLogger( @NotNull Class<?> key, @NotNull LogLevel logLevel) { ... } }
public enum LogLevel { FATAL, ERROR, WARN, INFO, DEBUG }
実は一番やりたかったことは、ログ出力の引数型をCharSequenceにすることと、返値で自るか分を返すようにしたかったことかも。ログレベルをファクトリから取るときに決め打ちしてみました。どうかな?まず作ってみる。
追記
ぐちゃぐちゃいじってみたら、どうもうまくない。Servlet#log()をフレームワークでは使いたかっただけなのですけど。。。ユーザーアプリはログ系を別に作ってPOJOを守ればいいかなと思ったのですが。。。ダメだな。再考。スレッド毎にトランザクションを分離したい気もする。よく考えてみよう。
(>_<)。。。
Log4JのAppenderでやる方法を考えたほうが早いかな。。。