<!DOCTYPE html>
<!--
 | Generated by Apache Maven Doxia Site Renderer 1.11.1 at 2023-07-11 
 | Rendered using Apache Maven Fluido Skin 1.5
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <meta name="Date-Revision-yyyymmdd" content="20230711" />
    <meta http-equiv="Content-Language" content="en" />
    <title>Apache Shiro :: Samples :: AspectJ &#x2013; PMD Results</title>
    <link rel="stylesheet" href="./css/apache-maven-fluido-1.5.min.css" />
    <link rel="stylesheet" href="./css/site.css" />
    <link rel="stylesheet" href="./css/print.css" media="print" />

      
    <script type="text/javascript" src="./js/apache-maven-fluido-1.5.min.js"></script>

                      </head>
        <body class="topBarDisabled">
          
        
    
        <div class="container-fluid">
          <div id="banner">
        <div class="pull-left">
                                    <a href="http://shiro.apache.org" id="bannerLeft">
                                                                                        <img src="http://shiro.apache.org/images/apache-shiro-logo.png"  alt="Shiro"/>
                </a>
                      </div>
        <div class="pull-right">              <div id="bannerRight">
                                                                                        <img src="http://shiro.apache.org/images/asf_logo.png" />
                </div>
      </div>
        <div class="clear"><hr/></div>
      </div>

      <div id="breadcrumbs">
        <ul class="breadcrumb">
              
                              <li class="">
                    <a href="../../index.html" title="Apache Shiro :: Samples :: AspectJ">
        Apache Shiro :: Samples :: AspectJ</a>
                    <span class="divider">/</span>
      </li>
            <li class="">
                    <a href="../index.html" title="Apache Shiro :: Samples">
        Apache Shiro :: Samples</a>
                    <span class="divider">/</span>
      </li>
            <li class="">
                    <a href="index.html" title="Apache Shiro :: Samples :: AspectJ">
        Apache Shiro :: Samples :: AspectJ</a>
                    <span class="divider">/</span>
      </li>
        <li class="active ">PMD Results</li>
        
              
                  <li id="publishDate" class="pull-right"><span class="divider">|</span> Last Published: 2023-07-11</li>
              <li id="projectVersion" class="pull-right">
                    Version: 1.12.0
        </li>
            
                            </ul>
      </div>

            
      <div class="row-fluid">
        <div id="leftColumn" class="span2">
          <div class="well sidebar-nav">
              
                <ul class="nav nav-list">
                    <li class="nav-header">Parent Project</li>
                              
      <li>
  
                          <a href="../index.html" title="Apache Shiro :: Samples">
          <span class="none"></span>
        Apache Shiro :: Samples</a>
            </li>
                                        <li class="nav-header">Project Documentation</li>
                                                                                                                                                                                                                                                                                                                          
      <li>
  
                          <a href="project-info.html" title="Project Information">
          <span class="icon-chevron-right"></span>
        Project Information</a>
                  </li>
                                                                                                                                                                                        
      <li>
  
                          <a href="project-reports.html" title="Project Reports">
          <span class="icon-chevron-down"></span>
        Project Reports</a>
                    <ul class="nav nav-list">
                    
      <li>
  
                          <a href="xref/index.html" title="Source Xref">
          <span class="none"></span>
        Source Xref</a>
            </li>
                    
      <li>
  
                          <a href="cpd.html" title="CPD">
          <span class="none"></span>
        CPD</a>
            </li>
                    
      <li class="active">
  
            <a href="#"><span class="none"></span>PMD</a>
          </li>
                    
      <li>
  
                          <a href="surefire-report.html" title="Surefire">
          <span class="none"></span>
        Surefire</a>
            </li>
                    
      <li>
  
                          <a href="taglist.html" title="Tag List">
          <span class="none"></span>
        Tag List</a>
            </li>
                    
      <li>
  
                          <a href="jdepend-report.html" title="JDepend">
          <span class="none"></span>
        JDepend</a>
            </li>
                    
      <li>
  
                          <a href="dashboard-report.html" title="DashBoard Report">
          <span class="none"></span>
        DashBoard Report</a>
            </li>
              </ul>
        </li>
            </ul>
              
                
          <hr />

           <div id="poweredBy">
                            <div class="clear"></div>
                            <div class="clear"></div>
                            <div class="clear"></div>
                            <div class="clear"></div>
                             <a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy">
        <img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" />
      </a>
                  </div>
          </div>
        </div>
        
                
        <div id="bodyColumn"  class="span10" >
                                  
            <section>
