This is an automated email from the ASF dual-hosted git repository.
nicoloboschi pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/pulsar.git
The following commit(s) were added to refs/heads/master by this push:
new b880b1d240a [improve][build] Upgrade Spotbugs to a version with JDK 17
compatibility (#19315)
b880b1d240a is described below
commit b880b1d240ade864181935aa360bfca03a5aa67f
Author: Lari Hotari <[email protected]>
AuthorDate: Tue Jan 24 17:05:56 2023 +0200
[improve][build] Upgrade Spotbugs to a version with JDK 17 compatibility
(#19315)
---
pom.xml | 4 +-
pulsar-client-1x-base/pulsar-client-1x/pom.xml | 3 +
.../src/main/resources/findbugsExclude.xml | 29 +-
.../src/main/resources/findbugsExclude.xml | 891 ++++++++++++++++++++-
.../apache/pulsar/common/naming/NamespaceName.java | 2 +
.../org/apache/pulsar/common/naming/TopicName.java | 2 +
.../src/main/resources/findbugsExclude.xml | 20 +
.../src/main/resources/findbugsExclude.xml | 580 ++++++++++++--
.../src/main/resources/findbugsExclude.xml | 41 +-
.../secrets/src/main/resources/findbugsExclude.xml | 10 +
.../src/main/resources/findbugsExclude.xml | 31 +
.../hdfs2/src/main/resources/findbugsExclude.xml | 38 +-
.../hdfs3/src/main/resources/findbugsExclude.xml | 38 +-
.../kafka/src/main/resources/findbugsExclude.xml | 120 ++-
.../core/src/main/resources/findbugsExclude.xml | 16 +
.../src/main/resources/findbugsExclude.xml | 64 +-
.../src/main/resources/findbugsExclude.xml | 167 ++++
tiered-storage/file-system/pom.xml | 2 +-
.../src/main/resources/findbugsExclude.xml | 19 +-
tiered-storage/jcloud/pom.xml | 4 +-
.../jcloud/src/main/resources/findbugsExclude.xml | 48 ++
tiered-storage/pom.xml | 22 -
.../src/main/resources/findbugsExclude.xml | 26 -
23 files changed, 2016 insertions(+), 161 deletions(-)
diff --git a/pom.xml b/pom.xml
index 7bb283f5e29..a2e14fb0c6b 100644
--- a/pom.xml
+++ b/pom.xml
@@ -282,8 +282,8 @@ flexible messaging model and an intuitive client
API.</description>
<wagon-ssh-external.version>3.4.3</wagon-ssh-external.version>
<os-maven-plugin.version>1.7.0</os-maven-plugin.version>
<jacoco-maven-plugin.version>0.8.8</jacoco-maven-plugin.version>
- <spotbugs-maven-plugin.version>4.2.2</spotbugs-maven-plugin.version>
- <spotbugs.version>4.2.2</spotbugs.version>
+ <spotbugs-maven-plugin.version>4.7.3.0</spotbugs-maven-plugin.version>
+ <spotbugs.version>4.7.3</spotbugs.version>
<errorprone.version>2.5.1</errorprone.version>
<errorprone.javac.version>9+181-r4173-1</errorprone.javac.version>
<errorprone-slf4j.version>0.1.4</errorprone-slf4j.version>
diff --git a/pulsar-client-1x-base/pulsar-client-1x/pom.xml
b/pulsar-client-1x-base/pulsar-client-1x/pom.xml
index dfb78032bc8..5be477dde09 100644
--- a/pulsar-client-1x-base/pulsar-client-1x/pom.xml
+++ b/pulsar-client-1x-base/pulsar-client-1x/pom.xml
@@ -75,6 +75,9 @@
<groupId>com.github.spotbugs</groupId>
<artifactId>spotbugs-maven-plugin</artifactId>
<version>${spotbugs-maven-plugin.version}</version>
+ <configuration>
+
<excludeFilterFile>${basedir}/src/main/resources/findbugsExclude.xml</excludeFilterFile>
+ </configuration>
<executions>
<execution>
<id>spotbugs</id>
diff --git a/pulsar-websocket/src/main/resources/findbugsExclude.xml
b/pulsar-client-1x-base/pulsar-client-1x/src/main/resources/findbugsExclude.xml
similarity index 50%
copy from pulsar-websocket/src/main/resources/findbugsExclude.xml
copy to
pulsar-client-1x-base/pulsar-client-1x/src/main/resources/findbugsExclude.xml
index 1121d71df9b..7938e60bf43 100644
--- a/pulsar-websocket/src/main/resources/findbugsExclude.xml
+++
b/pulsar-client-1x-base/pulsar-client-1x/src/main/resources/findbugsExclude.xml
@@ -19,17 +19,30 @@
-->
<FindBugsFilter>
- <!-- these public fields may be used in other modules -->
+ <!-- Ignore violations that were present when the rule was enabled -->
<Match>
- <Class name="org.apache.pulsar.websocket.data.ConsumerMessage"/>
- <Bug pattern="URF_UNREAD_PUBLIC_OR_PROTECTED_FIELD"/>
+ <Class name="org.apache.pulsar.client.api.ClientConfiguration"/>
+ <Method name="getConfigurationData"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
</Match>
<Match>
- <Class
name="org.apache.pulsar.websocket.stats.ProxyTopicStat$ConsumerStats"/>
- <Bug pattern="URF_UNREAD_PUBLIC_OR_PROTECTED_FIELD"/>
+ <Class name="org.apache.pulsar.client.api.ConsumerConfiguration"/>
+ <Method name="getConfigurationData"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
</Match>
<Match>
- <Class
name="org.apache.pulsar.websocket.stats.ProxyTopicStat$ProducerStats"/>
- <Bug pattern="URF_UNREAD_PUBLIC_OR_PROTECTED_FIELD"/>
+ <Class name="org.apache.pulsar.client.api.ProducerConfiguration"/>
+ <Method name="getProducerConfigurationData"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
</Match>
-</FindBugsFilter>
\ No newline at end of file
+ <Match>
+ <Class name="org.apache.pulsar.client.api.ReaderConfiguration"/>
+ <Method name="getReaderConfigurationData"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.v1.ProducerV1Impl"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+</FindBugsFilter>
diff --git a/pulsar-client/src/main/resources/findbugsExclude.xml
b/pulsar-client/src/main/resources/findbugsExclude.xml
index 39ed71bb2d6..e5f8babe841 100644
--- a/pulsar-client/src/main/resources/findbugsExclude.xml
+++ b/pulsar-client/src/main/resources/findbugsExclude.xml
@@ -69,7 +69,7 @@
<Class name="org.apache.pulsar.client.impl.schema.BooleanSchema"/>
<Bug pattern="NP_BOOLEAN_RETURN_NULL"/>
</Match>
-
+
<Match>
<Class name="org.apache.pulsar.client.impl.schema.SchemaInfoImpl"/>
<Bug pattern="EI_EXPOSE_REP"/>
@@ -84,7 +84,7 @@
<Class
name="org.apache.pulsar.client.impl.schema.SchemaInfoImpl$SchemaInfoImplBuilder"/>
<Bug pattern="EI_EXPOSE_REP2"/>
</Match>
-
+
<Match>
<Class name="~org.apache.pulsar.client.impl.ConsumerImpl.*"/>
@@ -120,4 +120,891 @@
<Class name="org.apache.pulsar.client.impl.Hash"/>
<Bug pattern="NM_SAME_SIMPLE_NAME_AS_INTERFACE"/>
</Match>
+
+ <!-- Allow existing EI_EXPOSE_REP and EI_EXPOSE_REP2 warnings -->
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.AbstractBatchMessageContainer"/>
+ <Method name="setProducer"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.auth.AuthenticationDataKeyStoreTls"/>
+ <Method name="getTlsKeyStoreParams"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.auth.AuthenticationDataKeyStoreTls"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.auth.oauth2.protocol.TokenExchangeException"/>
+ <Method name="getError"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.auth.oauth2.protocol.TokenExchangeException"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.AutoClusterFailover"/>
+ <Method name="getPulsarClient"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.AutoClusterFailover"/>
+ <Method name="getSecondary"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.AutoClusterFailover"/>
+ <Method name="getSecondaryAuthentications"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.AutoClusterFailover"/>
+ <Method name="getSecondaryTlsTrustCertsFilePaths"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.AutoClusterFailover"/>
+ <Method name="getSecondaryTlsTrustStorePasswords"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.AutoClusterFailover"/>
+ <Method name="getSecondaryTlsTrustStorePaths"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.AutoClusterFailover"/>
+ <Method name="initialize"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.AutoClusterFailover"/>
+ <Method name="setPulsarClient"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.AutoClusterFailover"/>
+ <Method name="setSecondaryTlsTrustStorePasswords"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.AutoClusterFailover"/>
+ <Method name="setSecondaryTlsTrustStorePaths"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.AutoClusterFailover$AutoClusterFailoverBuilderImpl"/>
+ <Method name="secondary"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.AutoClusterFailover$AutoClusterFailoverBuilderImpl"/>
+ <Method name="secondaryAuthentication"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.AutoClusterFailover$AutoClusterFailoverBuilderImpl"/>
+ <Method name="secondaryTlsTrustCertsFilePath"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.AutoClusterFailover$AutoClusterFailoverBuilderImpl"/>
+ <Method name="secondaryTlsTrustStorePassword"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.AutoClusterFailover$AutoClusterFailoverBuilderImpl"/>
+ <Method name="secondaryTlsTrustStorePath"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.BatchMessageIdImpl"/>
+ <Method name="getAcker"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.BatchMessageIdImpl"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.BinaryProtoLookupService"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.ChunkMessageIdImpl"/>
+ <Method name="getFirstChunkMessageId"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.ChunkMessageIdImpl"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.ClientBuilderImpl"/>
+ <Method name="getClientConfigurationData"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.ClientBuilderImpl"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.ClientCnx"/>
+ <Method name="getPendingRequests"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.ClientCnxIdleState"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.conf.ClientConfigurationData"/>
+ <Method name="getAuthParamMap"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.conf.ClientConfigurationData"/>
+ <Method name="getTlsCiphers"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.conf.ClientConfigurationData"/>
+ <Method name="getTlsProtocols"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.conf.ClientConfigurationData"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.conf.ClientConfigurationData"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.conf.ClientConfigurationData"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.conf.ClientConfigurationData"/>
+ <Method name="setAuthParamMap"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.conf.ClientConfigurationData"/>
+ <Method name="setTlsCiphers"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.conf.ClientConfigurationData"/>
+ <Method name="setTlsProtocols"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.conf.ConsumerConfigurationData"/>
+ <Method name="getDeadLetterPolicy"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.conf.ConsumerConfigurationData"/>
+ <Method name="getMessageCrypto"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.conf.ConsumerConfigurationData"/>
+ <Method name="getSubscriptionProperties"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.conf.ConsumerConfigurationData"/>
+ <Method name="getTopicConfigurations"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.conf.ConsumerConfigurationData"/>
+ <Method name="getTopicNames"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.conf.ConsumerConfigurationData"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.conf.ConsumerConfigurationData"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.conf.ConsumerConfigurationData"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.conf.ConsumerConfigurationData"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.conf.ConsumerConfigurationData"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.conf.ConsumerConfigurationData"/>
+ <Method name="setDeadLetterPolicy"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.conf.ConsumerConfigurationData"/>
+ <Method name="setMessageCrypto"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.conf.ConsumerConfigurationData"/>
+ <Method name="setSubscriptionProperties"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.conf.ConsumerConfigurationData"/>
+ <Method name="setTopicConfigurations"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.conf.ConsumerConfigurationData"/>
+ <Method name="setTopicNames"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.conf.DefaultCryptoKeyReaderConfigurationData"/>
+ <Method name="getPrivateKeys"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.conf.DefaultCryptoKeyReaderConfigurationData"/>
+ <Method name="getPublicKeys"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.conf.DefaultCryptoKeyReaderConfigurationData"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.conf.DefaultCryptoKeyReaderConfigurationData"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.conf.DefaultCryptoKeyReaderConfigurationData"/>
+ <Method name="setPrivateKeys"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.conf.DefaultCryptoKeyReaderConfigurationData"/>
+ <Method name="setPublicKeys"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.conf.ProducerConfigurationData"/>
+ <Method name="getEncryptionKeys"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.conf.ProducerConfigurationData"/>
+ <Method name="getMessageCrypto"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.conf.ProducerConfigurationData"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.conf.ProducerConfigurationData"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.conf.ProducerConfigurationData"/>
+ <Method name="setEncryptionKeys"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.conf.ProducerConfigurationData"/>
+ <Method name="setMessageCrypto"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.conf.ReaderConfigurationData"/>
+ <Method name="getKeyHashRanges"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.conf.ReaderConfigurationData"/>
+ <Method name="getReaderInterceptorList"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.conf.ReaderConfigurationData"/>
+ <Method name="getTopicNames"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.conf.ReaderConfigurationData"/>
+ <Method name="setKeyHashRanges"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.conf.ReaderConfigurationData"/>
+ <Method name="setReaderInterceptorList"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.conf.ReaderConfigurationData"/>
+ <Method name="setTopicNames"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.conf.ReaderConfigurationData"/>
+ <Method name="clone"/>
+ <Bug pattern="MC_OVERRIDABLE_METHOD_CALL_IN_CLONE"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.ConnectionPool"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.ConsumerBase"/>
+ <Method name="subscribeFuture"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.ConsumerBuilderImpl"/>
+ <Method name="getClient"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.ConsumerBuilderImpl"/>
+ <Method name="getConf"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.ConsumerBuilderImpl"/>
+ <Method name="getInterceptorList"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.ConsumerBuilderImpl"/>
+ <Method name="getSchema"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.ConsumerImpl"/>
+ <Method name="getConnectionHandler"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.ConsumerImpl"/>
+ <Method name="getPossibleSendToDeadLetterTopicMessages"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.ConsumerImpl"/>
+ <Method name="getUnAckedMessageTracker"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.ConsumerInterceptors"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.ConsumerStatsRecorderImpl"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.ControlledClusterFailover"/>
+ <Method name="initialize"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.ControlledClusterFailover$ControlledClusterFailoverBuilderImpl"/>
+ <Method name="urlProviderHeader"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.MessageImpl"/>
+ <Method name="getBrokerEntryMetadata"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.MessageImpl"/>
+ <Method name="getCnx"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.MessageImpl"/>
+ <Method name="getDataBuffer"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.MessageImpl"/>
+ <Method name="getMessageBuilder"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.MessageImpl"/>
+ <Method name="getProperties"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.MessageImpl"/>
+ <Method name="getSchemaInternal"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.MessageImpl"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.MessageImpl"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.MessageImpl"/>
+ <Method name="setBrokerEntryMetadata"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.MessagePayloadImpl"/>
+ <Method name="getByteBuf"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.MultiMessageIdImpl"/>
+ <Method name="getMap"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.MultiTopicConsumerStatsRecorderImpl"/>
+ <Method name="getPartitionStats"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.MultiTopicsConsumerImpl"/>
+ <Method name="getUnAckedMessageTracker"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.MultiTopicsReaderImpl"/>
+ <Method name="getMultiTopicsConsumer"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.NonPersistentAcknowledgmentGroupingTracker"/>
+ <Method name="of"/>
+ <Bug pattern="MS_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.PartitionedProducerImpl"/>
+ <Method name="getPartitionsAutoUpdateFuture"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.PartitionedTopicProducerStatsRecorderImpl"/>
+ <Method name="getPartitionStats"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.PersistentAcknowledgmentsGroupingTracker"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.ProducerBase"/>
+ <Method name="getConfiguration"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.ProducerBase"/>
+ <Method name="producerCreatedFuture"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.ProducerBuilderImpl"/>
+ <Method name="getClient"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.ProducerBuilderImpl"/>
+ <Method name="getConf"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.ProducerBuilderImpl"/>
+ <Method name="getInterceptorList"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.ProducerBuilderImpl"/>
+ <Method name="getSchema"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.ProducerBuilderImpl"/>
+ <Method name="schema"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.ProducerImpl"/>
+ <Method name="getConnectionHandler"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.ProducerInterceptors"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.ProducerStatsRecorderImpl"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.ProducerStatsRecorderImpl"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.PulsarClientImpl"/>
+ <Method name="getConfiguration"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.PulsarClientImpl"/>
+ <Method name="getState"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.PulsarClientImpl"/>
+ <Method name="getTcClient"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.PulsarClientImpl$PulsarClientImplBuilder"/>
+ <Method name="conf"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.ReaderBuilderImpl"/>
+ <Method name="getClient"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.ReaderBuilderImpl"/>
+ <Method name="getConf"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.ReaderBuilderImpl"/>
+ <Method name="getSchema"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.ReaderImpl"/>
+ <Method name="getConsumer"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.ResetCursorData"/>
+ <Method name="getProperties"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.ResetCursorData"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.ResetCursorData"/>
+ <Method name="setProperties"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.schema.AutoProduceBytesSchema"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.schema.AutoProduceBytesSchema"/>
+ <Method name="setSchema"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.schema.AvroBaseStructSchema"/>
+ <Method name="getAvroSchema"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.schema.generic.GenericAvroRecord"/>
+ <Method name="getAvroRecord"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.schema.generic.GenericAvroRecord"/>
+ <Method name="getNativeObject"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.schema.generic.GenericProtobufNativeRecord"/>
+ <Method name="getNativeObject"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.schema.generic.GenericProtobufNativeRecord"/>
+ <Method name="getProtobufRecord"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.schema.generic.GenericProtobufNativeSchema"/>
+ <Method name="getProtobufNativeSchema"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.schema.generic.GenericSchemaImpl"/>
+ <Method name="getFields"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.schema.generic.MultiVersionSchemaInfoProvider"/>
+ <Method name="getPulsarClient"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.schema.KeyValueSchemaImpl"/>
+ <Method name="getKeySchema"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.schema.KeyValueSchemaImpl"/>
+ <Method name="getValueSchema"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.schema.KeyValueSchemaImpl"/>
+ <Method name="kvBytes"/>
+ <Bug pattern="MS_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.schema.NativeAvroBytesSchema"/>
+ <Method name="setSchema"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.schema.ProtobufNativeSchema$ProtoBufParsingInfo"/>
+ <Method name="getDefinition"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.schema.ProtobufNativeSchema$ProtoBufParsingInfo"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.schema.ProtobufSchema$ProtoBufParsingInfo"/>
+ <Method name="getDefinition"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.schema.ProtobufSchema$ProtoBufParsingInfo"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.schema.reader.AbstractMultiVersionAvroBaseReader"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.schema.reader.AbstractMultiVersionReader"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.schema.reader.AvroReader"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.schema.reader.AvroReader"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.schema.reader.AvroReader"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.schema.reader.MultiVersionAvroReader"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.schema.SchemaDefinitionBuilderImpl"/>
+ <Method name="withClassLoader"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.schema.SchemaDefinitionBuilderImpl"/>
+ <Method name="withProperties"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.schema.SchemaDefinitionBuilderImpl"/>
+ <Method name="withSchemaReader"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.schema.SchemaDefinitionBuilderImpl"/>
+ <Method name="withSchemaWriter"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.schema.SchemaDefinitionImpl"/>
+ <Method name="getClassLoader"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.schema.SchemaDefinitionImpl"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.schema.SchemaDefinitionImpl"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.schema.SchemaDefinitionImpl"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.schema.SchemaDefinitionImpl"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.schema.StructSchema"/>
+ <Method name="getAvroSchema"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.schema.writer.AvroWriter"/>
+ <Method name="getEncoder"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.schema.writer.JacksonJsonWriter"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.schema.writer.JsonWriter"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.TopicListWatcher"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.transaction.TransactionBuilderImpl"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.transaction.TransactionBuilderImpl"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.transaction.TransactionCoordinatorClientImpl"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.transaction.TransactionImpl"/>
+ <Method name="getClient"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.transaction.TransactionImpl"/>
+ <Method name="getOpFuture"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.transaction.TransactionImpl"/>
+ <Method name="getRegisterPartitionMap"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.transaction.TransactionImpl"/>
+ <Method name="getRegisterSubscriptionMap"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.transaction.TransactionImpl"/>
+ <Method name="getTcClient"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.impl.TransactionMetaStoreHandler"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.TypedMessageBuilderImpl"/>
+ <Method name="getContent"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.TypedMessageBuilderImpl"/>
+ <Method name="getMetadataBuilder"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.TypedMessageBuilderImpl"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.client.impl.TypedMessageBuilderImpl"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.client.util.ExecutorProvider$ExtendedThreadFactory"/>
+ <Method name="getThread"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
</FindBugsFilter>
diff --git
a/pulsar-common/src/main/java/org/apache/pulsar/common/naming/NamespaceName.java
b/pulsar-common/src/main/java/org/apache/pulsar/common/naming/NamespaceName.java
index 0e8fd9b8f07..a804e7b6506 100644
---
a/pulsar-common/src/main/java/org/apache/pulsar/common/naming/NamespaceName.java
+++
b/pulsar-common/src/main/java/org/apache/pulsar/common/naming/NamespaceName.java
@@ -22,6 +22,7 @@ import com.google.common.cache.CacheBuilder;
import com.google.common.cache.CacheLoader;
import com.google.common.cache.LoadingCache;
import com.google.common.util.concurrent.UncheckedExecutionException;
+import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
import java.util.Objects;
import java.util.Optional;
import java.util.concurrent.ExecutionException;
@@ -89,6 +90,7 @@ public class NamespaceName implements ServiceUnitId {
return Optional.of(get(namespace));
}
+ @SuppressFBWarnings("DCN_NULLPOINTER_EXCEPTION")
private NamespaceName(String namespace) {
// Verify it's a proper namespace
// The namespace name is composed of <tenant>/<namespace>
diff --git
a/pulsar-common/src/main/java/org/apache/pulsar/common/naming/TopicName.java
b/pulsar-common/src/main/java/org/apache/pulsar/common/naming/TopicName.java
index 7987a546304..bab9c443cea 100644
--- a/pulsar-common/src/main/java/org/apache/pulsar/common/naming/TopicName.java
+++ b/pulsar-common/src/main/java/org/apache/pulsar/common/naming/TopicName.java
@@ -23,6 +23,7 @@ import com.google.common.cache.CacheBuilder;
import com.google.common.cache.CacheLoader;
import com.google.common.cache.LoadingCache;
import com.google.common.util.concurrent.UncheckedExecutionException;
+import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
import java.util.List;
import java.util.Objects;
import java.util.concurrent.ExecutionException;
@@ -101,6 +102,7 @@ public class TopicName implements ServiceUnitId {
}
}
+ @SuppressFBWarnings("DCN_NULLPOINTER_EXCEPTION")
private TopicName(String completeTopicName) {
try {
// The topic name can be in two different forms, one is fully
qualified topic name,
diff --git a/pulsar-functions/api-java/src/main/resources/findbugsExclude.xml
b/pulsar-functions/api-java/src/main/resources/findbugsExclude.xml
index ddde8120ba5..9638cfcca8d 100644
--- a/pulsar-functions/api-java/src/main/resources/findbugsExclude.xml
+++ b/pulsar-functions/api-java/src/main/resources/findbugsExclude.xml
@@ -19,4 +19,24 @@
-->
<FindBugsFilter>
+ <Match>
+ <Class name="org.apache.pulsar.functions.api.utils.FunctionRecord"/>
+ <Method name="getProperties"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.api.utils.FunctionRecord"/>
+ <Method name="getSchema"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.api.utils.FunctionRecord$FunctionRecordBuilder"/>
+ <Method name="properties"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.api.utils.FunctionRecord$FunctionRecordBuilder"/>
+ <Method name="schema"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
</FindBugsFilter>
\ No newline at end of file
diff --git a/pulsar-functions/instance/src/main/resources/findbugsExclude.xml
b/pulsar-functions/instance/src/main/resources/findbugsExclude.xml
index 5be0700820b..027affbfeb2 100644
--- a/pulsar-functions/instance/src/main/resources/findbugsExclude.xml
+++ b/pulsar-functions/instance/src/main/resources/findbugsExclude.xml
@@ -19,61 +19,527 @@
-->
<FindBugsFilter>
- <!-- these public fields may be used in other modules -->
- <Match>
- <Class
name="org.apache.pulsar.functions.instance.ContextImpl$MessageBuilderImpl"/>
- <Bug pattern="RV_RETURN_VALUE_IGNORED_NO_SIDE_EFFECT"/>
- </Match>
- <Match>
- <Class
name="org.apache.pulsar.functions.instance.JavaInstanceRunnable"/>
- <Bug pattern="IS2_INCONSISTENT_SYNC"/>
- </Match>
- <Match>
- <Class name="org.apache.pulsar.functions.sink.PulsarSink"/>
- <Bug pattern="RV_RETURN_VALUE_IGNORED_NO_SIDE_EFFECT"/>
- </Match>
- <Match>
- <Class
name="org.apache.pulsar.functions.sink.PulsarSink$PulsarSinkEffectivelyOnceProcessor"/>
- <Bug pattern="RV_RETURN_VALUE_IGNORED_NO_SIDE_EFFECT"/>
- </Match>
- <Match>
- <Class
name="org.apache.pulsar.functions.instance.stats.ComponentStatsManager"/>
- <Bug pattern="MS_MUTABLE_ARRAY"/>
- </Match>
- <Match>
- <Class
name="org.apache.pulsar.functions.instance.stats.ComponentStatsManager"/>
- <Bug pattern="EI_EXPOSE_REP2"/>
- </Match>
- <Match>
- <Class
name="org.apache.pulsar.functions.instance.stats.ComponentStatsManager"/>
- <Bug pattern="MS_PKGPROTECT"/>
- </Match>
- <Match>
- <Class
name="org.apache.pulsar.functions.sink.PulsarSink$Crypto$CryptoBuilder"/>
- <Bug pattern="EI_EXPOSE_REP2"/>
- </Match>
- <Match>
- <Class
name="org.apache.pulsar.functions.source.batch.BatchSourceExecutor"/>
- <Bug pattern="UC_USELESS_OBJECT"/>
- </Match>
- <Match>
- <Class name="org.apache.pulsar.functions.source.PulsarSource"/>
- <Bug pattern="SE_BAD_FIELD"/>
- </Match>
- <Match>
- <Class
name="org.apache.pulsar.functions.source.MultiConsumerPulsarSource"/>
- <Bug pattern="SE_BAD_FIELD"/>
- </Match>
- <Match>
- <Class
name="org.apache.pulsar.functions.source.SingleConsumerPulsarSource"/>
- <Bug pattern="SE_BAD_FIELD"/>
- </Match>
- <Match>
- <Class
name="org.apache.pulsar.functions.source.batch.BatchSourceExecutor"/>
- <Bug pattern="RV_RETURN_VALUE_IGNORED_NO_SIDE_EFFECT"/>
- </Match>
- <Match>
- <Class name="org.apache.pulsar.functions.source.SerDeSchema"/>
- <Bug pattern="CN_IDIOM_NO_SUPER_CALL"/>
- </Match>
+ <!-- these public fields may be used in other modules -->
+ <Match>
+ <Class
name="org.apache.pulsar.functions.instance.ContextImpl$MessageBuilderImpl"/>
+ <Bug pattern="RV_RETURN_VALUE_IGNORED_NO_SIDE_EFFECT"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.instance.JavaInstanceRunnable"/>
+ <Bug pattern="IS2_INCONSISTENT_SYNC"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.sink.PulsarSink"/>
+ <Bug pattern="RV_RETURN_VALUE_IGNORED_NO_SIDE_EFFECT"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.sink.PulsarSink$PulsarSinkEffectivelyOnceProcessor"/>
+ <Bug pattern="RV_RETURN_VALUE_IGNORED_NO_SIDE_EFFECT"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.instance.stats.ComponentStatsManager"/>
+ <Bug pattern="MS_MUTABLE_ARRAY"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.instance.stats.ComponentStatsManager"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.instance.stats.ComponentStatsManager"/>
+ <Bug pattern="MS_PKGPROTECT"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.sink.PulsarSink$Crypto$CryptoBuilder"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.source.batch.BatchSourceExecutor"/>
+ <Bug pattern="UC_USELESS_OBJECT"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.source.PulsarSource"/>
+ <Bug pattern="SE_BAD_FIELD"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.source.MultiConsumerPulsarSource"/>
+ <Bug pattern="SE_BAD_FIELD"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.source.SingleConsumerPulsarSource"/>
+ <Bug pattern="SE_BAD_FIELD"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.source.batch.BatchSourceExecutor"/>
+ <Bug pattern="RV_RETURN_VALUE_IGNORED_NO_SIDE_EFFECT"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.source.SerDeSchema"/>
+ <Bug pattern="CN_IDIOM_NO_SUPER_CALL"/>
+ </Match>
+ <!-- Ignore violations that were present when the rule was enabled -->
+ <Match>
+ <Class name="org.apache.pulsar.functions.instance.InstanceConfig"/>
+ <Method name="getAdditionalJavaRuntimeArguments"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.instance.InstanceConfig"/>
+ <Method name="getFunctionAuthenticationSpec"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.instance.InstanceConfig"/>
+ <Method name="getFunctionDetails"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.instance.InstanceConfig"/>
+ <Method name="setAdditionalJavaRuntimeArguments"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.instance.InstanceConfig"/>
+ <Method name="setFunctionAuthenticationSpec"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.instance.InstanceConfig"/>
+ <Method name="setFunctionDetails"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.instance.JavaExecutionResult"/>
+ <Method name="getSystemException"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.instance.JavaExecutionResult"/>
+ <Method name="getUserException"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.instance.JavaExecutionResult"/>
+ <Method name="setSystemException"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.instance.JavaExecutionResult"/>
+ <Method name="setUserException"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.instance.JavaInstance"/>
+ <Method name="getPendingAsyncRequests"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.instance.JavaInstance"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.instance.JavaInstance"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.instance.JavaInstance$AsyncFuncRequest"/>
+ <Method name="getProcessResult"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.instance.JavaInstance$AsyncFuncRequest"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.instance.JavaInstanceRunnable"/>
+ <Method name="getDeathException"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.instance.JavaInstanceRunnable"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.instance.JavaInstanceRunnable"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.instance.JavaInstanceRunnable"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.instance.JavaInstanceRunnable"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.instance.JavaInstanceRunnable"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.instance.OutputRecordSinkRecord"/>
+ <Method name="getSchema"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.instance.stats.FunctionStatsManager"/>
+ <Method name="getLatestSinkExceptions"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.instance.stats.FunctionStatsManager"/>
+ <Method name="getLatestSourceExceptions"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.instance.stats.FunctionStatsManager"/>
+ <Method name="getLatestSystemExceptions"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.instance.stats.FunctionStatsManager"/>
+ <Method name="getLatestUserExceptions"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.instance.stats.FunctionStatsManager"/>
+ <Method name="getSinkExceptions"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.instance.stats.FunctionStatsManager"/>
+ <Method name="getSourceExceptions"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.instance.stats.FunctionStatsManager"/>
+ <Method name="getStatProcessLatency"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.instance.stats.FunctionStatsManager"/>
+ <Method name="getStatProcessLatency1min"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.instance.stats.FunctionStatsManager"/>
+ <Method name="getStatTotalProcessedSuccessfully"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.instance.stats.FunctionStatsManager"/>
+ <Method name="getStatTotalProcessedSuccessfully1min"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.instance.stats.FunctionStatsManager"/>
+ <Method name="getStatTotalRecordsReceived"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.instance.stats.FunctionStatsManager"/>
+ <Method name="getStatTotalRecordsReceived1min"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.instance.stats.FunctionStatsManager"/>
+ <Method name="getStatTotalSysExceptions"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.instance.stats.FunctionStatsManager"/>
+ <Method name="getStatTotalSysExceptions1min"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.instance.stats.FunctionStatsManager"/>
+ <Method name="getStatTotalUserExceptions"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.instance.stats.FunctionStatsManager"/>
+ <Method name="getStatTotalUserExceptions1min"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.instance.stats.FunctionStatsManager"/>
+ <Method name="getStatlastInvocation"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.instance.stats.FunctionStatsManager"/>
+ <Method name="getStatlastInvocationChild"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.instance.stats.FunctionStatsManager"/>
+ <Method name="getSysExceptionRateLimiter"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.instance.stats.FunctionStatsManager"/>
+ <Method name="getSysExceptions"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.instance.stats.FunctionStatsManager"/>
+ <Method name="getUserExceptionRateLimiter"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.instance.stats.FunctionStatsManager"/>
+ <Method name="getUserExceptions"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.instance.stats.FunctionStatsManager"/>
+ <Method name="setLatestSystemExceptions"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.instance.stats.FunctionStatsManager"/>
+ <Method name="setLatestUserExceptions"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.instance.stats.SinkStatsManager"/>
+ <Method name="getLatestSinkExceptions"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.instance.stats.SinkStatsManager"/>
+ <Method name="getLatestSourceExceptions"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.instance.stats.SinkStatsManager"/>
+ <Method name="getLatestSystemExceptions"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.instance.stats.SinkStatsManager"/>
+ <Method name="getLatestUserExceptions"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.instance.stats.SourceStatsManager"/>
+ <Method name="getLatestSourceExceptions"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.instance.stats.SourceStatsManager"/>
+ <Method name="getLatestSystemExceptions"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.sink.PulsarSink"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.sink.PulsarSink"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.sink.PulsarSink"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.sink.PulsarSink"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.sink.PulsarSinkConfig"/>
+ <Method name="getProducerConfig"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.sink.PulsarSinkConfig"/>
+ <Method name="getSchemaProperties"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.sink.PulsarSinkConfig"/>
+ <Method name="setProducerConfig"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.sink.PulsarSinkConfig"/>
+ <Method name="setSchemaProperties"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.source.batch.BatchSourceExecutor"/>
+ <Method name="open"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.source.MultiConsumerPulsarSource"/>
+ <Method name="getInputConsumers"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.source.MultiConsumerPulsarSource"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.source.MultiConsumerPulsarSource"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.source.MultiConsumerPulsarSourceConfig"/>
+ <Method name="getTopicSchema"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.source.MultiConsumerPulsarSourceConfig"/>
+ <Method name="setTopicSchema"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.source.PulsarFunctionRecord"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.source.PulsarRecord"/>
+ <Method name="getSchema"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.source.PulsarRecord$PulsarRecordBuilder"/>
+ <Method name="schema"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.source.PulsarSourceConsumerConfig$PulsarSourceConsumerConfigBuilder"/>
+ <Method name="consumerProperties"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.source.PulsarSourceConsumerConfig$PulsarSourceConsumerConfigBuilder"/>
+ <Method name="schema"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.source.SingleConsumerPulsarSource"/>
+ <Method name="getInputConsumers"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.source.SingleConsumerPulsarSource"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.source.SingleConsumerPulsarSource"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.source.SingleConsumerPulsarSource"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.source.SingleConsumerPulsarSourceConfig"/>
+ <Method name="getConsumerConfig"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.source.SingleConsumerPulsarSourceConfig"/>
+ <Method name="setConsumerConfig"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.windowing.triggers.CountTriggerPolicy"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.windowing.triggers.TimeTriggerPolicy"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.windowing.triggers.WatermarkCountTriggerPolicy"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.windowing.triggers.WatermarkCountTriggerPolicy"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.windowing.triggers.WatermarkTimeTriggerPolicy"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.windowing.triggers.WatermarkTimeTriggerPolicy"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.windowing.WaterMarkEventGenerator"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.windowing.WaterMarkEventGenerator"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.windowing.WindowImpl"/>
+ <Method name="get"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.windowing.WindowImpl"/>
+ <Method name="getExpired"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.windowing.WindowImpl"/>
+ <Method name="getNew"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.windowing.WindowImpl"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.windowing.WindowImpl"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.windowing.WindowImpl"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.windowing.WindowManager"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.windowing.WindowManager"/>
+ <Method name="setEvictionPolicy"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
</FindBugsFilter>
diff --git a/pulsar-functions/localrun/src/main/resources/findbugsExclude.xml
b/pulsar-functions/localrun/src/main/resources/findbugsExclude.xml
index 719b711d656..ad183eb5d94 100644
--- a/pulsar-functions/localrun/src/main/resources/findbugsExclude.xml
+++ b/pulsar-functions/localrun/src/main/resources/findbugsExclude.xml
@@ -19,8 +19,39 @@
-->
<FindBugsFilter>
- <Match>
- <Class name="org.apache.pulsar.functions.LocalRunner"/>
- <Bug pattern="REC_CATCH_EXCEPTION"/>
- </Match>
-</FindBugsFilter>
\ No newline at end of file
+ <Match>
+ <Class name="org.apache.pulsar.functions.LocalRunner"/>
+ <Bug pattern="REC_CATCH_EXCEPTION"/>
+ </Match>
+ <!-- Ignore violations that were present when the rule was enabled -->
+ <Match>
+ <Class name="org.apache.pulsar.functions.LocalRunner"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.LocalRunner"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.LocalRunner"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.LocalRunner$LocalRunnerBuilder"/>
+ <Method name="functionConfig"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.LocalRunner$LocalRunnerBuilder"/>
+ <Method name="sinkConfig"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.functions.LocalRunner$LocalRunnerBuilder"/>
+ <Method name="sourceConfig"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+</FindBugsFilter>
diff --git a/pulsar-functions/secrets/src/main/resources/findbugsExclude.xml
b/pulsar-functions/secrets/src/main/resources/findbugsExclude.xml
index ddde8120ba5..0cab8ae6a41 100644
--- a/pulsar-functions/secrets/src/main/resources/findbugsExclude.xml
+++ b/pulsar-functions/secrets/src/main/resources/findbugsExclude.xml
@@ -19,4 +19,14 @@
-->
<FindBugsFilter>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.secretsproviderconfigurator.NameAndConfigBasedSecretsProviderConfigurator"/>
+ <Method name="getSecretsProviderConfig"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.functions.secretsproviderconfigurator.NameAndConfigBasedSecretsProviderConfigurator"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
</FindBugsFilter>
\ No newline at end of file
diff --git
a/pulsar-io/batch-data-generator/src/main/resources/findbugsExclude.xml
b/pulsar-io/batch-data-generator/src/main/resources/findbugsExclude.xml
index 07f4609cfff..0b1652ef628 100644
--- a/pulsar-io/batch-data-generator/src/main/resources/findbugsExclude.xml
+++ b/pulsar-io/batch-data-generator/src/main/resources/findbugsExclude.xml
@@ -19,4 +19,35 @@
-->
<FindBugsFilter>
+ <!-- Ignore violations that were present when the rule was enabled -->
+ <Match>
+ <Class name="org.apache.pulsar.io.batchdatagenerator.Person"/>
+ <Method name="getAddress"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.io.batchdatagenerator.Person"/>
+ <Method name="getCompany"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.io.batchdatagenerator.Person"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.io.batchdatagenerator.Person"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.io.batchdatagenerator.Person"/>
+ <Method name="setAddress"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.io.batchdatagenerator.Person"/>
+ <Method name="setCompany"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
</FindBugsFilter>
diff --git a/pulsar-io/hdfs2/src/main/resources/findbugsExclude.xml
b/pulsar-io/hdfs2/src/main/resources/findbugsExclude.xml
index ddde8120ba5..980349c4d8d 100644
--- a/pulsar-io/hdfs2/src/main/resources/findbugsExclude.xml
+++ b/pulsar-io/hdfs2/src/main/resources/findbugsExclude.xml
@@ -19,4 +19,40 @@
-->
<FindBugsFilter>
-</FindBugsFilter>
\ No newline at end of file
+ <!-- Ignore violations that were present when the rule was enabled -->
+ <Match>
+ <Class name="org.apache.pulsar.io.hdfs2.HdfsResources"/>
+ <Method name="getConfiguration"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.io.hdfs2.HdfsResources"/>
+ <Method name="getFileSystem"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.io.hdfs2.HdfsResources"/>
+ <Method name="getUserGroupInformation"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.io.hdfs2.HdfsResources"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.io.hdfs2.HdfsResources"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.io.hdfs2.HdfsResources"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.io.hdfs2.sink.HdfsSyncThread"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+</FindBugsFilter>
diff --git a/pulsar-io/hdfs3/src/main/resources/findbugsExclude.xml
b/pulsar-io/hdfs3/src/main/resources/findbugsExclude.xml
index ddde8120ba5..2dce75b3451 100644
--- a/pulsar-io/hdfs3/src/main/resources/findbugsExclude.xml
+++ b/pulsar-io/hdfs3/src/main/resources/findbugsExclude.xml
@@ -19,4 +19,40 @@
-->
<FindBugsFilter>
-</FindBugsFilter>
\ No newline at end of file
+ <!-- Ignore violations that were present when the rule was enabled -->
+ <Match>
+ <Class name="org.apache.pulsar.io.hdfs3.HdfsResources"/>
+ <Method name="getConfiguration"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.io.hdfs3.HdfsResources"/>
+ <Method name="getFileSystem"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.io.hdfs3.HdfsResources"/>
+ <Method name="getUserGroupInformation"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.io.hdfs3.HdfsResources"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.io.hdfs3.HdfsResources"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.io.hdfs3.HdfsResources"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.io.hdfs3.sink.HdfsSyncThread"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+</FindBugsFilter>
diff --git a/pulsar-io/kafka/src/main/resources/findbugsExclude.xml
b/pulsar-io/kafka/src/main/resources/findbugsExclude.xml
index f49ff86c90c..3fc8f67c864 100644
--- a/pulsar-io/kafka/src/main/resources/findbugsExclude.xml
+++ b/pulsar-io/kafka/src/main/resources/findbugsExclude.xml
@@ -1,22 +1,98 @@
-<!--
-
- 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.
-
--->
-<FindBugsFilter>
-</FindBugsFilter>
\ No newline at end of file
+<!--
+
+ 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.
+
+-->
+<FindBugsFilter>
+ <!-- Ignore violations that were present when the rule was enabled -->
+ <Match>
+ <Class name="org.apache.pulsar.io.kafka.BytesWithKafkaSchema"/>
+ <Method name="getValue"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.io.kafka.BytesWithKafkaSchema"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.io.kafka.KafkaAbstractSource$KafkaRecord"/>
+ <Method name="getCompletableFuture"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.io.kafka.KafkaAbstractSource$KafkaRecord"/>
+ <Method name="getProperties"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.io.kafka.KafkaAbstractSource$KafkaRecord"/>
+ <Method name="getSchema"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.io.kafka.KafkaAbstractSource$KafkaRecord"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.io.kafka.KafkaAbstractSource$KafkaRecord"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.io.kafka.KafkaAbstractSource$KeyValueKafkaRecord"/>
+ <Method name="getKeySchema"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.io.kafka.KafkaAbstractSource$KeyValueKafkaRecord"/>
+ <Method name="getValueSchema"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.io.kafka.KafkaAbstractSource$KeyValueKafkaRecord"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.io.kafka.KafkaAbstractSource$KeyValueKafkaRecord"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.io.kafka.KafkaSinkConfig"/>
+ <Method name="getProducerConfigProperties"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.io.kafka.KafkaSinkConfig"/>
+ <Method name="setProducerConfigProperties"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.io.kafka.KafkaSourceConfig"/>
+ <Method name="getConsumerConfigProperties"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.io.kafka.KafkaSourceConfig"/>
+ <Method name="setConsumerConfigProperties"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+</FindBugsFilter>
diff --git
a/pulsar-package-management/core/src/main/resources/findbugsExclude.xml
b/pulsar-package-management/core/src/main/resources/findbugsExclude.xml
index 07f4609cfff..3a2e998dce9 100644
--- a/pulsar-package-management/core/src/main/resources/findbugsExclude.xml
+++ b/pulsar-package-management/core/src/main/resources/findbugsExclude.xml
@@ -19,4 +19,20 @@
-->
<FindBugsFilter>
+ <!-- Ignore violations that were present when the rule was enabled -->
+ <Match>
+ <Class
name="org.apache.pulsar.packages.management.core.impl.DefaultPackagesStorageConfiguration"/>
+ <Method name="getProperties"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.packages.management.core.impl.DefaultPackagesStorageConfiguration"/>
+ <Method name="setProperty"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.packages.management.core.impl.PackagesManagementImpl"/>
+ <Method name="initialize"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
</FindBugsFilter>
diff --git
a/pulsar-transaction/coordinator/src/main/resources/findbugsExclude.xml
b/pulsar-transaction/coordinator/src/main/resources/findbugsExclude.xml
index 32fd17d259e..a81fce11f4d 100644
--- a/pulsar-transaction/coordinator/src/main/resources/findbugsExclude.xml
+++ b/pulsar-transaction/coordinator/src/main/resources/findbugsExclude.xml
@@ -19,8 +19,64 @@
-->
<FindBugsFilter>
- <Match>
- <Class name="~org.apache.pulsar.transaction.coordinator.proto.*"/>
- <Bug pattern="UUF_UNUSED_FIELD"/>
- </Match>
+ <Match>
+ <Class name="~org.apache.pulsar.transaction.coordinator.proto.*"/>
+ <Bug pattern="UUF_UNUSED_FIELD"/>
+ </Match>
+ <!-- Ignore violations that were present when the rule was enabled -->
+ <Match>
+ <Class
name="org.apache.pulsar.transaction.coordinator.impl.MLTransactionLogImpl"/>
+ <Method name="getManagedLedger"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.transaction.coordinator.impl.MLTransactionLogImpl"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.transaction.coordinator.impl.MLTransactionLogImpl"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.transaction.coordinator.impl.MLTransactionLogImpl"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.transaction.coordinator.impl.MLTransactionMetadataStore"/>
+ <Method name="getMetadataStoreStats"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.transaction.coordinator.impl.MLTransactionMetadataStore"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.transaction.coordinator.impl.MLTransactionMetadataStore"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.transaction.coordinator.impl.TxnLogBufferedWriter"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.transaction.coordinator.impl.TxnLogBufferedWriterMetricsStats"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.transaction.coordinator.proto.BatchedTransactionMetadataEntry"/>
+ <Method name="parseFrom"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.transaction.coordinator.proto.TransactionMetadataEntry"/>
+ <Method name="parseFrom"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
</FindBugsFilter>
diff --git a/pulsar-websocket/src/main/resources/findbugsExclude.xml
b/pulsar-websocket/src/main/resources/findbugsExclude.xml
index 1121d71df9b..b7f6b0bf31d 100644
--- a/pulsar-websocket/src/main/resources/findbugsExclude.xml
+++ b/pulsar-websocket/src/main/resources/findbugsExclude.xml
@@ -32,4 +32,171 @@
<Class
name="org.apache.pulsar.websocket.stats.ProxyTopicStat$ProducerStats"/>
<Bug pattern="URF_UNREAD_PUBLIC_OR_PROTECTED_FIELD"/>
</Match>
+
+ <!-- ignore existing violations when the rule was enabled -->
+ <Match>
+ <Class name="org.apache.pulsar.websocket.AbstractWebSocketHandler"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.websocket.admin.WebSocketWebResource"/>
+ <Method name="authData"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.websocket.data.ProducerAcks"/>
+ <Method name="getMessagePublishResults"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.websocket.data.ProducerAcks"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.websocket.data.ProducerAcks"/>
+ <Method name="setMessagePublishResults"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.websocket.data.ProducerMessages"/>
+ <Method name="getMessages"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.websocket.data.ProducerMessages"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.websocket.data.ProducerMessages"/>
+ <Method name="setMessages"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.websocket.ProducerHandler"/>
+ <Method name="onWebSocketText"/>
+ <Bug pattern="DCN_NULLPOINTER_EXCEPTION"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.websocket.ProducerHandler"/>
+ <Method name="getPublishLatencyStatsUSec"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.websocket.ProducerHandler"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.websocket.service.ProxyServer"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.websocket.service.WebSocketProxyConfiguration"/>
+ <Method name="getAuthenticationProviders"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.websocket.service.WebSocketProxyConfiguration"/>
+ <Method name="getProperties"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.websocket.service.WebSocketProxyConfiguration"/>
+ <Method name="getSuperUserRoles"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.websocket.service.WebSocketProxyConfiguration"/>
+ <Method name="getWebServiceTlsCiphers"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.websocket.service.WebSocketProxyConfiguration"/>
+ <Method name="getWebServiceTlsProtocols"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.websocket.service.WebSocketProxyConfiguration"/>
+ <Method name="setAuthenticationProviders"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.websocket.service.WebSocketProxyConfiguration"/>
+ <Method name="setProperties"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.websocket.service.WebSocketProxyConfiguration"/>
+ <Method name="setSuperUserRoles"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.websocket.service.WebSocketProxyConfiguration"/>
+ <Method name="setWebServiceTlsCiphers"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.pulsar.websocket.service.WebSocketProxyConfiguration"/>
+ <Method name="setWebServiceTlsProtocols"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.websocket.stats.ProxyStats"/>
+ <Method name="getMetrics"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.websocket.stats.ProxyStats"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.websocket.WebSocketConsumerServlet"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.websocket.WebSocketPingPongServlet"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.websocket.WebSocketProducerServlet"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.websocket.WebSocketReaderServlet"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.websocket.WebSocketService"/>
+ <Method name="getConfig"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.websocket.WebSocketService"/>
+ <Method name="getConsumers"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.websocket.WebSocketService"/>
+ <Method name="getProducers"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.websocket.WebSocketService"/>
+ <Method name="getReaders"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class name="org.apache.pulsar.websocket.WebSocketService"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
</FindBugsFilter>
\ No newline at end of file
diff --git a/tiered-storage/file-system/pom.xml
b/tiered-storage/file-system/pom.xml
index 04d67c33e55..117267305e4 100644
--- a/tiered-storage/file-system/pom.xml
+++ b/tiered-storage/file-system/pom.xml
@@ -152,7 +152,7 @@
<artifactId>spotbugs-maven-plugin</artifactId>
<version>${spotbugs-maven-plugin.version}</version>
<configuration>
-
<excludeFilterFile>${basedir}/../src/main/resources/findbugsExclude.xml</excludeFilterFile>
+
<excludeFilterFile>${basedir}/src/main/resources/findbugsExclude.xml</excludeFilterFile>
</configuration>
<executions>
<execution>
diff --git a/pulsar-websocket/src/main/resources/findbugsExclude.xml
b/tiered-storage/file-system/src/main/resources/findbugsExclude.xml
similarity index 58%
copy from pulsar-websocket/src/main/resources/findbugsExclude.xml
copy to tiered-storage/file-system/src/main/resources/findbugsExclude.xml
index 1121d71df9b..051f0e68e25 100644
--- a/pulsar-websocket/src/main/resources/findbugsExclude.xml
+++ b/tiered-storage/file-system/src/main/resources/findbugsExclude.xml
@@ -19,17 +19,20 @@
-->
<FindBugsFilter>
- <!-- these public fields may be used in other modules -->
+ <!-- Ignore violations that were present when the rule was enabled -->
<Match>
- <Class name="org.apache.pulsar.websocket.data.ConsumerMessage"/>
- <Bug pattern="URF_UNREAD_PUBLIC_OR_PROTECTED_FIELD"/>
+ <Class
name="org.apache.bookkeeper.mledger.offload.filesystem.impl.FileSystemManagedLedgerOffloader"/>
+ <Method name="getOffloadPolicies"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
</Match>
<Match>
- <Class
name="org.apache.pulsar.websocket.stats.ProxyTopicStat$ConsumerStats"/>
- <Bug pattern="URF_UNREAD_PUBLIC_OR_PROTECTED_FIELD"/>
+ <Class
name="org.apache.bookkeeper.mledger.offload.filesystem.impl.FileSystemManagedLedgerOffloader"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
</Match>
<Match>
- <Class
name="org.apache.pulsar.websocket.stats.ProxyTopicStat$ProducerStats"/>
- <Bug pattern="URF_UNREAD_PUBLIC_OR_PROTECTED_FIELD"/>
+ <Class
name="org.apache.bookkeeper.mledger.offload.filesystem.impl.FileSystemManagedLedgerOffloader"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
</Match>
-</FindBugsFilter>
\ No newline at end of file
+</FindBugsFilter>
diff --git a/tiered-storage/jcloud/pom.xml b/tiered-storage/jcloud/pom.xml
index 4936d3eaf86..c1c1ca76f10 100644
--- a/tiered-storage/jcloud/pom.xml
+++ b/tiered-storage/jcloud/pom.xml
@@ -115,7 +115,7 @@
</exclusions>
<scope>runtime</scope>
</dependency>
-
+
<dependency>
<groupId>com.sun.activation</groupId>
<artifactId>javax.activation</artifactId>
@@ -135,7 +135,7 @@
<artifactId>spotbugs-maven-plugin</artifactId>
<version>${spotbugs-maven-plugin.version}</version>
<configuration>
-
<excludeFilterFile>${basedir}/../src/main/resources/findbugsExclude.xml</excludeFilterFile>
+
<excludeFilterFile>${basedir}/src/main/resources/findbugsExclude.xml</excludeFilterFile>
</configuration>
<executions>
<execution>
diff --git a/tiered-storage/jcloud/src/main/resources/findbugsExclude.xml
b/tiered-storage/jcloud/src/main/resources/findbugsExclude.xml
new file mode 100644
index 00000000000..a8a9b9aae92
--- /dev/null
+++ b/tiered-storage/jcloud/src/main/resources/findbugsExclude.xml
@@ -0,0 +1,48 @@
+<!--
+
+ 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.
+
+-->
+<FindBugsFilter>
+ <!-- Ignore violations that were present when the rule was enabled -->
+ <Match>
+ <Class
name="org.apache.bookkeeper.mledger.offload.jcloud.impl.BlobStoreBackedInputStreamImpl"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.bookkeeper.mledger.offload.jcloud.impl.BlobStoreManagedLedgerOffloader"/>
+ <Method name="streamingOffload"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.bookkeeper.mledger.offload.jcloud.impl.BufferedOffloadStream"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.bookkeeper.mledger.offload.jcloud.provider.TieredStorageConfiguration"/>
+ <Method name="getConfigProperties"/>
+ <Bug pattern="EI_EXPOSE_REP"/>
+ </Match>
+ <Match>
+ <Class
name="org.apache.bookkeeper.mledger.offload.jcloud.provider.TieredStorageConfiguration"/>
+ <Method name="<init>"/>
+ <Bug pattern="EI_EXPOSE_REP2"/>
+ </Match>
+</FindBugsFilter>
diff --git a/tiered-storage/pom.xml b/tiered-storage/pom.xml
index ac5d21a990b..cc55203a234 100644
--- a/tiered-storage/pom.xml
+++ b/tiered-storage/pom.xml
@@ -40,26 +40,4 @@
<module>jcloud</module>
<module>file-system</module>
</modules>
-
- <build>
- <plugins>
- <plugin>
- <groupId>com.github.spotbugs</groupId>
- <artifactId>spotbugs-maven-plugin</artifactId>
- <version>${spotbugs-maven-plugin.version}</version>
- <configuration>
-
<excludeFilterFile>${basedir}/src/main/resources/findbugsExclude.xml</excludeFilterFile>
- </configuration>
- <executions>
- <execution>
- <id>spotbugs</id>
- <phase>verify</phase>
- <goals>
- <goal>check</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
</project>
diff --git a/tiered-storage/src/main/resources/findbugsExclude.xml
b/tiered-storage/src/main/resources/findbugsExclude.xml
deleted file mode 100644
index 5a9926c0e81..00000000000
--- a/tiered-storage/src/main/resources/findbugsExclude.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<!--
-
- 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.
-
--->
-<FindBugsFilter>
- <Match>
- <Class name="~org.apache.zookeeper.*"/>
- <Bug pattern="DM_EXIT,DM_DEFAULT_ENCODING"/>
- </Match>
-</FindBugsFilter>