Code Search for Developers
 
 
  

RobotLoggerPathConfigurator.java from Kneobase at Krugle


Show RobotLoggerPathConfigurator.java syntax highlighted

package com.kneobase.web.util;

import java.util.Enumeration;

import javax.servlet.ServletContext;

import org.apache.log4j.Logger;
import org.springframework.web.context.ServletContextAware;

import com.kneobase.logging.KneobaseLogAppender;
import com.kneobase.logging.KneobaseLogger;

/**
 * Helper class to assist RobotLogger in path configuration.
 * 
 * @author patricio.keilty@colaborativa.net
 *
 */
public class RobotLoggerPathConfigurator implements ServletContextAware {

	private ServletContext _servletContext;
	private static Logger _logger = Logger.getLogger( RobotLoggerPathConfigurator.class ); 
	
	/**
	 * @see org.springframework.web.context.ServletContextAware#setServletContext(javax.servlet.ServletContext)
	 */
	public void setServletContext( ServletContext arg0 ){
		_servletContext = arg0;
		configureAppenderPaths();
	}

	/**
	 * Configure RobotLogger appenders paths to be below servlet context path.
	 * Note: drivers(robots)logs must be properly configured and should not depend 
	 * on external log4j adecuate configuration.  
	 */
	private void configureAppenderPaths() {
		Logger logger = Logger.getLogger( KneobaseLogger.SOURCE_LOGGER_PROTO );
		Enumeration enumAppenders = logger.getAllAppenders();
		if(enumAppenders == null){
			System.out.print("LOG FAIL: Not appenders configured.");
			return;
		}
			
		while( enumAppenders.hasMoreElements() ){
			Object next = enumAppenders.nextElement();
			if( next instanceof KneobaseLogAppender ){
				KneobaseLogAppender app = (KneobaseLogAppender)next;
				String finalPath = _servletContext.getRealPath( app.getFolder() );
				if( null != finalPath ){
					app.setFolder( finalPath );
					if( _logger.isInfoEnabled() ){
						_logger.info( "RobotLogger appender has been configured with path: " + finalPath );
					}
				} else
					_logger.error( "RobotLogger appender real path could not been determined: " + app.getFolder() );
			}
		}
	}

}




See more files for this project here

Kneobase

Kneobase is an enterprise search engine, based upon the Lucene search engine and the Spring framework. It allows to perform full-text search across many different content sources. It is highly adaptable out-of-the-box and has a pluggable architecture.

Project homepage: http://sourceforge.net/projects/kneobase
Programming language(s): Java,XML
License: other

  RelativePathConfigurator.java
  RobotLoggerPathConfigurator.java
  ZipContentServlet.java