/**
* WS-Attacker - A Modular Web Services Penetration Testing Framework Copyright
* (C) 2010 Christian Mainka
*
* This program is free software; you can redistribute it and/or modify it under
* the terms of the GNU General Public License as published by the Free Software
* Foundation; either version 2 of the License, or (at your option) any later
* version.
*
* This program is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
* FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
* details.
*
* You should have received a copy of the GNU General Public License along with
* this program; if not, write to the Free Software Foundation, Inc., 51
* Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
package wsattacker.gui.component.log;
import java.awt.Color;
import javax.swing.BorderFactory;
import javax.swing.JLabel;
import org.apache.log4j.Layout;
import org.apache.log4j.Level;
import org.apache.log4j.PatternLayout;
import org.apache.log4j.spi.LoggingEvent;
import wsattacker.gui.util.Colors;
public class StatuslineGUI
extends JLabel
{
private static final long serialVersionUID = 1L;
Layout layout;
public StatuslineGUI()
{
super();
this.layout = new PatternLayout( "[%p] %m%n" );
this.setBackground( Colors.INVALID );
this.setBorder( BorderFactory.createCompoundBorder( BorderFactory.createLineBorder( Color.LIGHT_GRAY ),
BorderFactory.createEmptyBorder( 2, 10, 2, 10 ) ) );
}
public void setLog( LoggingEvent loggingEvent )
{
this.setText( layout.format( loggingEvent ) );
if ( loggingEvent.getLevel().isGreaterOrEqual( Level.WARN ) )
{
this.setOpaque( true );
}
else
{
this.setOpaque( false );
}
}
}