<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<!--
   Licensed to the Apache Software Foundation (ASF) under one or more
   contributor license agreements.  See the NOTICE file distributed with
   this work for additional information regarding copyright ownership.
   The ASF licenses this file to You under the Apache License, Version 2.0
   (the "License"); you may not use this file except in compliance with
   the License.  You may obtain a copy of the License at

       http://www.apache.org/licenses/LICENSE-2.0

   Unless required by applicable law or agreed to in writing, software
   distributed under the License is distributed on an "AS IS" BASIS,
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   See the License for the specific language governing permissions and
   limitations under the License.
-->
<!-- Generated by Apache Maven Doxia at 2018-06-10 -->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <title>Log4j Audit API &#x2013; PMD Results - Log4j Audit API</title>
    <link rel="stylesheet" href="./css/bootstrap.min.css" type="text/css" />
    <link rel="stylesheet" href="./css/site.css" type="text/css" />
    <script type="text/javascript" src="./js/jquery.min.js"></script>
    <script type="text/javascript" src="./js/bootstrap.min.js"></script>
    <script type="text/javascript" src="./js/prettify.min.js"></script>
    <script type="text/javascript" src="./js/site.js"></script>
                    <meta name="Date-Revision-yyyymmdd" content="20180610" />
                <meta http-equiv="Content-Language" content="en" />
        
        </head>
<body class="composite">
<a  href="http://www.apache.org/events/current-event.html">
    <img class=logo-left src="http://www.apache.org/events/current-event-234x60.png"/>
</a>
<img class="logo-right" src="./images/logo.png" alt="Apache log4j logo" />
<a href="https://logging.apache.org/">
    <img class="logo-center" src="./images/ls-logo.jpg" alt="Apache logging services logo" />
</a>
<div class="clear"></div>

<div class="navbar">
    <div class="navbar-inner">
        <div class="container-fluid">
            <a class="brand" href="http://logging.apache.org/log4j-audit/log4j-audit/log4j-audit-api">Log4j Audit API &trade;</a>
            <ul class="nav">
                        <li>
                        
                
            <a href="https://cwiki.apache.org/confluence/display/LOGGING/Home" class="external" target="_blank" title="Logging Wiki">Logging Wiki</a>
            </li>
                    <li>
                        
                
            <a href="https://wiki.apache.org/logging" class="external" target="_blank" title="Logging Wiki">Logging Wiki</a>
            </li>
                    <li>
                        
                
            <a href="https://www.apache.org/" class="external" target="_blank" title="Apache">Apache</a>
            </li>
                    <li>
                        
                
            <a href="https://logging.apache.org/" class="external" target="_blank" title="Logging Services">Logging Services</a>
            </li>
                    <li>
                        
                
            <a href="https://github.com/apache/logging-log4j-audit" class="external" target="_blank" title="GitHub">GitHub</a>
            </li>
                    <li>
                                    <a href="../../index.html" title="Log4j Audit">Log4j Audit</a>
            </li>
    </ul>
        </div>
    </div>
</div>

