<?xml version="1.0" encoding="UTF-8"?>
	<!--
		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.
	-->

	<!-- Exclusion filter for running FindBugs against Apache Harmony -->

	<!--
		Format and code information is available here
		http://findbugs.sourceforge.net/manual/filter.html
	-->

<FindBugsFilter>

	<!-- Access to field 'localPort' is not required to be synchronized -->
	<Match>
		<Class name="org.apache.harmony.nio.internal.SocketChannelImpl" />
		<Field name="localPort" />
		<Bug code="IS" />
	</Match>

	<!--
		We realize that the invocation always invokes unsupported operation.
	-->
	<Match>
		<Class name="java.nio.MappedByteBufferAdapter" />
		<Or>
			<Method name="protectedArray" />
			<Method name="protectedArrayOffset" />
		</Or>
		<Bug pattern="DMI_UNSUPPORTED_METHOD" />
	</Match>

</FindBugsFilter>
