<?xml version="1.0" encoding="UTF-8"?>
<!--
  ~ Copyright 2014-present Open Networking Foundation
  ~
  ~ Licensed 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.
  -->
<!DOCTYPE suppressions PUBLIC "-//Puppy Crawl//DTD Suppressions 1.1//EN" "http://www.puppycrawl.com/dtds/suppressions_1_1.dtd">

<suppressions>
    <suppress files="org.apache.karaf.branding.*" checks="[a-zA-Z0-9]*"/>

    <suppress files=".*" checks="FinalParametersCheck"/>
    <suppress files=".*" checks="MagicNumbersCheck"/>
    <suppress files=".*" checks="DesignForExtensionCheck"/>
    <suppress files=".*" checks="TodoCommentCheck"/>
    <suppress files=".*" checks="AvoidInlineConditionalsCheck"/>
    <suppress files=".*" checks="OperatorWrapCheck"/>
    <suppress files=".*" checks="HiddenField"/>
    <suppress files=".java" checks="NewlineAtEndOfFile"/>
    <suppress files="org.onlab.packet.*" checks="AbbreviationAsWordInName" />
    <suppress files="org.onlab.jdvue.*" checks="AbbreviationAsWordInName" />
    <suppress files="org.onosproject.driver.pipeline.*" checks="AbbreviationAsWordInName" />
    <suppress files="org.onosproject.driver.pipeline.ofdpa.Ofdpa2GroupHandler.java" checks="FileLength" />
    <suppress files="org.onosproject.segmentrouting.*" checks="AbbreviationAsWordInName" />
    <suppress files="org.onosproject.segmentrouting.DefaultRoutingHandler.java" checks="FileLength" />
    <suppress files="org.onosproject.segmentrouting.mcast.McastHandler" checks="FileLength" />

    <!-- These files carry AT&T copyrights -->
    <suppress files="org.onlab.packet.EAP" checks="RegexpHeader" />
    <suppress files="org.onlab.packet.EAPOL" checks="RegexpHeader" />
    <suppress files="org.onlab.packet.RADIUS" checks="RegexpHeader" />
    <suppress files="org.onlab.packet.RADIUSAttribute" checks="RegexpHeader" />

    <!-- Suppressions for unit testing code -->
    <suppress checks="Javadoc(Package|Method)"
              files=".*/src/test/.*.java"
            />

    <suppress checks="Javadoc.*"
              files=".*/thirdparty/.*.java"/>

    <suppress checks="Javadoc.*"
              files=".*/kafkaintegration/.*.java"/>

    <suppress checks="Javadoc.*"
              files=".*/demo/.*.java"/>

    <suppress checks="FileLength"
              files=".*/SegmentRoutingManager.java"/>
    <suppress checks="FileLength"
              files=".*/Ofdpa2GroupHandler.java"/>

    <!-- Suppressions for yangutils generated code -->
    <suppress files="org.onosproject.yang.gen.v1.*" checks="Javadoc.*" />

    <suppress files="ApiDocRegistrator.java" checks="JavadocPackage" />
</suppressions>