<div class="container-fluid">
    <table class="layout-table">
        <tr>
            <td class="sidebar">
                <div class="well sidebar-nav">
                            <ul class="nav nav-list">
                                                        <li class="nav-header"><i class="icon-home"></i>Apache Log4j Audit™</li>
                                                                                    <li class="none">
                                <a href="../../index.html" title="About">About</a>
                </li>
                                                            <li class="none">
                                <a href="../../download.html" title="Download">Download</a>
                </li>
                                                            <li class="none">
                                <a href="../../gettingStarted.html" title="Getting Started">Getting Started</a>
                </li>
                                                            <li class="none">
                                <a href="../../catalog.html" title="Audit Catalog">Audit Catalog</a>
                </li>
                                                            <li class="none">
                                <a href="../../requestContext.html" title="RequestContext">RequestContext</a>
                </li>
                                                            <li class="none">
                                <a href="../../sample.html" title="Sample Project">Sample Project</a>
                </li>
                                                            <li class="none">
                                <a href="../../changelog.html" title="Changelog">Changelog</a>
                </li>
                                                            <li class="none">
                                <a href="../../apidocs/index.html" title="Javadoc">Javadoc</a>
                </li>
                            </ul>
        <ul class="nav nav-list">
                                                        <li class="nav-header"><i class="icon-pencil"></i>For Contributors</li>
                                                                                    <li class="none">
                                <a href="../../build.html" title="Building Log4j Audit from Source">Building Log4j Audit from Source</a>
                </li>
                                                            <li class="none">
                                <a href="../../guidelines.html" title="Guidelines">Guidelines</a>
                </li>
                                                            <li class="none">
                                <a href="../../javastyle.html" title="Style Guide">Style Guide</a>
                </li>
                            </ul>
        <ul class="nav nav-list">
                                                        <li class="nav-header"><i class="icon-cog"></i>Component Reports</li>
                                                                                    <li class="none">
                                <a href="../../log4j-audit/log4j-audit-api/index.html" title="Audit API">Audit API</a>
                </li>
                                                            <li class="none">
                                <a href="../../log4j-audit/log4j-audit-war/index.html" title="Audit Service">Audit Service</a>
                </li>
                                                            <li class="none">
                                <a href="../../log4j-audit/log4j-audit-maven-plugin/index.html" title="Maven Plugin">Maven Plugin</a>
                </li>
                                                            <li class="none">
                                <a href="../../log4j-catalog/log4j-catalog-api/index.html" title="Catalog API">Catalog API</a>
                </li>
                                                            <li class="none">
                                <a href="../../log4j-catalog/log4j-catalog-git/index.html" title="Git Catalog Access">Git Catalog Access</a>
                </li>
                                                            <li class="none">
                                <a href="../../log4j-catalog/log4j-catalog-jpa/index.html" title="JPA Catalog Access">JPA Catalog Access</a>
                </li>
                                                            <li class="none">
                                <a href="../../log4j-catalog/log4j-catalog-war/index.html" title="Catalog Editor">Catalog Editor</a>
                </li>
                            </ul>
        <ul class="nav nav-list">
                                                                    <li class="nav-header">Component Documentation</li>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            <li class="collapsed">
                                <a href="project-info.html" title="Component Information">Component Information</a>
                                    </li>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        <li class="expanded">
                                <a href="project-reports.html" title="Component Reports">Component Reports</a>
                                        <ul>
                    						                                    <li class="none">
                                <a href="jira-report.html" title="JIRA Report">JIRA Report</a>
                </li>
    											                                    <li class="none">
                                <a href="checkstyle.html" title="Checkstyle">Checkstyle</a>
                </li>
    											                                    <li class="none">
                                <a href="rat-report.html" title="Rat Report">Rat Report</a>
                </li>
    											                                    <li class="none">
                                <a href="findbugs.html" title="FindBugs">FindBugs</a>
                </li>
    											                                    <li class="none">
                                <a href="xref/index.html" title="Source Xref">Source Xref</a>
                </li>
    											                                    <li class="none">
                                <a href="cpd.html" title="CPD">CPD</a>
                </li>
    											                                        <li class="none active">
                                <a href="pmd.html" title="PMD">PMD</a>
                </li>
    					                </ul>
                        </li>
                            </ul>
        <ul class="nav nav-list">
                                                        <li class="nav-header"><i class="icon-info-sign"></i>Project Information</li>
                                                                                    <li class="none">
                                <a href="dependencies.html" title="Dependencies">Dependencies</a>
                </li>
                                                            <li class="none">
                                <a href="dependency-convergence.html" title="Dependency Convergence">Dependency Convergence</a>
                </li>
                                                            <li class="none">
                                <a href="dependency-management.html" title="Dependency Management">Dependency Management</a>
                </li>
                                                            <li class="none">
                                <a href="team-list.html" title="Project Team">Project Team</a>
                </li>
                                                            <li class="none">
                                <a href="mail-lists.html" title="Mailing Lists">Mailing Lists</a>
                </li>
                                                            <li class="none">
                                <a href="issue-tracking.html" title="Issue Tracking">Issue Tracking</a>
                </li>
                                                            <li class="none">
                                <a href="license.html" title="Project License">Project License</a>
                </li>
                                                            <li class="none">
                                <a href="source-repository.html" title="Source Repository">Source Repository</a>
                </li>
                                                            <li class="none">
                                <a href="project-summary.html" title="Project Summary">Project Summary</a>
                </li>
                            </ul>
        <ul class="nav nav-list">
                                                        <li class="nav-header"><i class="icon-cog"></i>Project Reports</li>
                                                                                    <li class="none">
                                <a href="changes-report.html" title="Changes Report">Changes Report</a>
                </li>
                                                            <li class="none">
                                <a href="jira-report.html" title="JIRA Report">JIRA Report</a>
                </li>
                                                            <li class="none">
                                <a href="rat-report.html" title="RAT Report">RAT Report</a>
                </li>
                            </ul>
                    </div>
                <div id="poweredBy">
                                                <a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy">
            <img class="poweredBy" alt="Built by Maven" src="./images/maven-feather.png" />
        </a>
                            </div>
            </td>
            <td class="content">
                <div class="section">
