Class EventDetailLayout

  • All Implemented Interfaces:
    org.apache.log4j.spi.OptionHandler

    public class EventDetailLayout
    extends org.apache.log4j.Layout
    This layout is used for formatting HTML text for use inside the Chainsaw Event Detail Panel, and the tooltip used when mouse-over on a particular log event row.

    It relies an an internal PatternLayout to accomplish this, but ensures HTML characters from any LoggingEvent are escaped first.

    • Field Summary

      Fields 
      Modifier and Type Field Description
      private org.apache.log4j.EnhancedPatternLayout patternLayout  
      • Fields inherited from class org.apache.log4j.Layout

        LINE_SEP, LINE_SEP_LEN
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void activateOptions()  
      private static org.apache.log4j.spi.LoggingEvent copyForHTML​(org.apache.log4j.spi.LoggingEvent event)
      Takes a source event and copies it into a new LoggingEvent object and ensuring all the internal elements of the event are HTML safe
      private static java.lang.String escape​(java.lang.String string)
      Escape <, > & and " as their entities.
      java.lang.String format​(org.apache.log4j.spi.LoggingEvent event)  
      private static org.apache.log4j.spi.LocationInfo formatLocationInfo​(org.apache.log4j.spi.LoggingEvent event)  
      private static java.util.Hashtable<java.lang.String,​java.lang.String> formatProperties​(org.apache.log4j.spi.LoggingEvent event)  
      java.lang.String getConversionPattern()  
      java.lang.String getFooter()  
      java.lang.String getHeader()  
      boolean ignoresThrowable()  
      void setConversionPattern​(java.lang.String conversionPattern)  
      • Methods inherited from class org.apache.log4j.Layout

        getContentType
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • patternLayout

        private final org.apache.log4j.EnhancedPatternLayout patternLayout
    • Constructor Detail

      • EventDetailLayout

        public EventDetailLayout()
    • Method Detail

      • setConversionPattern

        public void setConversionPattern​(java.lang.String conversionPattern)
      • getConversionPattern

        public java.lang.String getConversionPattern()
      • getFooter

        public java.lang.String getFooter()
        Overrides:
        getFooter in class org.apache.log4j.Layout
      • getHeader

        public java.lang.String getHeader()
        Overrides:
        getHeader in class org.apache.log4j.Layout
      • escape

        private static java.lang.String escape​(java.lang.String string)
        Escape <, > & and " as their entities. It is very dumb about & handling.
        Parameters:
        aStr - the String to escape.
        Returns:
        the escaped String
      • copyForHTML

        private static org.apache.log4j.spi.LoggingEvent copyForHTML​(org.apache.log4j.spi.LoggingEvent event)
        Takes a source event and copies it into a new LoggingEvent object and ensuring all the internal elements of the event are HTML safe
        Parameters:
        event -
        Returns:
        new LoggingEvent
      • formatLocationInfo

        private static org.apache.log4j.spi.LocationInfo formatLocationInfo​(org.apache.log4j.spi.LoggingEvent event)
        Parameters:
        event -
        Returns:
      • formatProperties

        private static java.util.Hashtable<java.lang.String,​java.lang.String> formatProperties​(org.apache.log4j.spi.LoggingEvent event)
        Parameters:
        event -
        Returns:
      • ignoresThrowable

        public boolean ignoresThrowable()
        Specified by:
        ignoresThrowable in class org.apache.log4j.Layout
      • activateOptions

        public void activateOptions()
      • format

        public java.lang.String format​(org.apache.log4j.spi.LoggingEvent event)
        Specified by:
        format in class org.apache.log4j.Layout