<h2><a name="PMD_Results"></a>PMD Results</h2>
<p>The following document contains the results of <a class="externalLink" href="https://pmd.github.io">PMD</a> 6.53.0.</p></section><section>
<h2><a name="Violations_By_Priority"></a>Violations By Priority</h2><section>
<h3><a name="Priority_3"></a>Priority 3</h3><section>
<h4><a name="org.2Fapache.2Fshiro.2Fsamples.2Faspectj.2Fbank.2FBankService.java"></a>org/apache/shiro/samples/aspectj/bank/BankService.java</h4>
<table border="0" class="table table-striped">
<tr class="a">
<th>Rule</th>
<th>Violation</th>
<th>Line</th></tr>
<tr class="b">
<td><a class="externalLink" href="https://pmd.github.io/pmd-6.53.0/pmd_rules_java_codestyle.html#unnecessarymodifier">UnnecessaryModifier</a></td>
<td>Unnecessary modifier 'public' on method 'searchAccountIdsByOwner': the method is declared in an interface type</td>
<td><a href="./xref/org/apache/shiro/samples/aspectj/bank/BankService.html#L25">25</a></td></tr>
<tr class="a">
<td><a class="externalLink" href="https://pmd.github.io/pmd-6.53.0/pmd_rules_java_codestyle.html#unnecessarymodifier">UnnecessaryModifier</a></td>
<td>Unnecessary modifier 'public' on method 'createNewAccount': the method is declared in an interface type</td>
<td><a href="./xref/org/apache/shiro/samples/aspectj/bank/BankService.html#L27">27</a></td></tr>
<tr class="b">
<td><a class="externalLink" href="https://pmd.github.io/pmd-6.53.0/pmd_rules_java_codestyle.html#unnecessarymodifier">UnnecessaryModifier</a></td>
<td>Unnecessary modifier 'public' on method 'getBalanceOf': the method is declared in an interface type</td>
<td><a href="./xref/org/apache/shiro/samples/aspectj/bank/BankService.html#L29">29</a></td></tr>
<tr class="a">
<td><a class="externalLink" href="https://pmd.github.io/pmd-6.53.0/pmd_rules_java_codestyle.html#unnecessarymodifier">UnnecessaryModifier</a></td>
<td>Unnecessary modifier 'public' on method 'getOwnerOf': the method is declared in an interface type</td>
<td><a href="./xref/org/apache/shiro/samples/aspectj/bank/BankService.html#L31">31</a></td></tr>
<tr class="b">
<td><a class="externalLink" href="https://pmd.github.io/pmd-6.53.0/pmd_rules_java_codestyle.html#unnecessarymodifier">UnnecessaryModifier</a></td>
<td>Unnecessary modifier 'public' on method 'depositInto': the method is declared in an interface type</td>
<td><a href="./xref/org/apache/shiro/samples/aspectj/bank/BankService.html#L33">33</a></td></tr>
<tr class="a">
<td><a class="externalLink" href="https://pmd.github.io/pmd-6.53.0/pmd_rules_java_codestyle.html#unnecessarymodifier">UnnecessaryModifier</a></td>
<td>Unnecessary modifier 'public' on method 'withdrawFrom': the method is declared in an interface type</td>
<td><a href="./xref/org/apache/shiro/samples/aspectj/bank/BankService.html#L35">35</a></td></tr>
<tr class="b">
<td><a class="externalLink" href="https://pmd.github.io/pmd-6.53.0/pmd_rules_java_codestyle.html#unnecessarymodifier">UnnecessaryModifier</a></td>
<td>Unnecessary modifier 'public' on method 'getTxHistoryFor': the method is declared in an interface type</td>
<td><a href="./xref/org/apache/shiro/samples/aspectj/bank/BankService.html#L37">37</a></td></tr>
<tr class="a">
<td><a class="externalLink" href="https://pmd.github.io/pmd-6.53.0/pmd_rules_java_codestyle.html#unnecessarymodifier">UnnecessaryModifier</a></td>
<td>Unnecessary modifier 'public' on method 'closeAccount': the method is declared in an interface type</td>
<td><a href="./xref/org/apache/shiro/samples/aspectj/bank/BankService.html#L39">39</a></td></tr>
<tr class="b">
<td><a class="externalLink" href="https://pmd.github.io/pmd-6.53.0/pmd_rules_java_codestyle.html#unnecessarymodifier">UnnecessaryModifier</a></td>
<td>Unnecessary modifier 'public' on method 'isAccountActive': the method is declared in an interface type</td>
<td><a href="./xref/org/apache/shiro/samples/aspectj/bank/BankService.html#L41">41</a></td></tr>
<tr class="a">
<td><a class="externalLink" href="https://pmd.github.io/pmd-6.53.0/pmd_rules_java_codestyle.html#unnecessarymodifier">UnnecessaryModifier</a></td>
<td>Unnecessary modifier 'static' on class 'TxLog': types nested within an interface type are implicitly static</td>
<td><a href="./xref/org/apache/shiro/samples/aspectj/bank/BankService.html#L43">43</a>&#x2013;<a href="./xref/org/apache/shiro/samples/aspectj/bank/BankService.html#L81">81</a></td></tr>
<tr class="b">
<td><a class="externalLink" href="https://pmd.github.io/pmd-6.53.0/pmd_rules_java_codestyle.html#unnecessarymodifier">UnnecessaryModifier</a></td>
<td>Unnecessary modifier 'public' on class 'TxLog': members of interface types are implicitly public</td>
<td><a href="./xref/org/apache/shiro/samples/aspectj/bank/BankService.html#L43">43</a>&#x2013;<a href="./xref/org/apache/shiro/samples/aspectj/bank/BankService.html#L81">81</a></td></tr></table></section></section></section><section>
<h2><a name="Files"></a>Files</h2><section>
<h3><a name="org.2Fapache.2Fshiro.2Fsamples.2Faspectj.2Fbank.2FBankService.java"></a>org/apache/shiro/samples/aspectj/bank/BankService.java</h3>
<table border="0" class="table table-striped">
<tr class="a">
<th>Rule</th>
<th>Violation</th>
<th>Priority</th>
<th>Line</th></tr>
<tr class="b">
<td><a class="externalLink" href="https://pmd.github.io/pmd-6.53.0/pmd_rules_java_codestyle.html#unnecessarymodifier">UnnecessaryModifier</a></td>
<td>Unnecessary modifier 'public' on method 'searchAccountIdsByOwner': the method is declared in an interface type</td>
<td>3</td>
<td><a href="./xref/org/apache/shiro/samples/aspectj/bank/BankService.html#L25">25</a></td></tr>
<tr class="a">
<td><a class="externalLink" href="https://pmd.github.io/pmd-6.53.0/pmd_rules_java_codestyle.html#unnecessarymodifier">UnnecessaryModifier</a></td>
<td>Unnecessary modifier 'public' on method 'createNewAccount': the method is declared in an interface type</td>
<td>3</td>
<td><a href="./xref/org/apache/shiro/samples/aspectj/bank/BankService.html#L27">27</a></td></tr>
<tr class="b">
<td><a class="externalLink" href="https://pmd.github.io/pmd-6.53.0/pmd_rules_java_codestyle.html#unnecessarymodifier">UnnecessaryModifier</a></td>
<td>Unnecessary modifier 'public' on method 'getBalanceOf': the method is declared in an interface type</td>
<td>3</td>
<td><a href="./xref/org/apache/shiro/samples/aspectj/bank/BankService.html#L29">29</a></td></tr>
<tr class="a">
<td><a class="externalLink" href="https://pmd.github.io/pmd-6.53.0/pmd_rules_java_codestyle.html#unnecessarymodifier">UnnecessaryModifier</a></td>
<td>Unnecessary modifier 'public' on method 'getOwnerOf': the method is declared in an interface type</td>
<td>3</td>
<td><a href="./xref/org/apache/shiro/samples/aspectj/bank/BankService.html#L31">31</a></td></tr>
<tr class="b">
<td><a class="externalLink" href="https://pmd.github.io/pmd-6.53.0/pmd_rules_java_codestyle.html#unnecessarymodifier">UnnecessaryModifier</a></td>
<td>Unnecessary modifier 'public' on method 'depositInto': the method is declared in an interface type</td>
<td>3</td>
<td><a href="./xref/org/apache/shiro/samples/aspectj/bank/BankService.html#L33">33</a></td></tr>
<tr class="a">
<td><a class="externalLink" href="https://pmd.github.io/pmd-6.53.0/pmd_rules_java_codestyle.html#unnecessarymodifier">UnnecessaryModifier</a></td>
<td>Unnecessary modifier 'public' on method 'withdrawFrom': the method is declared in an interface type</td>
<td>3</td>
<td><a href="./xref/org/apache/shiro/samples/aspectj/bank/BankService.html#L35">35</a></td></tr>
<tr class="b">
<td><a class="externalLink" href="https://pmd.github.io/pmd-6.53.0/pmd_rules_java_codestyle.html#unnecessarymodifier">UnnecessaryModifier</a></td>
<td>Unnecessary modifier 'public' on method 'getTxHistoryFor': the method is declared in an interface type</td>
<td>3</td>
<td><a href="./xref/org/apache/shiro/samples/aspectj/bank/BankService.html#L37">37</a></td></tr>
<tr class="a">
<td><a class="externalLink" href="https://pmd.github.io/pmd-6.53.0/pmd_rules_java_codestyle.html#unnecessarymodifier">UnnecessaryModifier</a></td>
<td>Unnecessary modifier 'public' on method 'closeAccount': the method is declared in an interface type</td>
<td>3</td>
<td><a href="./xref/org/apache/shiro/samples/aspectj/bank/BankService.html#L39">39</a></td></tr>
<tr class="b">
<td><a class="externalLink" href="https://pmd.github.io/pmd-6.53.0/pmd_rules_java_codestyle.html#unnecessarymodifier">UnnecessaryModifier</a></td>
<td>Unnecessary modifier 'public' on method 'isAccountActive': the method is declared in an interface type</td>
<td>3</td>
<td><a href="./xref/org/apache/shiro/samples/aspectj/bank/BankService.html#L41">41</a></td></tr>
<tr class="a">
<td><a class="externalLink" href="https://pmd.github.io/pmd-6.53.0/pmd_rules_java_codestyle.html#unnecessarymodifier">UnnecessaryModifier</a></td>
<td>Unnecessary modifier 'static' on class 'TxLog': types nested within an interface type are implicitly static</td>
<td>3</td>
<td><a href="./xref/org/apache/shiro/samples/aspectj/bank/BankService.html#L43">43</a>&#x2013;<a href="./xref/org/apache/shiro/samples/aspectj/bank/BankService.html#L81">81</a></td></tr>
<tr class="b">
<td><a class="externalLink" href="https://pmd.github.io/pmd-6.53.0/pmd_rules_java_codestyle.html#unnecessarymodifier">UnnecessaryModifier</a></td>
<td>Unnecessary modifier 'public' on class 'TxLog': members of interface types are implicitly public</td>
<td>3</td>
<td><a href="./xref/org/apache/shiro/samples/aspectj/bank/BankService.html#L43">43</a>&#x2013;<a href="./xref/org/apache/shiro/samples/aspectj/bank/BankService.html#L81">81</a></td></tr></table></section></section>
                  </div>
            </div>
          </div>

    <hr/>

    <footer>
            <div class="container-fluid">
                      <div class="row-fluid">
                                      <p >Copyright &copy;                    2004&#x2013;2023
                        <a href="https://www.apache.org/">The Apache Software Foundation</a>.
            All rights reserved.    
      </p>
                </div>

        
                </div>
    </footer>
        </body>
</html>
