⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 logfactory.java

📁 一个完整的代码管理系统的源代码
💻 JAVA
字号:
/*
 * Copyright (c) 2007-2010 Tanming1003 Inc.
 * All rights reserved.
 * 
 * tanming1003<tanming1003@163.com>
 * 
 * 
 * 
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions 
 * are met:
 * 
 * Redistributions of source code must retain the above copyright 
 * notice, this list of conditions and the following disclaimer. 
 * Redistributions in binary form must reproduce the above copyright 
 * notice, this list of conditions and the following disclaimer in the 
 * documentation and/or other materials provided with the distribution. 
 * Neither the name of tanming1003 nor the names of its contributors 
 * may be used to endorse or promote products derived from this 
 * software without specific prior written permission. 
 * 
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 
 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 
 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 
 * REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 
 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 
 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 
 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, 
 * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING 
 * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
 * POSSIBILITY OF SUCH DAMAGE.
 */
package hunnu.edu.cn.product.log;

import java.lang.reflect.Constructor;
import java.util.List;

/**
 * @author tanming1003
 * @date 2008-10-10
 * @time 下午01:49:07
 * @project_name Product
 * @package_name hunnu.edu.cn.product.log
 * @file_name    Pool.java
 * @version      1.0
 */

public class LogFactory
{
    private static LogFactory factory;
    
    private LogFactory()
    {
    	super();
    }
    
    public static LogFactory newInstance()
    {
    	if(factory==null)
    		factory=new LogFactory();
    	return factory;
    }
    
    @SuppressWarnings("unused")
	private Log newFileLog(Class<?> c) 
    {
    	try
		{
			return new FileLog(c);
		}
		catch (Exception e)
		{
			return null;
		}
    }
    
    @SuppressWarnings("unused")
	private Log newConsoleLog(Class<?> c)
    {
    	try
		{
			return new ConsoleLog(c);
		}
		catch (Exception e)
		{
			return null;
		}
    }
    
    public LogLog getLog(Class<?> c)
    {
    	LogLog log=new LogLog();
        Pattern pattern=null;
		pattern = Pattern.newInstance();
        List<String> logs=pattern.createLog();
        for(int i=0;i<logs.size();i++)
        {
        	try
        	{
        		String str=logs.get(i);
		        Class<?> logClass;
			    logClass = Class.forName(str);
			    Constructor<?> constructor;
	            constructor = logClass.getDeclaredConstructor(Class.class);
		        constructor.setAccessible(true);
			    Log l=(Log)constructor.newInstance(c);
			    log.addLog(l);
        	}
        	catch(Exception e)
        	{
        		e.printStackTrace();
        	}
        }
    	return log;
    }
}

⌨️ 快捷键说明

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