📄 80f491ac608b001c11868cf7a0fb9112
字号:
package main.cn.edu.nju.software.sd.cll;
public class LoggerManager {
private static final LoggerManager logManager = new LoggerManager();
private LoggerTree tree;
private LoggerFactory factory;
private LoggerManager()
{
tree = new LoggerTree();
factory = new DefaultLoggerFactory();
}
public static LoggerManager getLogManager()
{
return logManager;
}
/**如果存在名字为name的logger,则返回logger,否则调用工厂方法创建一个名字为name的logger*/
public Logger getLogger(String name)
{
Logger logger = tree.find(name).logger;
if(logger==null)
{
logger = factory.createNewLogger(name);
}
return logger;
}
/**把新创建的logger加到logger tree中*/
public void addLogger(Logger logger)
{
tree.insert(logger);
}
/**查找是否存在此logger*/
public boolean findLogger(Logger logger)
{
boolean exist = tree.isExist(logger.getName());
return exist;
}
/**设置logger的属性*/
public void setConfiguration()
{
}
/**获得logger的父logger*/
public LoggerNode getParent(Logger logger)
{
LoggerNode parent = tree.getParent(logger);
return parent;
}
/**获得父logger的level*/
public Level getParentLevel(Logger logger)
{
LoggerNode parent = tree.getParent(logger);
while(parent.logger.getLevel()==null){
parent = parent.parent;
}
return parent.logger.getLevel();
}
public Format getParentFormat(Logger logger)
{
LoggerNode parent = tree.getParent(logger);
while(parent.logger.getFormat()==null)
parent = parent.parent;
return parent.logger.getFormat();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -