a08c3fead68a001c1e44fbf717997e06

来自「一个类似于log4j的小软件」· 代码 · 共 68 行

TXT
68
字号
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 Logger getParent(Logger logger)
	{
		Logger parent = tree.getParent(logger).logger;
		return parent;
	}
/**当logger的level属性改变时,搜索子logger的level属性,使其跟着改变*/	
	public void updateChildrenLevel(Logger logger,Level level)
	{
		
	}
/**更新子logger的format*/	
	public void updateChildrenFormat(Logger logger,Format format)
	{
		
	}
/**更新子logger的output destination*/
	public void updateChildrenHandler()
	{
		
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?