<?xml version="1.0"?>
<!DOCTYPE suppressions PUBLIC
    "-//Puppy Crawl//DTD Suppressions 1.0//EN"
    "http://www.puppycrawl.com/dtds/suppressions_1_0.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.
-->
<suppressions>
    <suppress checks=".*"
              files=".+[\\\/]generated-sources[\\\/].+\.java"
              />
    <suppress checks=".*"
              files=".+[\\\/]build[\\\/]src[\\\/].+\.java"
              />
              
    <suppress checks=".*"
              files=".+[\\\/]contrib[\\\/].+\.java"
              />

    <suppress checks=".*"
              files=".+log4j.properties"
              />
</suppressions>