|  | <?xml version="1.0" encoding="UTF-8"?> | 
|  | <!-- | 
|  |  | 
|  | Copyright (c) 2014, 2018 Oracle and/or its affiliates. All rights reserved. | 
|  |  | 
|  | This program and the accompanying materials are made available under the | 
|  | terms of the Eclipse Public License v. 2.0, which is available at | 
|  | http://www.eclipse.org/legal/epl-2.0. | 
|  |  | 
|  | This Source Code may also be made available under the following Secondary | 
|  | Licenses when the conditions for such availability set forth in the | 
|  | Eclipse Public License v. 2.0 are satisfied: GNU General Public License, | 
|  | version 2 with the GNU Classpath Exception, which is available at | 
|  | https://www.gnu.org/software/classpath/license.html. | 
|  |  | 
|  | SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 | 
|  |  | 
|  | --> | 
|  |  | 
|  | <!-- | 
|  | Configuration file for FindBugs exclusion filter. | 
|  |  | 
|  | When a file, class or rule (detector) is matched, it is not reported as a potential problem by FindBugs. | 
|  |  | 
|  | Note that this configuration file is not used by default in the maven build (mvn site), as FindBugs maven plugin | 
|  | handles the paths as relative to a module root and would require to have such file in each module separately. | 
|  | To use this exclusion configuration, run build with: | 
|  | mvn site -Dfindbugs.exclude=[jersey_project_root]/etc/config/findbugs-exclude.xml | 
|  | --> | 
|  | <FindBugsFilter> | 
|  | <!-- skip FindBugs analysis in examples --> | 
|  | <Match> | 
|  | <Package name="~org\.glassfish\.jersey\.examples.*" /> | 
|  | </Match> | 
|  |  | 
|  | <!-- skip FindBugs analysis in tests --> | 
|  | <Match> | 
|  | <Package name="~org\.glassfish\.jersey\.tests.*" /> | 
|  | </Match> | 
|  | <Match> | 
|  | <Class name="~.*\.*Test" /> | 
|  | </Match> | 
|  |  | 
|  | <!-- skip analysis in repackaged libraries --> | 
|  | <Match> | 
|  | <Package name="~jersey\.repackaged.*" /> | 
|  | </Match> | 
|  |  | 
|  | <!-- skip analysis in the spec package --> | 
|  | <Match> | 
|  | <Package name="~javax\.ws\.rs.*" /> | 
|  | </Match> | 
|  |  | 
|  | <!-- do not report issues found in bundles --> | 
|  | <Match> | 
|  | <Source name="~.*bundles.*" /> | 
|  | </Match> | 
|  |  | 
|  | <!-- | 
|  | ignore warnings coming from VO_VOLATILE_INCREMENT, there is a known bug which causes false positives: | 
|  | http://sourceforge.net/p/findbugs/bugs/1032/ | 
|  | --> | 
|  | <Match> | 
|  | <Bug pattern="VO_VOLATILE_INCREMENT" /> | 
|  | </Match> | 
|  |  | 
|  | <!-- ignore irrelevant additional GlassFish logging detectors --> | 
|  | <Match> | 
|  | <Bug pattern="GF_INVALID_MSG_ID_PATTERN,GF_MISSING_LOGGER_INFO_ANNOTATION,GF_MISSING_LOGMESSAGE_INFO_ANNOTATION" /> | 
|  | </Match> | 
|  |  | 
|  | <!-- individual ad-hoc ignores --> | 
|  | <!-- ServerScopeProvider.getFilteringScopes() - returned object would be identical --> | 
|  | <Match> | 
|  | <Class name="org.glassfish.jersey.message.filtering.ServerScopeProvider" /> | 
|  | <Method name="getFilteringScopes" /> | 
|  | <Bug pattern="RV_RETURN_VALUE_OF_PUTIFABSENT_IGNORED" /> | 
|  | </Match> | 
|  |  | 
|  | <!-- used as fallback, can be ignored here --> | 
|  | <Match> | 
|  | <Bug pattern="DM_DEFAULT_ENCODING" /> | 
|  | <Class name="~.*.Base64" /> | 
|  | </Match> | 
|  |  | 
|  | <!-- There are few cases in the codebase --> | 
|  | <Match> | 
|  | <Bug pattern="CN_IMPLEMENTS_CLONE_BUT_NOT_CLONEABLE" /> | 
|  | </Match> | 
|  |  | 
|  | <Match> | 
|  | <Bug pattern="REC_CATCH_EXCEPTION" /> | 
|  | <Class name="~.*.VfsSchemeResourceFinderFactory" /> | 
|  | </Match> | 
|  |  | 
|  | <!-- TODOs - those are the FindBugs warnings not resolved yet --> | 
|  | <!-- Those exclusions should either be fixed or, after evaluation moved outside of this "TODO" section --> | 
|  | <Match> | 
|  | <Bug pattern="DM_DEFAULT_ENCODING" /> | 
|  | <Or> | 
|  | <Class name="~.*.AbstractTemplateProcessor" /> | 
|  | <Class name="~.*.HmaSha1Method" /> | 
|  | <Class name="~.*.RsaSha1Method" /> | 
|  | <Class name="~.*.ConsumerCredentials" /> | 
|  | <Class name="~.*.AccessToken" /> | 
|  | <Class name="~.*.ClientIdentifier" /> | 
|  | <Class name="~.*.ChunkedInput" /> | 
|  | <Class name="~.*.ChunkedOutput" /> | 
|  | </Or> | 
|  | </Match> | 
|  |  | 
|  | <Match> | 
|  | <Class name="org.glassfish.jersey.apache.connector.ApacheConnector" /> | 
|  | </Match> | 
|  |  | 
|  | <!-- CDI extension observer methods are called by CDI bean manager at runtime --> | 
|  | <Match> | 
|  | <Class name="org.glassfish.jersey.ext.cdi1x.internal.CdiComponentProvider" /> | 
|  | <Bug pattern="UPM_UNCALLED_PRIVATE_METHOD" /> | 
|  | <Or> | 
|  | <Method name="processAnnotatedType" /> | 
|  | <Method name="afterTypeDiscovery" /> | 
|  | <Method name="beforeTypeDiscovery" /> | 
|  | <Method name="processInjectionTarget" /> | 
|  | <Method name="afterDiscoveryObserver" /> | 
|  | </Or> | 
|  | </Match> | 
|  |  | 
|  | </FindBugsFilter> |