| Class Summary | |
|---|---|
| AbstractBeanCheck | Abstract class for checks that verify Bean implementation. |
| AbstractCellEditor | Abstract implementation of a CellEditor. |
| AbstractClassCouplingCheck | Base class for coupling calculation. |
| AbstractClassNameCheck |
Ensures that the names of abstract classes conforming to some regular expression. |
| AbstractComplexityCheck | Base class for checks the calculate complexity based around methods. |
| AbstractFileSetCheck | Provides common functionality for many FileSetChecks. |
| AbstractFileSetCheck | Provides common functionality for many FileSetChecks. |
| AbstractFormatCheck |
Abstract class for checks that verify strings using a
|
| AbstractHeaderCheck | Abstract super class for header checks. |
| AbstractIllegalCheck | Support for checks that look for usage of illegal types. |
| AbstractInterfaceCheck | Abstract class for checking interface requirements. |
| AbstractJ2eeCheck | Abstract class for J2ee component checking. |
| AbstractLoader | Contains the common implementation of a loader, for loading a configuration from an XML file. |
| AbstractLoader | Contains the common implementation of a loader, for loading a configuration from an XML file. |
| AbstractNameCheck | Abstract class for checking that names conform to a specified format. |
| AbstractNestedDepthCheck | Abstract class which provides helpers functionality for nestedchecks. |
| AbstractOption | Abstract class that represents options. |
| AbstractOptionCheck | Abstract class for checks with options. |
| AbstractSuperCheck |
Abstract class for checking that an overriding method with no parameters invokes the super method. |
| AbstractTreeTableModel | |
| AbstractTypeAwareCheck | Abstract class that endeavours to maintain type information for the Java file being checked. |
| AbstractTypeAwareCheck.ClassInfo |
Contains class's Token. |
| AbstractTypeAwareCheck.Token | Represents text element with location in the text. |
| AbstractViolationReporter | Serves as an abstract base class for all modules that report inspection findings. |
| AbstractViolationReporter | Serves as an abstract base class for all modules that report inspection findings. |
| AnonInnerLengthCheck |
Checks for long anonymous inner classes. |
| ArrayInitHandler | Handler for array initialization blocks. |
| ArrayTrailingCommaCheck |
Checks if array initialization contains optional trailing comma. |
| ArrayTypeStyleCheck | Checks the style of array type definitions. |
| AssignHandler | Handler for assignements. |
| AuditEvent | Raw event for audit. |
| AuditEvent | Raw event for audit. |
| AuditListener | Listener in charge of receiving events from the Checker. |
| AuditListener | Listener in charge of receiving events from the Checker. |
| AutomaticBean | A Java Bean that implements the component lifecycle interfaces by calling the bean's setters for all configration attributes. |
| AutomaticBean | A Java Bean that implements the component lifecycle interfaces by calling the bean's setters for all configration attributes. |
| AvoidInlineConditionalsCheck | Detects inline conditionals. |
| AvoidNestedBlocksCheck | Finds nested blocks. |
| AvoidStarImportCheck |
Check that finds import statements that use the * notation. |
| BeanManagedMethodChecker | Checks methods of entity beans with bean-managed persistence. |
| BeanMethodChecker | Root class for bean method checks. |
| BlockOption | Represents the policy for checking block statements. |
| BlockParentHandler | Handler for parents of blocks ('if', 'else', 'while', etc). |
| BooleanExpressionComplexityCheck | Restricts nested boolean operators (&&, || and ^) to a specified depth (default = 3). |
| CaseHandler | Handler for case statements. |
| CatchHandler | Handler for catch blocks. |
| Check | The base class for checks. |
| Check | The base class for checks. |
| Checker | This class provides the functionality to check a set of files. |
| Checker | This class provides the functionality to check a set of files. |
| CheckstyleException | Represents an error condition within Checkstyle. |
| CheckstyleException | Represents an error condition within Checkstyle. |
| CheckStyleTask | An implementation of a ANT task for calling checkstyle. |
| CheckStyleTask | An implementation of a ANT task for calling checkstyle. |
| CheckStyleTask.Formatter | Details about a formatter to be used. |
| CheckStyleTask.Formatter | Details about a formatter to be used. |
| CheckStyleTask.FormatterType | Poor mans enumeration for the formatter types. |
| CheckStyleTask.FormatterType | Poor mans enumeration for the formatter types. |
| CheckStyleTask.Listener | Represents a custom listener. |
| CheckStyleTask.Listener | Represents a custom listener. |
| CheckStyleTask.Property | Represents a property that consists of a key and value. |
| CheckStyleTask.Property | Represents a property that consists of a key and value. |
| CheckUtils | Contains utility methods for the checks. |
| ClassDataAbstractionCouplingCheck | This metric measures the number of instantiations of other classes within the given class. |
| ClassDefHandler | Handler for class definitions. |
| ClassFanOutComplexityCheck | The number of other classes a given class relies on. |
| ClassResolver | Utility class to resolve a class name to an actual class. |
| Comment | Representation of the comment block. |
| CommentListener | This interface is used to be notified by parser about comments in the parsed code. |
| CommentListener | This interface is used to be notified by parser about comments in the parsed code. |
| Configurable | A component that can be configured. |
| Configurable | A component that can be configured. |
| Configuration | A Configuration is used to configure a Configurable component. |
| Configuration | A Configuration is used to configure a Configurable component. |
| ConfigurationLoader | Loads a configuration from a standard configuration XML file. |
| ConfigurationLoader | Loads a configuration from a standard configuration XML file. |
| ConfigurationLoader.InternalLoader | Implements the SAX document handler interfaces, so they do not appear in the public API of the ConfigurationLoader. |
| ConstantNameCheck |
Checks that constant names conform to a format specified by the format property. |
| ContainerManagedMethodChecker | Checks methods of entity beans with container-managed persistence. |
| Context | A context to be used in subcomponents. |
| Context | A context to be used in subcomponents. |
| Contextualizable | A Component that needs context information from it's container to work. |
| Contextualizable | A Component that needs context information from it's container to work. |
| CovariantEqualsCheck |
Checks that if a class defines a covariant method equals, then it defines method equals(java.lang.Object). |
| CrossLanguageRegexpHeaderCheck | A FileSetCheck similar to RegexpHeaderCheck, but works for all text files, not just java code. |
| CSVFilter |
This filter accepts an integer that matches a CSV value, where each value is an integer or a range of integers. |
| CyclomaticComplexityCheck | Checks cyclomatic complexity against a specified limit. |
| DeclarationCollector | Abstract class for chekcs which need to collect information about declared members/parameters/variables. |
| DeclarationOrderCheck |
Checks that the parts of a class or interface declaration appear in the order suggested by the Code Conventions for the Java Programming Language. |
| DefaultComesLastCheck |
Check that the |
| DefaultConfiguration | Default implementation of the Configuration interface. |
| DefaultConfiguration | Default implementation of the Configuration interface. |
| DefaultContext | A default implementation of the Context interface. |
| DefaultContext | A default implementation of the Context interface. |
| DefaultLogger | Simple plain logger for text output. |
| DefaultLogger | Simple plain logger for text output. |
| Defn | Contains constant definitions common to the package. |
| Defn | Contains constant definitions common to the package. |
| DescendantTokenCheck |
Checks for restricted tokens beneath other tokens. |
| DesignForExtensionCheck | Checks that classes are designed for inheritance. |
| DetailAST | An extension of the CommonAST that records the line and column number. |
| DetailAST | An extension of the CommonAST that records the line and column number. |
| DoubleCheckedLockingCheck | Detect the double-checked locking idiom, a technique that tries to avoid synchronization overhead but is incorrect because of subtle artifacts of the java memory model. |
| DoWhileHandler | Handler for do...while blocks. |
| ElseHandler | Handler for else blocks. |
| EmptyBlockCheck | Checks for empty blocks. |
| EmptyForInitializerPadCheck |
Checks the padding of an empty for initializer; that is whether a space is required at an empty for initializer, or such spaces are forbidden. |
| EmptyForIteratorPadCheck |
Checks the padding of an empty for iterator; that is whether a space is required at an empty for iterator, or such spaces are forbidden. |
| EmptyStatementCheck |
Detects empty statements (standalone ';'). |
| EntityBeanCheck | Checks that an EntityBean implementation satisfies EntityBean requirements. |
| EntityBeanMethodChecker | Root class for entity bean method checks. |
| EqualsHashCodeCheck |
Checks that classes that override equals() also override hashCode(). |
| ExecutableStatementCountCheck | Restricts the number of executable statements to a specified limit (default = 30). |
| ExplicitInitializationCheck |
Checks if any class or object member explicitly initialized
to default for its type value ( |
| ExpressionHandler | Abstract base class for all handlers. |
| FallThroughCheck | Checks for fall through in switch statements Finds locations where a case contains Java code - but lacks a break, return, throw or continue statement. |
| FileContents | Represents the contents of a file. |
| FileContents | Represents the contents of a file. |
| FileContentsHolder | Holds the current file contents for global access when configured as a TreeWalker sub-module. |
| FileDrop.Listener | Implement this inner interface to listen for when files are dropped. |
| FileLengthCheck |
Checks for long source files. |
| FileSetCheck | Interface for Checking a set of files for some criteria. |
| FileSetCheck | Interface for Checking a set of files for some criteria. |
| Filter | An interface for filtering AuditEvents. |
| Filter | An interface for filtering AuditEvents. |
| FilterSet | A filter set applies filters to AuditEvents. |
| FilterSet | A filter set applies filters to AuditEvents. |
| FinalClassCheck |
Checks that class which has only private ctors is declared as final. |
| FinallyHandler | Handler for finally blocks. |
| FinalLocalVariableCheck |
Ensures that local variables that never get their values changed, must be declared final. |
| FinalParametersCheck | Check that method/constructor/catch/foreach parameters are final. |
| FinalStaticCheck | Checks that all static fields are declared final. |
| ForHandler | Handler for for loops. |
| FullIdent | Represents a full identifier, including dots, with associated position information. |
| FullIdent | Represents a full identifier, including dots, with associated position information. |
| GeneratedJavaLexer | |
| GeneratedJavaRecognizer | Java 1.5 Recognizer This grammar is in the PUBLIC DOMAIN |
| GeneratedJavaTokenTypes | |
| GenericIllegalRegexpCheck |
A generic check for code problems, the user can search for any pattern. |
| HandlerFactory | Factory for handlers. |
| HeaderCheck | Checks the header of the source against a fixed header file. |
| HiddenFieldCheck |
Checks that a local variable or a parameter does not shadow a field that is defined in the same class. |
| HideUtilityClassConstructorCheck | Make sure that utility classes (classes that contain only static methods) do not have a public constructor. |
| HomeInterfaceMethodChecker | Checks the methods of a home interface. |
| IfHandler | Handler for if statements. |
| IllegalCatchCheck | Catching java.lang.Exception, java.lang.Error or java.lang.RuntimeException is almost never acceptable. |
| IllegalImportCheck |
Checks for imports from a set of illegal packages. |
| IllegalInstantiationCheck |
Checks for illegal instantiations where a factory method is preferred. |
| IllegalThrowsCheck | Throwing java.lang.Error or java.lang.RuntimeException is almost never acceptable. |
| IllegalTokenCheck |
Checks for illegal tokens. |
| IllegalTokenTextCheck |
Checks for illegal token text. |
| IllegalTypeCheck |
Checks that particular class are never used as types in variable declarations, return values or parameters. |
| ImportControlCheck | Check that controls what packages can be imported in each package. |
| ImportHandler | Handler for import statements. |
| ImportOrderCheck | Class to check the ordering/grouping of imports. |
| IndentationCheck | Checks correct indentation of Java Code. |
| IndentLevel | Encapsulates representation of notion of expected indentation levels. |
| InnerAssignmentCheck |
Checks for assignments in subexpressions, such as in
|
| InterfaceIsTypeCheck | Implements Bloch, Effective Java, Item 17 - Use Interfaces only to define types. |
| IntFilter | An interface for filtering Integer. |
| IntMatchFilter | This filter accepts a matching Integer. |
| IntRangeFilter | This filter accepts an Integer in a range. |
| JavadocMethodCheck | Checks the Javadoc of a method or constructor. |
| JavadocStyleCheck | Custom Checkstyle Check to validate Javadoc. |
| JavadocTypeCheck | Checks the Javadoc of a type. |
| JavadocVariableCheck | Checks that a variable has Javadoc comment. |
| JavaNCSSCheck | This check calculates the Non Commenting Source Statements (NCSS) metric for java source files and methods. |
| JTreeTable | This example shows how to create a simple JTreeTable component, by using a JTree as a renderer (and editor) for the cells in a particular column in the JTable. |
| JTreeTable.TreeTableCellEditor | TreeTableCellEditor implementation. |
| JUnitTestCaseCheck | Ensures that the setUp(), tearDown()methods are named correctly, have no arguments, return void and are either public or protected. |
| LabelHandler | Handler for labels. |
| LeftCurlyCheck |
Checks the placement of left curly braces on types, methods and
other blocks:
|
| LeftCurlyOption |
Represents the options for placing the left curly brace '{'.
|
| LineLengthCheck | Checks for long lines. |
| LineSeparatorOption | Represents the options for line separator settings. |
| LineSet | Represents a set of lines. |
| LocalFinalVariableNameCheck |
Checks that local final variable names conform to a format specified by the format property. |
| LocalHomeInterfaceCheck |
Checks the local home interface requirements:
|
| LocalHomeInterfaceMethodChecker |
Checks the local home interface requirements:
|
| LocalizedMessage | Represents a message that can be localised. |
| LocalizedMessage | Represents a message that can be localised. |
| LocalizedMessages | Collection of messages. |
| LocalizedMessages | Collection of messages. |
| LocalInterfaceCheck | Checks the methods of a local interface. |
| LocalInterfaceMethodChecker | Checks methods of a local interface. |
| LocalVariableNameCheck |
Checks that local, non-final variable names conform to a format specified by the format property. |
| MagicNumberCheck |
Checks for magic numbers. |
| Main | Wrapper command line program for the Checker. |
| Main | Wrapper command line program for the Checker. |
| Main | Entry point for starting the checkstyle GUI. |
| MemberDefHandler | Handler for member definitions. |
| MemberNameCheck |
Checks that instance variable names conform to a format specified by the format property. |
| MessageBeanCheck | Checks that a MessageBean implementation satisfies MessageBean requirements. |
| MessageBeanMethodChecker | Checks the methods of a message bean. |
| MessageDispatcher | Used by FileSetChecks to distribute AuditEvents to AuditListeners. |
| MessageDispatcher | Used by FileSetChecks to distribute AuditEvents to AuditListeners. |
| MethodCallHandler | Handler for method calls. |
| MethodChecker | Root class for method checks for a client Check. |
| MethodDefHandler | Handler for method definitions. |
| MethodLengthCheck |
Checks for long methods. |
| MethodNameCheck |
Checks that method names conform to a format specified by the format property. |
| MethodParamPadCheck |
Checks the padding between the identifier of a method definition, constructor definition, method call, or constructor invocation; and the left parenthesis of the parameter list. |
| MissingCtorCheck |
Checks that classes (except abstract one) define a ctor and don't rely on the default one. |
| MissingSwitchDefaultCheck |
Checks that switch statement has "default" clause. |
| ModifiedControlVariableCheck | Check for ensuring that for loop control variables are not modified inside the for block. |
| ModifierOrderCheck |
Checks that the order of modifiers conforms to the suggestions in the Java Language specification, sections 8.1.1, 8.3.1 and 8.4.3. |
| ModuleFactory | A module factory creates Objects from a given name. |
| ModuleFactory | A module factory creates Objects from a given name. |
| MultipleStringLiteralsCheck | Checks for multiple occurrences of the same string literal within a single file. |
| MultipleVariableDeclarationsCheck |
Checks that each variable declaration is in its own statement and on its own line. |
| MutableExceptionCheck |
Ensures that exceptions (defined as any class name conforming to some regular expression) are immutable. |
| NeedBracesCheck |
Checks for braces around code blocks. |
| NestedIfDepthCheck | Restricts nested if-else blocks to a specified depth (default = 1). |
| NestedTryDepthCheck | Restricts nested try-catch-finally blocks to a specified depth (default = 1). |
| NewHandler | Handler for operator new. |
| NewlineAtEndOfFileCheck |
Checks that there is a newline at the end of each file. |
| NoWhitespaceAfterCheck |
Checks that there is no whitespace after a token. |
| NoWhitespaceBeforeCheck |
Checks that there is no whitespace before a token. |
| NPathComplexityCheck | Checks the npath complexity against a specified limt (default = 200). |
| ObjectBlockHandler | Handler for inner classes. |
| OperatorWrapCheck |
Checks line wrapping for operators. |
| OperatorWrapOption | Represents the options for wrapping on an operator. |
| PackageDeclarationCheck | Ensures there is a package declaration. |
| PackageDefHandler | Handler for package definitions. |
| PackageHtmlCheck | Checks that all packages have a package documentation. |
| PackageNameCheck |
Checks that package names conform to a format specified by the format property. |
| PackageNamesLoader | Loads a list of package names from a package name XML file. |
| PackageNamesLoader | Loads a list of package names from a package name XML file. |
| PackageObjectFactory | A factory for creating objects from package names and names. |
| PadOption | Represents the options for whitespace around parentheses. |
| ParameterAssignmentCheck |
Disallow assignment of parameters. |
| ParameterNameCheck |
Checks that parameter names conform to a format specified by the format property. |
| ParameterNumberCheck |
Checks the number of parameters that a method or constructor has. |
| ParenPadCheck |
Checks the padding of parentheses; that is whether a space is required after a left parenthesis and before a right parenthesis, or such spaces are forbidden, with the exception that it does not check for padding of the right parenthesis at an empty for iterator. |
| ParseTreeInfoPanel | Displays information about a parse tree. |
| ParseTreeModel | The model that backs the parse tree in the GUI. |
| PersistenceOption | Represents the policy for checking entity bean restrictions according to whether persistence is bean-managed, container-managed, or mixed. |
| PrimordialHandler | A default no-op handler. |
| PropertiesExpander |
Resolves external properties from an
underlying Properties object.
|
| PropertiesExpander |
Resolves external properties from an
underlying Properties object.
|
| PropertyCacheFile | This class maintains a persistent store of the files that have checked ok and their associated timestamp. |
| PropertyResolver | Resolves properties in module configurations. |
| PropertyResolver | Resolves properties in module configurations. |
| RedundantImportCheck |
Checks for imports that are redundant. |
| RedundantModifierCheck | Checks for redundant modifiers in interface and annotation definitions. |
| RedundantThrowsCheck | Checks for redundant exceptions declared in throws clause such as duplicates, unchecked exceptions or subclasses of another declared exception. |
| RegexpCheck |
A check that makes sure that a specified pattern exists (or not) in the file. |
| RegexpHeaderCheck |
Checks the header of the source against a header file that contains a
java.util.regex.Pattern regular expression
for each line of the source header.
|
| RemoteHomeInterfaceCheck | Checks the methods of a remote home interface. |
| RemoteHomeInterfaceMethodChecker | Checks methods of a remote home interface check. |
| RemoteInterfaceCheck | Checks the methods of a remote interface. |
| RemoteInterfaceMethodChecker | Checks methods of a remote interface. |
| RequiredRegexpCheck |
A check that makes sure that a specified pattern exists in the code. |
| RequireThisCheck |
Checks that code doesn't rely on the "this" default. |
| ReturnCountCheck |
Restricts return statements to a specified count (default = 2). |
| RightCurlyCheck |
Checks the placement of right curly braces. |
| RightCurlyOption |
Represents the options for placing the right curly brace '}'.
|
| Scope | Represents a Java visibility scope. |
| Scope | Represents a Java visibility scope. |
| ScopeUtils | Contains utility methods for working on scope. |
| ScopeUtils | Contains utility methods for working on scope. |
| SessionBeanCheck | Checks that a SessionBean implementation satisfies SessionBean requirements. |
| SessionBeanMethodChecker | Checks the methods of a session bean. |
| SeverityLevel | Severity level for a check violation. |
| SeverityLevel | Severity level for a check violation. |
| SeverityLevelCounter |
An audit listener that counts how many AuditEvents
of a given severity have been generated.
|
| SeverityLevelCounter |
An audit listener that counts how many AuditEvents
of a given severity have been generated.
|
| SeverityMatchFilter | This is a very simple filter based on severity matching. |
| SeverityMatchFilter | This is a very simple filter based on severity matching. |
| SimplifyBooleanExpressionCheck |
Checks for overly complicated boolean expressions. |
| SimplifyBooleanReturnCheck |
Checks for overly complicated boolean return statements. |
| SlistHandler | Handler for a list of statements. |
| StaticInitHandler | Handler for static initialization blocks. |
| StaticVariableNameCheck |
Checks that static, non-final variable names conform to a format specified by the format property. |
| StrArrayConverter |
Standard Converter implementation that converts an incoming String into an array of String. |
| StrictDuplicateCodeCheck | Performs a line-by-line comparison of all code lines and reports duplicate code if a sequence of lines differs only in indentation. |
| StringArrayReader | A Reader that reads from an underlying String array, assuming each array element corresponds to one line of text. |
| StringLiteralEqualityCheck |
Checks that string literals are not used with
|
| SuperCloneCheck |
Checks that an overriding clone() method invokes super.clone(). |
| SuperFinalizeCheck |
Checks that an overriding finalize() method invokes super.finalize(). |
| SuppressElement | This filter processes AuditEvent objects based on the criteria of file, check, module id, line, and column. |
| SuppressElement | This filter processes AuditEvent objects based on the criteria of file, check, module id, line, and column. |
| SuppressionCommentFilter |
A filter that uses comments to suppress audit events. |
| SuppressionCommentFilter |
A filter that uses comments to suppress audit events. |
| SuppressionCommentFilter.Tag | A Tag holds a suppression comment and its location, and determines whether the supression turns checkstyle reporting on or off. |
| SuppressionCommentFilter.Tag | A Tag holds a suppression comment and its location, and determines whether the supression turns checkstyle reporting on or off. |
| SuppressionFilter |
This filter accepts AuditEvents according to file, check, line, and column, as specified in a suppression file. |
| SuppressionFilter |
This filter accepts AuditEvents according to file, check, line, and column, as specified in a suppression file. |
| SuppressionsLoader | Loads a filter chain of suppressions. |
| SuppressionsLoader | Loads a filter chain of suppressions. |
| SwitchHandler | Handler for switch statements. |
| TabCharacterCheck |
Reports tab characters ('\t') in the source code. |
| TextBlock | A block of text from an inputfile that does not necessarily have any grammatical structure. |
| TextBlock | A block of text from an inputfile that does not necessarily have any grammatical structure. |
| ThisParameterCheck | Checks that 'this' is not a parameter of any method calls or constructors for a bean. |
| ThisReturnCheck | Checks that 'this' is not returned by a bean method. |
| ThrowsCountCheck |
Restricts throws statements to a specified count (default = 1). |
| TodoCommentCheck |
A check for TODO comments. |
| TokenTypes | Contains the constants for all the tokens contained in the Abstract Syntax Tree. |
| TokenTypes | Contains the constants for all the tokens contained in the Abstract Syntax Tree. |
| TrailingCommentCheck |
The check to ensure that requires that comments be the only thing on a line. |
| TranslationCheck |
The TranslationCheck class helps to ensure the correct translation of code by checking property files for consistency regarding their keys. |
| TreeTableModel | TreeTableModel is the model used by a JTreeTable. |
| TreeTableModelAdapter | This is a wrapper class takes a TreeTableModel and implements the table model interface. |
| TreeWalker | Responsible for walking an abstract syntax tree and notifying interested checks at each each node. |
| TreeWalker | Responsible for walking an abstract syntax tree and notifying interested checks at each each node. |
| TreeWalker.SilentJavaRecognizer | Overrides ANTLR error reporting so we completely control checkstyle's output during parsing. |
| TryHandler | Handler for try blocks. |
| TypecastParenPadCheck |
Checks the padding of parentheses for typecasts. |
| TypeNameCheck |
Checks that type names conform to a format specified by the format property. |
| UncommentedMainCheck | Detects uncommented main methods. |
| UnnecessaryParenthesesCheck |
Checks if unnecessary parentheses are used in a statement or expression. |
| UnusedImportsCheck |
Checks for unused import statements. |
| UpperEllCheck |
Checks that long constants are defined with an upper ell. |
| Utils | Contains utility methods. |
| Utils | Contains utility methods. |
| Utils | J2EE check utility methods. |
| VisibilityModifierCheck | Checks visibility of class members. |
| WhileHandler | Handler for while loops. |
| WhitespaceAfterCheck |
Checks that a token is followed by whitespace, with the exception that it does not check for whitespace after the semicolon of an empty for iterator. |
| WhitespaceAroundCheck |
Checks that a token is surrounded by whitespace. |
| WriteTagCheck |
Outputs a JavaDoc tag as information. |
| XMLLogger | Simple XML logger. |
| XMLLogger | Simple XML logger. |