blob: 8831a7618ce04711a76e2b44984b7eb4d147c6bd [file] [log] [blame]
<!--
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,
or the Eclipse Distribution License v. 1.0 which is available at
http://www.eclipse.org/org/documents/edl-v10.php.
SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause
-->
<FindBugsFilter>
<!--
These are hard to fix, require more robust and complete solution - excluded temporarily.
-->
<Match>
<Bug pattern="DM_DEFAULT_ENCODING"/>
</Match>
<!--
Hard to change without breaking backw. compatibility unnecessarily.
-->
<Match>
<Bug pattern="NM_SAME_SIMPLE_NAME_AS_SUPERCLASS"/>
</Match>
<Match>
<Bug pattern="NM_SAME_SIMPLE_NAME_AS_INTERFACE"/>
</Match>
<!--
Antlr generated parser
-->
<Match>
<Package name="~org.eclipse.persistence.internal.jpa.parsing.jpql.antlr.*" />
</Match>
<!--
As designed, minor issue, unimportant code
-->
<Match>
<Or>
<Class name="org.eclipse.persistence.internal.eis.cobol.helper.ByteConverter"/>
</Or>
<Bug pattern="ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD"/>
</Match>
<!--
Serialization in these classes is broken in a big way already, does not make sense
to care about serialization warnings there.
-->
<Match>
<Or>
<Class name="org.eclipse.persistence.descriptors.ClassDescriptor"/>
<Class name="org.eclipse.persistence.descriptors.DescriptorEventManager"/>
<Class name="org.eclipse.persistence.descriptors.InheritancePolicy"/>
<Class name="org.eclipse.persistence.descriptors.ReturningPolicy"/>
<Class name="org.eclipse.persistence.internal.queries.JoinedAttributeManager"/>
<Class name="org.eclipse.persistence.oxm.mappings.XMLCompositeDirectCollectionMapping"/>
</Or>
<Or>
<Bug pattern="SE_BAD_FIELD"/>
<Bug pattern="SE_BAD_FIELD_STORE"/>
<Bug pattern="SE_TRANSIENT_FIELD_NOT_RESTORED"/>
</Or>
</Match>
<!--
Unfortunate, but it is not safe to make these public static fields final now.
Should make them final in 3.0 and replace with proper apis if needed.
-->
<Match>
<Or>
<Class name="org.eclipse.persistence.internal.helper.DeferredLockManager"/>
<Class name="org.eclipse.persistence.internal.sessions.MergeManager"/>
<Class name="org.eclipse.persistence.tools.schemaframework.SchemaManager"/>
<Class name="org.eclipse.persistence.tools.schemaframework.TableCreator"/>
<Class name="org.eclipse.persistence.internal.sessions.ObjectChangeSet"/>
<Class name="org.eclipse.persistence.internal.sessions.coordination.jms.JMSTopicRemoteConnection"/>
<Class name="org.eclipse.persistence.internal.helper.WriteLockManager"/>
<Class name="org.eclipse.persistence.jpa.rs.service.JPARSPersistenceContextFactoryProvider"/>
</Or>
<Bug pattern="MS_SHOULD_BE_FINAL"/>
</Match>
<Match>
<Or>
<Class name="org.eclipse.persistence.services.ClassSummaryDetailBase"/>
</Or>
<Bug pattern="MS_SHOULD_BE_REFACTORED_TO_BE_FINAL"/>
</Match>
<Match>
<Class name="org.eclipse.persistence.sdo.SDOConstants"/>
<Bug pattern="MS_MUTABLE_ARRAY"/>
</Match>
<Match>
<Class name="org.eclipse.persistence.jaxb.compiler.CompilerHelper"/>
<or>
<Field name="ACCESSOR_FACTORY_ANNOTATION_CLASS"/>
<Field name="ACCESSOR_FACTORY_VALUE_METHOD"/>
<Field name="INTERNAL_ACCESSOR_FACTORY_ANNOTATION_CLASS"/>
<Field name="INTERNAL_ACCESSOR_FACTORY_VALUE_METHOD"/>
<Field name="XML_LOCATION_ANNOTATION_CLASS"/>
<Field name="INTERNAL_XML_LOCATION_ANNOTATION_CLASS"/>
</or>
<Bug pattern="MS_SHOULD_BE_REFACTORED_TO_BE_FINAL"/>
</Match>
<Match>
<Class name="org.eclipse.persistence.internal.oxm.XMLMarshaller"/>
<Or>
<Field name="staxResultClass"/>
<Field name="staxResultGetStreamWriterMethod"/>
<Field name="staxResultGetEventWriterMethod"/>
<Field name="domToStreamWriterClass"/>
<Field name="writeToStreamMethod"/>
<Field name="domToEventWriterClass"/>
<Field name="writeToEventWriterMethod"/>
</Or>
<Bug pattern="MS_SHOULD_BE_FINAL"/>
</Match>
<Match>
<Class name="org.eclipse.persistence.internal.jpa.metadata.accessors.objects.MetadataFactory"/>
<Field name="ALLOW_JDK"/>
<Bug pattern="MS_SHOULD_BE_FINAL"/>
</Match>
<Match>
<Class name="org.eclipse.persistence.internal.jpa.transaction.TransactionImpl"/>
<Field name="DUMP_AFTER_COMPLETION_ERRORS"/>
<Bug pattern="MS_SHOULD_BE_FINAL"/>
</Match>
<Match>
<Class name="org.eclipse.persistence.internal.jpa.weaving.ClassWeaver"/>
<Field name="isJAXBOnPath"/>
<Bug pattern="MS_SHOULD_BE_FINAL"/>
</Match>
<Match>
<Class name="org.eclipse.persistence.tools.dbws.XRPackager"/>
<Field name="__nullStream"/>
<Bug pattern="MS_SHOULD_BE_FINAL"/>
</Match>
<!--
Adding a serialVersionUID field to public classes
would be backward incompatible change.
Many classes within internal packages are used outside as well.
Should fix this in 3.0.
-->
<Match>
<Bug pattern="SE_NO_SERIALVERSIONID"/>
</Match>
<!--
Would be backwards compatible change, there's also typo in the field name. Fix with 3.0.
-->
<Match>
<Class name="org.eclipse.persistence.logging.SessionLog"/>
<Field name="loggerCatagories"/>
<Bug pattern="MS_MUTABLE_ARRAY"/>
</Match>
<Match>
<Class name="org.eclipse.persistence.internal.xr.Util"/>
<Field name="META_INF_PATHS"/>
<Bug pattern="MS_MUTABLE_ARRAY"/>
</Match>
<!--
Would be backw. incompatible change. Fix in 3.0
-->
<Match>
<Or>
<And>
<Class name="org.eclipse.persistence.Version"/>
<Field name="JDK_VERSION"/>
</And>
<And>
<Class name="org.eclipse.persistence.eis.EISDOMRecord"/>
<Field name="domMethod"/>
</And>
<And>
<Class name="org.eclipse.persistence.exceptions.EclipseLinkException"/>
<Field name="shouldPrintInternalException"/>
</And>
<And>
<Class name="org.eclipse.persistence.expressions.ExpressionOperator"/>
<Field name="allOperators"/>
</And>
<And>
<Class name="org.eclipse.persistence.internal.core.helper.CoreHelper"/>
<Field name="CR"/>
</And>
<And>
<Class name="org.eclipse.persistence.internal.helper.ConcurrencyManager"/>
<Field name="shouldTrackStack"/>
</And>
<And>
<Class name="org.eclipse.persistence.internal.helper.ConversionManager"/>
<Field name="defaultManager"/>
</And>
<And>
<Class name="org.eclipse.persistence.internal.helper.Helper"/>
<Or>
<Field name="CR"/>
<Field name="PATH_SEPARATOR"/>
<Field name="FILE_SEPARATOR"/>
<Field name="CURRENT_WORKING_DIRECTORY"/>
<Field name="TEMP_DIRECTORY"/>
</Or>
</And>
<And>
<Class name="org.eclipse.persistence.internal.helper.JavaPlatform"/>
<Field name="platform"/>
</And>
<And>
<Class name="org.eclipse.persistence.internal.indirection.TransparentIndirectionPolicy"/>
<Field name="defaultContainerSize"/>
</And>
<And>
<Class name="org.eclipse.persistence.internal.oxm.XMLBinaryDataHelper"/>
<Field name="binaryDataHelper"/>
</And>
<And>
<Class name="org.eclipse.persistence.internal.oxm.XMLConversionManager"/>
<Or>
<Field name="defaultJavaTypes"/>
<Field name="defaultXMLManager"/>
<Field name="defaultXMLTypes"/>
</Or>
</And>
<And>
<Class name="org.eclipse.persistence.internal.oxm.schema.SchemaModelGenerator"/>
<Field name="SWAREF_LOCATION"/>
</And>
<And>
<Class name="org.eclipse.persistence.internal.queries.ContainerPolicy"/>
<Field name="defaultContainerClass"/>
</And>
<And>
<Class name="org.eclipse.persistence.internal.sessions.UnitOfWorkImpl"/>
<Field name="SmartMerge"/>
</And>
<And>
<Class name="org.eclipse.persistence.logging.AbstractSessionLog"/>
<Or>
<Field name="defaultLog"/>
<Field name="SEVERE_PREFIX"/>
<Field name="WARNING_PREFIX"/>
<Field name="INFO_PREFIX"/>
<Field name="CONFIG_PREFIX"/>
<Field name="FINE_PREFIX"/>
<Field name="FINER_PREFIX"/>
<Field name="FINEST_PREFIX"/>
<Field name="TOPLINK_PREFIX"/>
</Or>
</And>
<And>
<Class name="org.eclipse.persistence.oxm.record.OutputStreamRecord"/>
<Field name="OPEN_XML_PI_AND_VERSION_ATTRIBUTE"/>
</And>
<And>
<Class name="org.eclipse.persistence.oxm.record.OutputStreamRecord"/>
<Or>
<Field name="OPEN_ENCODING_ATTRIBUTE"/>
<Field name="CLOSE_PI"/>
<Field name="OPEN_CDATA"/>
<Field name="CLOSE_CDATA"/>
<Field name="OPEN_COMMENT"/>
<Field name="CLOSE_COMMENT"/>
<Field name="AMP"/>
<Field name="LT"/>
<Field name="QUOT"/>
<Field name="ENCODING"/>
<Field name="SLASH_N"/>
<Field name="SLASH_R"/>
</Or>
</And>
<And>
<Class name="org.eclipse.persistence.platform.database.OraclePlatform"/>
<Field name="vpdSetIdentifierQuery"/>
</And>
<And>
<Class name="org.eclipse.persistence.platform.database.OraclePlatform"/>
<Field name="vpdClearIdentifierQuery"/>
</And>
<And>
<Class name="org.eclipse.persistence.services.ClassSummaryDetailBase"/>
<Field name="itemNames_"/>
</And>
<And>
<Class name="org.eclipse.persistence.sessions.DatasourceLogin"/>
<Field name="versionString"/>
</And>
<And>
<Class name="org.eclipse.persistence.sessions.factories.SessionManager"/>
<Field name="shouldUseSchemaValidation"/>
</And>
<And>
<Class name="org.eclipse.persistence.sessions.factories.XMLProjectReader"/>
<Field name="project"/>
</And>
<And>
<Class name="org.eclipse.persistence.sessions.factories.XMLProjectReader"/>
<Field name="shouldUseSchemaValidation"/>
</And>
<And>
<Class name="org.eclipse.persistence.tools.profiler.FetchGroupMonitor"/>
<Field name="shouldMonitor"/>
</And>
<And>
<Class name="org.eclipse.persistence.tools.profiler.QueryMonitor"/>
<Field name="shouldMonitor"/>
</And>
<And>
<Class name="org.eclipse.persistence.tools.profiler.QueryMonitor"/>
<Field name="dumpTime"/>
</And>
<And>
<Class name="org.eclipse.persistence.tools.schemaframework.PopulationManager"/>
<Field name="defaultManager"/>
</And>
<And>
<Class name="org.eclipse.persistence.transaction.JTATransactionController"/>
<Field name="defaultTransactionManager"/>
</And>
<And>
<Class name="org.eclipse.persistence.internal.eis.cobol.helper.ByteConverter"/>
<Field name="wordSize"/>
</And>
<And>
<Class name="org.eclipse.persistence.internal.jpa.EntityManagerFactoryProvider"/>
<Field name="oldPropertyNames"/>
</And>
<And>
<Class name="org.eclipse.persistence.internal.jpa.deployment.JavaSECMPInitializer"/>
<Or>
<Field name="isInContainer"/>
<Field name="usesAgent"/>
<Field name="initializer"/>
<Field name="globalInstrumentation"/>
<Field name="isInitialized"/>
</Or>
</And>
<And>
<Class name="org.eclipse.persistence.internal.jpa.deployment.PersistenceUnitProcessor"/>
<Field name="ARCHIVE_FACTORY"/>
</And>
<And>
<Class name="org.eclipse.persistence.sdo.helper.XPathEngine"/>
<Field name="defaultXPathEngine"/>
</And>
</Or>
<Bug pattern="MS_PKGPROTECT"/>
</Match>
<Match>
<Or>
<And>
<Class name="org.eclipse.persistence.expressions.ExpressionOperator"/>
<Method name="setArgumentIndices"/>
</And>
<And>
<Class name="org.eclipse.persistence.expressions.ListExpressionOperator"/>
<Or>
<Method name="setStartStrings"/>
<Method name="setSeparators"/>
<Method name="setTerminationStrings"/>
</Or>
</And>
<And>
<Class name="org.eclipse.persistence.expressions.spatial.SpatialParameters"/>
<Method name="setMasks"/>
</And>
<And>
<Class name="org.eclipse.persistence.internal.identitymaps.CacheId"/>
<Method name="&lt;init&gt;"/>
</And>
<And>
<Class name="org.eclipse.persistence.internal.identitymaps.CacheId"/>
<Method name="setPrimaryKey"/>
</And>
<And>
<Class name="org.eclipse.persistence.internal.indirection.CacheBasedValueHolder"/>
<Method name="&lt;init&gt;"/>
</And>
<And>
<Class name="org.eclipse.persistence.internal.indirection.ProxyIndirectionPolicy"/>
<Method name="&lt;init&gt;"/>
</And>
<And>
<Class name="org.eclipse.persistence.internal.oxm.ByteArrayDataSource"/>
<Method name="&lt;init&gt;"/>
</And>
<And>
<Class name="org.eclipse.persistence.internal.oxm.XMLBinaryDataHelper$EncodedData"/>
<Method name="&lt;init&gt;"/>
</And>
<And>
<Class name="org.eclipse.persistence.internal.oxm.XMLBinaryDataHelper$EncodedData"/>
<Method name="setData"/>
</And>
<And>
<Class name="org.eclipse.persistence.expressions.ExpressionOperator"/>
<Method name="setArgumentIndices"/>
</And>
<And>
<Class name="org.eclipse.persistence.expressions.ExpressionOperator"/>
<Method name="setArgumentIndices"/>
</And>
<And>
<Class name="org.eclipse.persistence.expressions.ExpressionOperator"/>
<Method name="setArgumentIndices"/>
</And>
<And>
<Class name="org.eclipse.persistence.expressions.ExpressionOperator"/>
<Method name="setArgumentIndices"/>
</And>
<And>
<Class name="org.eclipse.persistence.expressions.ExpressionOperator"/>
<Method name="setArgumentIndices"/>
</And>
<And>
<Class name="org.eclipse.persistence.expressions.ExpressionOperator"/>
<Method name="setArgumentIndices"/>
</And>
<And>
<Class name="org.eclipse.persistence.expressions.ExpressionOperator"/>
<Method name="setArgumentIndices"/>
</And>
</Or>
<Bug pattern="NS_DANGEROUS_NON_SHORT_CIRCUIT"/>
</Match>
<!--
As designed, not an error
-->
<Match>
<Class name="org.eclipse.persistence.jpa.jpql.tools.AbstractContentAssistVisitor$AppendableExpressionVisitor"/>
<Bug pattern="NS_DANGEROUS_NON_SHORT_CIRCUIT"/>
</Match>
<Match>
<Or>
<Class name="org.eclipse.persistence.internal.sessions.CommitManager"/>
<Class name="org.eclipse.persistence.tools.schemaframework.StoredProcedureDefinition"/>
</Or>
<Bug pattern="RC_REF_COMPARISON_BAD_PRACTICE"/>
</Match>
<Match>
<Or>
<Class name="org.eclipse.persistence.jpa.jpql.tools.AbstractContentAssistVisitor$AppendableExpressionVisitor"/>
<Class name="org.eclipse.persistence.jpa.jpql.tools.DefaultContentAssistProposals"/>
<Class name="org.eclipse.persistence.jpa.jpql.tools.EclipseLinkContentAssistVisitor$IncompleteCollectionExpressionVisitor"/>
<Class name="org.eclipse.persistence.internal.oxm.record.DOMReader"/>
<Class name="org.eclipse.persistence.internal.oxm.record.UnmarshalRecordImpl"/>
<Class name="org.eclipse.persistence.mappings.AggregateCollectionMapping"/>
<Class name="org.eclipse.persistence.oxm.record.ContentHandlerRecord"/>
<Class name="org.eclipse.persistence.queries.ObjectLevelReadQuery"/>
<Class name="org.eclipse.persistence.tools.schemaframework.StoredProcedureDefinition"/>
<Class name="org.eclipse.persistence.sdo.helper.SDODataHelper"/>
</Or>
<Bug pattern="ES_COMPARING_PARAMETER_STRING_WITH_EQ"/>
</Match>
<Match>
<!-- custom logic in equals -->
<Or>
<Class name="org.eclipse.persistence.internal.jpa.metadata.accessors.objects.MetadataClass"/>
<Class name="org.eclipse.persistence.internal.jpa.querydef.ParameterExpressionImpl"/>
</Or>
<Bug pattern="EQ_CHECK_FOR_OPERAND_NOT_COMPATIBLE_WITH_THIS"/>
</Match>
<Match>
<Or>
<Class name="org.eclipse.persistence.jpa.jpql.tools.model.query.AbstractStateObject"/>
</Or>
<Bug pattern="NP_NONNULL_PARAM_VIOLATION"/>
<Bug pattern="NP_NULL_PARAM_DEREF_NONVIRTUAL"/>
</Match>
<Match>
<Or>
<Class name="org.eclipse.persistence.internal.oxm.XMLConversionManager"/>
<Class name="org.eclipse.persistence.platform.server.JMXServerPlatformBase"/>
<Class name="org.eclipse.persistence.services.ClassSummaryDetailBase"/>
</Or>
<Bug pattern="MS_SHOULD_BE_FINAL"/>
</Match>
<Match>
<Class name="org.eclipse.persistence.expressions.ExpressionBuilder"/>
<Method name="registerIn"/>
<Bug pattern="DMI_COLLECTIONS_SHOULD_NOT_CONTAIN_THEMSELVES"/>
</Match>
<Match>
<!-- to be overridden in subclasses -->
<Class name="org.eclipse.persistence.services.RuntimeServices"/>
<Field name="PLATFORM_NAME"/>
<Bug pattern="MS_SHOULD_BE_FINAL"/>
</Match>
<Match>
<Or>
<Class name="org.eclipse.persistence.jpa.jpql.tools.model.query.AbstractStateObject$1"/>
</Or>
<Bug pattern="UMAC_UNCALLABLE_METHOD_OF_ANONYMOUS_CLASS"/>
</Match>
<Match>
<Class name="org.eclipse.persistence.dynamic.DynamicClassLoader"/>
<Method name="findClass"/>
<Bug pattern="NP_NULL_PARAM_DEREF"/>
</Match>
<Match>
<Class name="org.eclipse.persistence.mappings.CollectionMapping"/>
<Method name="shouldUseLazyInstantiationForIndirectCollection"/>
<Bug pattern="NP_BOOLEAN_RETURN_NULL"/>
</Match>
<Match>
<Class name="org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl"/>
<Method name="isLoaded"/>
<Bug pattern="NP_BOOLEAN_RETURN_NULL"/>
</Match>
<Match>
<Class name="org.eclipse.persistence.internal.jpa.EntityManagerImpl"/>
<Method name="isPropertyValueToBeUpdated"/>
<Bug pattern="NP_BOOLEAN_RETURN_NULL"/>
</Match>
<Match>
<Class name="org.eclipse.persistence.internal.jpa.querydef.PredicateImpl"/>
<Method name="getJunctionValue"/>
<Bug pattern="NP_BOOLEAN_RETURN_NULL"/>
</Match>
<Match>
<!-- comparing jar file urls -->
<Class name="org.eclipse.persistence.internal.jpa.metadata.MetadataProcessor"/>
<Method name="loadStandardMappingFiles"/>
<Bug pattern="DMI_COLLECTION_OF_URLS"/>
</Match>
<Match>
<Class name="org.eclipse.persistence.internal.jpa.EntityManagerFactoryProvider"/>
<Field name="emSetupImpls"/>
<Bug pattern="MS_MUTABLE_COLLECTION"/>
</Match>
<Match>
<Class name="org.eclipse.persistence.tools.weaving.jpa.StaticWeave"/>
<Method name="processCommandLine"/>
<Bug pattern="DM_EXIT"/>
</Match>
<Match>
<Or>
<!-- applies to LinkedHasMap.Entry<K, V>.before/after fields -->
<Class name="org.eclipse.persistence.jaxb.plugins.BeanValidationPlugin$RegexMutator$1"/>
<Class name="org.eclipse.persistence.jaxb.plugins.BeanValidationPlugin$RegexMutator$2"/>
</Or>
<Bug pattern="SE_BAD_FIELD"/>
</Match>
<Match>
<!-- This is safe since the real barrier is "private static volatile boolean firstTime = true;" -->
<Class name="org.eclipse.persistence.internal.jpa.metadata.beanvalidation.ValidationXMLReader"/>
<Method name="call"/>
<Bug pattern="ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD"/>
</Match>
<Match>
<!-- as designed -->
<Class name="_dbws.ProviderListener"/>
<Method name="contextInitialized"/>
<Bug pattern="ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD"/>
</Match>
<!-- Cloneable warnings -->
<Match>
<Or>
<!-- clones by constructor -->
<Class name="org.eclipse.persistence.descriptors.PessimisticLockingPolicy"/>
<Class name="org.eclipse.persistence.internal.helper.NonSynchronizedProperties"/>
<Class name="org.eclipse.persistence.internal.helper.NonSynchronizedVector"/>
<Class name="org.eclipse.persistence.internal.jpa.CMP3Policy"/>
<Class name="org.eclipse.persistence.internal.oxm.XMLUnmarshaller"/>
<Class name="org.eclipse.persistence.internal.sessions.EmptyRecord"/>
<Class name="org.eclipse.persistence.oxm.XMLMarshaller"/>
<Class name="org.eclipse.persistence.oxm.XMLUnmarshaller"/>
<Class name="org.eclipse.persistence.sdo.helper.ListWrapper"/>
<Class name="org.eclipse.persistence.sessions.interceptors.CacheKeyInterceptor"/>
<!-- optimized cloning -->
<Class name="org.eclipse.persistence.core.queries.CoreAttributeGroup"/>
</Or>
<Bug pattern="CN_IDIOM_NO_SUPER_CALL"/>
</Match>
<Match>
<Or>
<!-- clones by constructor -->
<Class name="org.eclipse.persistence.internal.jpa.metadata.mappings.AccessMethodsMetadata"/>
</Or>
<Bug pattern="CN_IMPLEMENTS_CLONE_BUT_NOT_CLONEABLE"/>
</Match>
<!-- End of Cloneable warnings -->
<!--
JPQL (Hermes) Parser "by design" warnings
-->
<Match>
<Package name="~org.eclipse.persistence.jpa.jpql.*" />
<Bug pattern="ES_COMPARING_STRINGS_WITH_EQ"/>
</Match>
<Match>
<!-- defined in javadoc -->
<Class name="org.eclipse.persistence.jpa.jpql.WordParser"/>
<Method name="startsWithDigit"/>
<Bug pattern="NP_BOOLEAN_RETURN_NULL"/>
</Match>
<Match>
<!-- works with WordParser.startsWithDigit -->
<Class name="org.eclipse.persistence.jpa.jpql.parser.ArithmeticExpressionFactory"/>
<Method name="buildExpression"/>
<Bug pattern="RC_REF_COMPARISON_BAD_PRACTICE_BOOLEAN"/>
</Match>
<Match>
<!-- defined in javadoc -->
<Class name="org.eclipse.persistence.jpa.jpql.AbstractSemanticValidator"/>
<Method name="validateThirdPartyStateFieldPathExpression"/>
<Bug pattern="NP_BOOLEAN_RETURN_NULL"/>
</Match>
<Match>
<Class name="org.eclipse.persistence.jpa.jpql.tools.AbstractContentAssistVisitor"/>
<Method name="isCompoundFunction"/>
<Bug pattern="ES_COMPARING_PARAMETER_STRING_WITH_EQ"/>
</Match>
<Match>
<Class name="org.eclipse.persistence.jpa.jpql.tools.resolver.DeclarationResolver"/>
<Method name="isCollectionIdentificationVariableImp"/>
<Or>
<!-- false positive: case statement does not contain 'break;' -->
<Bug pattern="SF_SWITCH_NO_DEFAULT"/>
<!-- check for return value from the method
which can be overwridden in a subclass -->
<Bug pattern="RCN_REDUNDANT_NULLCHECK_OF_NONNULL_VALUE"/>
</Or>
</Match>
</FindBugsFilter>