Mercurial Hosting > luan
annotate src/luan/modules/logging/Log4j.java @ 1335:e0cf0d108a77
major cleanup
author | Franklin Schmidt <fschmidt@gmail.com> |
---|---|
date | Thu, 14 Feb 2019 03:10:45 -0700 |
parents | 25746915a241 |
children | 7483108154bb |
rev | line source |
---|---|
376
0a75ed73bccc
partly revert rev 538c19ad1272 (logging)
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff
changeset
|
1 package luan.modules.logging; |
0a75ed73bccc
partly revert rev 538c19ad1272 (logging)
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff
changeset
|
2 |
0a75ed73bccc
partly revert rev 538c19ad1272 (logging)
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff
changeset
|
3 import org.apache.log4j.Logger; |
1321
307e76ccd0d6
generalize separate logging
Franklin Schmidt <fschmidt@gmail.com>
parents:
775
diff
changeset
|
4 import org.apache.log4j.LogManager; |
307e76ccd0d6
generalize separate logging
Franklin Schmidt <fschmidt@gmail.com>
parents:
775
diff
changeset
|
5 import org.apache.log4j.Hierarchy; |
307e76ccd0d6
generalize separate logging
Franklin Schmidt <fschmidt@gmail.com>
parents:
775
diff
changeset
|
6 import org.apache.log4j.Level; |
307e76ccd0d6
generalize separate logging
Franklin Schmidt <fschmidt@gmail.com>
parents:
775
diff
changeset
|
7 import org.apache.log4j.spi.LoggerRepository; |
307e76ccd0d6
generalize separate logging
Franklin Schmidt <fschmidt@gmail.com>
parents:
775
diff
changeset
|
8 import org.apache.log4j.spi.RootLogger; |
1332 | 9 import org.apache.log4j.spi.RepositorySelector; |
1333
25746915a241
merge Luan and LuanState
Franklin Schmidt <fschmidt@gmail.com>
parents:
1332
diff
changeset
|
10 import luan.Luan; |
376
0a75ed73bccc
partly revert rev 538c19ad1272 (logging)
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff
changeset
|
11 import luan.LuanException; |
0a75ed73bccc
partly revert rev 538c19ad1272 (logging)
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff
changeset
|
12 import luan.LuanTable; |
0a75ed73bccc
partly revert rev 538c19ad1272 (logging)
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff
changeset
|
13 |
0a75ed73bccc
partly revert rev 538c19ad1272 (logging)
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff
changeset
|
14 |
1332 | 15 public final class Log4j { |
1321
307e76ccd0d6
generalize separate logging
Franklin Schmidt <fschmidt@gmail.com>
parents:
775
diff
changeset
|
16 private static String KEY = "Logger.Repository"; |
307e76ccd0d6
generalize separate logging
Franklin Schmidt <fschmidt@gmail.com>
parents:
775
diff
changeset
|
17 |
1333
25746915a241
merge Luan and LuanState
Franklin Schmidt <fschmidt@gmail.com>
parents:
1332
diff
changeset
|
18 public static void newLoggerRepository(Luan luan) throws LuanException { |
1332 | 19 LoggerRepository lr = new Hierarchy(new RootLogger(Level.DEBUG)); |
1321
307e76ccd0d6
generalize separate logging
Franklin Schmidt <fschmidt@gmail.com>
parents:
775
diff
changeset
|
20 luan.registry().put(KEY,lr); |
1332 | 21 LuanTable module = (LuanTable)luan.require("luan:logging/Log4j.luan"); |
1335 | 22 module.fn("init_root").call(); |
1321
307e76ccd0d6
generalize separate logging
Franklin Schmidt <fschmidt@gmail.com>
parents:
775
diff
changeset
|
23 } |
307e76ccd0d6
generalize separate logging
Franklin Schmidt <fschmidt@gmail.com>
parents:
775
diff
changeset
|
24 |
1332 | 25 private static final LoggerRepository defaultLoggerRepository = LogManager.getLoggerRepository(); |
26 | |
1333
25746915a241
merge Luan and LuanState
Franklin Schmidt <fschmidt@gmail.com>
parents:
1332
diff
changeset
|
27 private static LoggerRepository getLoggerRepository(Luan luan) { |
1332 | 28 LoggerRepository lr = (LoggerRepository)luan.registry().get(KEY); |
29 return lr != null ? lr : defaultLoggerRepository; | |
30 } | |
31 | |
32 static { | |
33 LogManager.setRepositorySelector( new RepositorySelector() { | |
34 public LoggerRepository getLoggerRepository() { | |
1333
25746915a241
merge Luan and LuanState
Franklin Schmidt <fschmidt@gmail.com>
parents:
1332
diff
changeset
|
35 Luan luan = LuanLogger.luan(); |
1332 | 36 return luan==null ? defaultLoggerRepository : Log4j.getLoggerRepository(luan); |
37 } | |
38 }, new Object() ); | |
1321
307e76ccd0d6
generalize separate logging
Franklin Schmidt <fschmidt@gmail.com>
parents:
775
diff
changeset
|
39 } |
307e76ccd0d6
generalize separate logging
Franklin Schmidt <fschmidt@gmail.com>
parents:
775
diff
changeset
|
40 |
1333
25746915a241
merge Luan and LuanState
Franklin Schmidt <fschmidt@gmail.com>
parents:
1332
diff
changeset
|
41 public static Logger getRootLogger(Luan luan) { |
1321
307e76ccd0d6
generalize separate logging
Franklin Schmidt <fschmidt@gmail.com>
parents:
775
diff
changeset
|
42 return getLoggerRepository(luan).getRootLogger(); |
307e76ccd0d6
generalize separate logging
Franklin Schmidt <fschmidt@gmail.com>
parents:
775
diff
changeset
|
43 } |
307e76ccd0d6
generalize separate logging
Franklin Schmidt <fschmidt@gmail.com>
parents:
775
diff
changeset
|
44 |
1333
25746915a241
merge Luan and LuanState
Franklin Schmidt <fschmidt@gmail.com>
parents:
1332
diff
changeset
|
45 public static Logger getLogger(Luan luan,String name) { |
1321
307e76ccd0d6
generalize separate logging
Franklin Schmidt <fschmidt@gmail.com>
parents:
775
diff
changeset
|
46 return getLoggerRepository(luan).getLogger(name); |
307e76ccd0d6
generalize separate logging
Franklin Schmidt <fschmidt@gmail.com>
parents:
775
diff
changeset
|
47 } |
376
0a75ed73bccc
partly revert rev 538c19ad1272 (logging)
Franklin Schmidt <fschmidt@gmail.com>
parents:
diff
changeset
|
48 } |