<?xml version="1.0" encoding="ISO-8859-1"?>
<!--
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.
-->
<rss version="0.91">
  <channel>
    <title>Archiva Base :: Consumers :: API - Checkstyle report</title>
    <link>http://archiva.apache.org/ref/2.2.8/archiva-base/archiva-consumers/archiva-consumer-api</link>
    <description>Archiva Base :: Consumers :: API - Checkstyle report</description>
    <language>en-us</language>
    <copyright>&#169;2006 - 2022 The Apache Software Foundation</copyright>
    <item>
      <title>File: 10,
             Errors: 6,
             Warnings: 15,
             Infos: 0
      </title>
            <link>http://archiva.apache.org/ref/2.2.8/archiva-base/archiva-consumers/archiva-consumer-api/checkstyle.html</link>
      <description>
        <p>Click <a href="http://archiva.apache.org/ref/2.2.8/archiva-base/archiva-consumers/archiva-consumer-api/checkstyle.html">here</a> for the full Checkstyle report.</p>

        <table summary="Files" boder="1">
          <thead>
            <tr>
              <th>Files</th>
              <th style="width:30px;"><abbr title="Info">I</abbr></th>
              <th style="width:30px;"><abbr title="Warning">W</abbr></th>
              <th style="width:30px;"><abbr title="Error">E</abbr></th>
            </tr>
          </thead>
          <tbody>
                          <tr>
                <td>
                  <a href="http://archiva.apache.org/ref/2.2.8/archiva-base/archiva-consumers/archiva-consumer-api/checkstyle.html#org.apache.archiva.consumers.package-info.java">org/apache/archiva/consumers/package-info.java</a>
                </td>
                <td>
                  0
                </td>
                <td>
                  0
                </td>
                <td>
                  1
                </td>
              </tr>
                          <tr>
                <td>
                  <a href="http://archiva.apache.org/ref/2.2.8/archiva-base/archiva-consumers/archiva-consumer-api/checkstyle.html#org.apache.archiva.consumers.RepositoryContentConsumer.java">org/apache/archiva/consumers/RepositoryContentConsumer.java</a>
                </td>
                <td>
                  0
                </td>
                <td>
                  0
                </td>
                <td>
                  4
                </td>
              </tr>
                          <tr>
                <td>
                  <a href="http://archiva.apache.org/ref/2.2.8/archiva-base/archiva-consumers/archiva-consumer-api/checkstyle.html#org.apache.archiva.consumers.Consumer.java">org/apache/archiva/consumers/Consumer.java</a>
                </td>
                <td>
                  0
                </td>
                <td>
                  0
                </td>
                <td>
                  0
                </td>
              </tr>
                          <tr>
                <td>
                  <a href="http://archiva.apache.org/ref/2.2.8/archiva-base/archiva-consumers/archiva-consumer-api/checkstyle.html#org.apache.archiva.consumers.functors.package-info.java">org/apache/archiva/consumers/functors/package-info.java</a>
                </td>
                <td>
                  0
                </td>
                <td>
                  0
                </td>
                <td>
                  1
                </td>
              </tr>
                          <tr>
                <td>
                  <a href="http://archiva.apache.org/ref/2.2.8/archiva-base/archiva-consumers/archiva-consumer-api/checkstyle.html#org.apache.archiva.consumers.ConsumerMonitor.java">org/apache/archiva/consumers/ConsumerMonitor.java</a>
                </td>
                <td>
                  0
                </td>
                <td>
                  0
                </td>
                <td>
                  0
                </td>
              </tr>
                          <tr>
                <td>
                  <a href="http://archiva.apache.org/ref/2.2.8/archiva-base/archiva-consumers/archiva-consumer-api/checkstyle.html#org.apache.archiva.consumers.functors.ConsumerWantsFilePredicate.java">org/apache/archiva/consumers/functors/ConsumerWantsFilePredicate.java</a>
                </td>
                <td>
                  0
                </td>
                <td>
                  8
                </td>
                <td>
                  0
                </td>
              </tr>
                          <tr>
                <td>
                  <a href="http://archiva.apache.org/ref/2.2.8/archiva-base/archiva-consumers/archiva-consumer-api/checkstyle.html#org.apache.archiva.consumers.InvalidRepositoryContentConsumer.java">org/apache/archiva/consumers/InvalidRepositoryContentConsumer.java</a>
                </td>
                <td>
                  0
                </td>
                <td>
                  0
                </td>
                <td>
                  0
                </td>
              </tr>
                          <tr>
                <td>
                  <a href="http://archiva.apache.org/ref/2.2.8/archiva-base/archiva-consumers/archiva-consumer-api/checkstyle.html#org.apache.archiva.consumers.AbstractMonitoredConsumer.java">org/apache/archiva/consumers/AbstractMonitoredConsumer.java</a>
                </td>
                <td>
                  0
                </td>
                <td>
                  5
                </td>
                <td>
                  0
                </td>
              </tr>
                          <tr>
                <td>
                  <a href="http://archiva.apache.org/ref/2.2.8/archiva-base/archiva-consumers/archiva-consumer-api/checkstyle.html#org.apache.archiva.consumers.ConsumerException.java">org/apache/archiva/consumers/ConsumerException.java</a>
                </td>
                <td>
                  0
                </td>
                <td>
                  2
                </td>
                <td>
                  0
                </td>
              </tr>
                          <tr>
                <td>
                  <a href="http://archiva.apache.org/ref/2.2.8/archiva-base/archiva-consumers/archiva-consumer-api/checkstyle.html#org.apache.archiva.consumers.KnownRepositoryContentConsumer.java">org/apache/archiva/consumers/KnownRepositoryContentConsumer.java</a>
                </td>
                <td>
                  0
                </td>
                <td>
                  0
                </td>
                <td>
                  0
                </td>
              </tr>
                      </tbody>
        </table>
        
      </description>
    </item>
  </channel>
</rss>