<h2><a name="PMD_Results"></a>PMD Results</h2>
<p>The following document contains the results of <a class="externalLink" href="http://pmd.sourceforge.net/">PMD</a> 5.6.1.</p></div>
<div class="section">
<h2><a name="Files"></a>Files</h2>
<div class="section">
<h3><a name="orgapachelogginglog4jauditAbstractEventLogger.java"></a>org/apache/logging/log4j/audit/AbstractEventLogger.java</h3>
<table border="0" class="bodyTable">
<tr class="a">
<th>Violation</th>
<th>Line</th></tr>
<tr class="b">
<td>Avoid unused private fields such as 'logger'.</td>
<td><a href="./xref/org/apache/logging/log4j/audit/AbstractEventLogger.html#L42">42</a></td></tr>
<tr class="a">
<td>Useless parentheses.</td>
<td><a href="./xref/org/apache/logging/log4j/audit/AbstractEventLogger.html#L117">117</a>&#x2013;<a href="./xref/org/apache/logging/log4j/audit/AbstractEventLogger.html#L118">118</a></td></tr>
<tr class="b">
<td>Useless parentheses.</td>
<td><a href="./xref/org/apache/logging/log4j/audit/AbstractEventLogger.html#L118">118</a></td></tr></table></div>
<div class="section">
<h3><a name="orgapachelogginglog4jauditAuditMessage.java"></a>org/apache/logging/log4j/audit/AuditMessage.java</h3>
<table border="0" class="bodyTable">
<tr class="a">
<th>Violation</th>
<th>Line</th></tr>
<tr class="b">
<td>Avoid unused constructor parameters such as 'maxLength'.</td>
<td><a href="./xref/org/apache/logging/log4j/audit/AuditMessage.html#L50">50</a></td></tr></table></div>
<div class="section">
<h3><a name="orgapachelogginglog4jauditLogEventFactory.java"></a>org/apache/logging/log4j/audit/LogEventFactory.java</h3>
<table border="0" class="bodyTable">
<tr class="a">
<th>Violation</th>
<th>Line</th></tr>
<tr class="b">
<td>Avoid unused private fields such as 'DEFAULT_MAX_LENGTH'.</td>
<td><a href="./xref/org/apache/logging/log4j/audit/LogEventFactory.html#L64">64</a></td></tr>
<tr class="a">
<td>These nested if statements could be combined</td>
<td><a href="./xref/org/apache/logging/log4j/audit/LogEventFactory.html#L146">146</a>&#x2013;<a href="./xref/org/apache/logging/log4j/audit/LogEventFactory.html#L148">148</a></td></tr>
<tr class="b">
<td>Avoid unused local variables such as 'returnType'.</td>
<td><a href="./xref/org/apache/logging/log4j/audit/LogEventFactory.html#L322">322</a></td></tr>
<tr class="a">
<td>Avoid unused private methods such as 'isBlank(String)'.</td>
<td><a href="./xref/org/apache/logging/log4j/audit/LogEventFactory.html#L394">394</a></td></tr></table></div>
<div class="section">
<h3><a name="orgapachelogginglog4jauditannotationChained.java"></a>org/apache/logging/log4j/audit/annotation/Chained.java</h3>
<table border="0" class="bodyTable">
<tr class="b">
<th>Violation</th>
<th>Line</th></tr>
<tr class="a">
<td>Avoid unused imports such as 'java.util.function.Consumer'</td>
<td><a href="./xref/org/apache/logging/log4j/audit/annotation/Chained.html#L23">23</a></td></tr>
<tr class="b">
<td>Avoid unused imports such as 'java.util.function.Supplier'</td>
<td><a href="./xref/org/apache/logging/log4j/audit/annotation/Chained.html#L24">24</a></td></tr></table></div>
<div class="section">
<h3><a name="orgapachelogginglog4jauditannotationClientServer.java"></a>org/apache/logging/log4j/audit/annotation/ClientServer.java</h3>
<table border="0" class="bodyTable">
<tr class="a">
<th>Violation</th>
<th>Line</th></tr>
<tr class="b">
<td>Avoid unused imports such as 'java.lang.annotation.Repeatable'</td>
<td><a href="./xref/org/apache/logging/log4j/audit/annotation/ClientServer.html#L20">20</a></td></tr></table></div>
<div class="section">
<h3><a name="orgapachelogginglog4jauditgeneratorClassGenerator.java"></a>org/apache/logging/log4j/audit/generator/ClassGenerator.java</h3>
<table border="0" class="bodyTable">
<tr class="a">
<th>Violation</th>
<th>Line</th></tr>
<tr class="b">
<td>Avoid unused imports such as 'java.util.Iterator'</td>
<td><a href="./xref/org/apache/logging/log4j/audit/generator/ClassGenerator.html#L27">27</a></td></tr>
<tr class="a">
<td>Avoid unused imports such as 'java.util.TreeSet'</td>
<td><a href="./xref/org/apache/logging/log4j/audit/generator/ClassGenerator.html#L30">30</a></td></tr>
<tr class="b">
<td>These nested if statements could be combined</td>
<td><a href="./xref/org/apache/logging/log4j/audit/generator/ClassGenerator.html#L347">347</a>&#x2013;<a href="./xref/org/apache/logging/log4j/audit/generator/ClassGenerator.html#L349">349</a></td></tr></table></div>
<div class="section">
<h3><a name="orgapachelogginglog4jauditgeneratorInterfacesGenerator.java"></a>org/apache/logging/log4j/audit/generator/InterfacesGenerator.java</h3>
<table border="0" class="bodyTable">
<tr class="a">
<th>Violation</th>
<th>Line</th></tr>
<tr class="b">
<td>Avoid unused private fields such as 'CONTEXT'.</td>
<td><a href="./xref/org/apache/logging/log4j/audit/generator/InterfacesGenerator.html#L67">67</a></td></tr>
<tr class="a">
<td>These nested if statements could be combined</td>
<td><a href="./xref/org/apache/logging/log4j/audit/generator/InterfacesGenerator.html#L198">198</a>&#x2013;<a href="./xref/org/apache/logging/log4j/audit/generator/InterfacesGenerator.html#L200">200</a></td></tr>
<tr class="b">
<td>Useless parentheses.</td>
<td><a href="./xref/org/apache/logging/log4j/audit/generator/InterfacesGenerator.html#L265">265</a></td></tr>
<tr class="a">
<td>Useless parentheses.</td>
<td><a href="./xref/org/apache/logging/log4j/audit/generator/InterfacesGenerator.html#L266">266</a></td></tr></table></div>
<div class="section">
<h3><a name="orgapachelogginglog4jauditrequestRequestContextMappings.java"></a>org/apache/logging/log4j/audit/request/RequestContextMappings.java</h3>
<table border="0" class="bodyTable">
<tr class="b">
<th>Violation</th>
<th>Line</th></tr>
<tr class="a">
<td>Avoid unused imports such as 'org.apache.logging.log4j.audit.annotation.ChainedSupplier'</td>
<td><a href="./xref/org/apache/logging/log4j/audit/request/RequestContextMappings.html#L26">26</a></td></tr></table></div>
<div class="section">
<h3><a name="orgapachelogginglog4jauditrestRequestContextFilter.java"></a>org/apache/logging/log4j/audit/rest/RequestContextFilter.java</h3>
<table border="0" class="bodyTable">
<tr class="b">
<th>Violation</th>
<th>Line</th></tr>
<tr class="a">
<td>Avoid unused imports such as 'java.text.DecimalFormat'</td>
<td><a href="./xref/org/apache/logging/log4j/audit/rest/RequestContextFilter.html#L20">20</a></td></tr></table></div></div>
            </td>
        </tr>
    </table>
</div>

<div class="footer">
        <p>Copyright &copy; 2016-2018 <a class="external" href="http://www.apache.org">Apache Software Foundation</a>. All Rights Reserved.</p>
    <p>Apache Logging, Apache Log4j, Log4j, Apache Log4j Audit, Log4j Audit, Apache, the Apache feather logo, and the Apache Logging project logo are trademarks of The Apache Software Foundation.</p>
    <p>Site powered by <a class="external" href="http://getbootstrap.com/">Twitter Bootstrap</a>. Icons from <a class="external" href="http://glyphicons.com/">Glyphicons Free</a>.</p>
</div>
</div>
</body>
</html>
