SpotBugs Report

Project Information

Project: ActiveMQ :: Client

SpotBugs version: 4.8.3

Code analyzed:



Metrics

45589 lines of code analyzed, in 885 classes, in 40 packages.

Metric Total Density*
High Priority Warnings 33 0.72
Medium Priority Warnings 693 15.20
Total Warnings 726 15.92

(* Defects per Thousand lines of non-commenting source statements)



Contents

Summary

Warning Type Number
Bad practice Warnings 105
Correctness Warnings 6
Experimental Warnings 1
Internationalization Warnings 16
Malicious code vulnerability Warnings 484
Multithreaded correctness Warnings 23
Performance Warnings 56
Dodgy code Warnings 35
Total 726

Warnings

Click on a warning row to see full context information.

Bad practice Warnings

Code Warning
BC Equals method for org.apache.activemq.filter.MultiExpressionEvaluator$CacheExpression assumes the argument is of type MultiExpressionEvaluator$CacheExpression
BC Equals method for org.apache.activemq.openwire.OpenWireFormat assumes the argument is of type OpenWireFormat
CT Exception thrown in class org.apache.activemq.ActiveMQConnectionConsumer at new org.apache.activemq.ActiveMQConnectionConsumer(ActiveMQConnection, ServerSessionPool, ConsumerInfo) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks.
CT Exception thrown in class org.apache.activemq.ActiveMQConnectionFactory at new org.apache.activemq.ActiveMQConnectionFactory() will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks.
CT Exception thrown in class org.apache.activemq.ActiveMQConnectionFactory at new org.apache.activemq.ActiveMQConnectionFactory(String) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks.
CT Exception thrown in class org.apache.activemq.ActiveMQConnectionFactory at new org.apache.activemq.ActiveMQConnectionFactory(String, String, String) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks.
CT Exception thrown in class org.apache.activemq.ActiveMQConnectionFactory at new org.apache.activemq.ActiveMQConnectionFactory(String, String, URI) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks.
CT Exception thrown in class org.apache.activemq.ActiveMQConnectionFactory at new org.apache.activemq.ActiveMQConnectionFactory(URI) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks.
CT Exception thrown in class org.apache.activemq.ActiveMQMessageConsumer at new org.apache.activemq.ActiveMQMessageConsumer(ActiveMQSession, ConsumerId, ActiveMQDestination, String, String, int, int, boolean, boolean, boolean, MessageListener) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks.
CT Exception thrown in class org.apache.activemq.ActiveMQMessageProducer at new org.apache.activemq.ActiveMQMessageProducer(ActiveMQSession, ProducerId, ActiveMQDestination, int) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks.
CT Exception thrown in class org.apache.activemq.ActiveMQQueueBrowser at new org.apache.activemq.ActiveMQQueueBrowser(ActiveMQSession, ConsumerId, ActiveMQDestination, String, boolean) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks.
CT Exception thrown in class org.apache.activemq.ActiveMQSession at new org.apache.activemq.ActiveMQSession(ActiveMQConnection, SessionId, int, boolean) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks.
CT Exception thrown in class org.apache.activemq.ActiveMQSession at new org.apache.activemq.ActiveMQSession(ActiveMQConnection, SessionId, int, boolean, boolean) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks.
CT Exception thrown in class org.apache.activemq.AdvisoryConsumer at new org.apache.activemq.AdvisoryConsumer(ActiveMQConnection, ConsumerId) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks.
CT Exception thrown in class org.apache.activemq.advisory.ConsumerEventSource at new org.apache.activemq.advisory.ConsumerEventSource(Connection, Destination) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks.
CT Exception thrown in class org.apache.activemq.advisory.ProducerEventSource at new org.apache.activemq.advisory.ProducerEventSource(Connection, Destination) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks.
CT Exception thrown in class org.apache.activemq.blob.FileSystemBlobStrategy at new org.apache.activemq.blob.FileSystemBlobStrategy(BlobTransferPolicy) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks.
CT Exception thrown in class org.apache.activemq.command.ActiveMQDestination at new org.apache.activemq.command.ActiveMQDestination(String) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks.
CT Exception thrown in class org.apache.activemq.command.ConsumerId at new org.apache.activemq.command.ConsumerId(String) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks.
CT Exception thrown in class org.apache.activemq.command.MessageId at new org.apache.activemq.command.MessageId(String) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks.
CT Exception thrown in class org.apache.activemq.command.ProducerId at new org.apache.activemq.command.ProducerId(String) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks.
CT Exception thrown in class org.apache.activemq.command.XATransactionId at new org.apache.activemq.command.XATransactionId(byte[]) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks.
CT Exception thrown in class org.apache.activemq.filter.FunctionCallExpression at new org.apache.activemq.filter.FunctionCallExpression(String, List) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks.
CT Exception thrown in class org.apache.activemq.selector.SelectorParser at new org.apache.activemq.selector.SelectorParser(InputStream) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks.
CT Exception thrown in class org.apache.activemq.selector.SelectorParser at new org.apache.activemq.selector.SelectorParser(InputStream, String) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks.
CT Exception thrown in class org.apache.activemq.selector.SelectorParserTokenManager at new org.apache.activemq.selector.SelectorParserTokenManager(SimpleCharStream, int) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks.
CT Exception thrown in class org.apache.activemq.state.ConnectionState at new org.apache.activemq.state.ConnectionState(ConnectionInfo) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks.
CT Exception thrown in class org.apache.activemq.transport.nio.NIOBufferedInputStream at new org.apache.activemq.transport.nio.NIOBufferedInputStream(ReadableByteChannel) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks.
CT Exception thrown in class org.apache.activemq.transport.nio.NIOBufferedInputStream at new org.apache.activemq.transport.nio.NIOBufferedInputStream(ReadableByteChannel, int) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks.
CT Exception thrown in class org.apache.activemq.transport.nio.NIOOutputStream at new org.apache.activemq.transport.nio.NIOOutputStream(WritableByteChannel) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks.
CT Exception thrown in class org.apache.activemq.transport.nio.NIOOutputStream at new org.apache.activemq.transport.nio.NIOOutputStream(WritableByteChannel, int) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks.
CT Exception thrown in class org.apache.activemq.transport.nio.SelectorWorker at new org.apache.activemq.transport.nio.SelectorWorker(SelectorManager) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks.
CT Exception thrown in class org.apache.activemq.transport.reliable.ReliableTransport at new org.apache.activemq.transport.reliable.ReliableTransport(Transport, UdpTransport) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks.
CT Exception thrown in class org.apache.activemq.transport.tcp.TcpBufferedInputStream at new org.apache.activemq.transport.tcp.TcpBufferedInputStream(InputStream) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks.
CT Exception thrown in class org.apache.activemq.transport.tcp.TcpBufferedInputStream at new org.apache.activemq.transport.tcp.TcpBufferedInputStream(InputStream, int) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks.
CT Exception thrown in class org.apache.activemq.transport.tcp.TcpBufferedOutputStream at new org.apache.activemq.transport.tcp.TcpBufferedOutputStream(OutputStream) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks.
CT Exception thrown in class org.apache.activemq.transport.tcp.TcpBufferedOutputStream at new org.apache.activemq.transport.tcp.TcpBufferedOutputStream(OutputStream, int) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks.
CT Exception thrown in class org.apache.activemq.transport.tcp.TcpTransport at new org.apache.activemq.transport.tcp.TcpTransport(WireFormat, SocketFactory, URI, URI) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks.
CT Exception thrown in class org.apache.activemq.transport.tcp.TcpTransport$InitBuffer at new org.apache.activemq.transport.tcp.TcpTransport$InitBuffer(int, ByteBuffer) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks.
CT Exception thrown in class org.apache.activemq.transport.udp.CommandChannelSupport at new org.apache.activemq.transport.udp.CommandChannelSupport(UdpTransport, OpenWireFormat, int, SocketAddress, DatagramHeaderMarshaller) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks.
CT Exception thrown in class org.apache.activemq.transport.udp.UdpTransport at new org.apache.activemq.transport.udp.UdpTransport(OpenWireFormat, URI) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks.
DE org.apache.activemq.transport.nio.NIOSSLTransport.doHandshake() might ignore java.lang.Exception
Eq org.apache.activemq.command.BrokerId.equals(Object) fails for subtypes
Eq org.apache.activemq.command.ConnectionId.equals(Object) fails for subtypes
Eq org.apache.activemq.command.ConsumerId.equals(Object) fails for subtypes
Eq org.apache.activemq.command.LocalTransactionId.equals(Object) fails for subtypes
Eq org.apache.activemq.command.ProducerId.equals(Object) fails for subtypes
Eq org.apache.activemq.command.SessionId.equals(Object) fails for subtypes
Eq org.apache.activemq.command.XATransactionId.equals(Object) fails for subtypes
HE org.apache.activemq.ActiveMQPrefetchPolicy defines equals and uses Object.hashCode()
Nm The class name org.apache.activemq.Message shadows the simple name of implemented interface javax.jms.Message
Nm The class name org.apache.activemq.filter.FunctionCallExpression$functionRegistration doesn't start with an upper case letter
Nm The class name org.apache.activemq.filter.FunctionCallExpression$invalidFunctionExpressionException doesn't start with an upper case letter
Nm The class name org.apache.activemq.filter.function.inListFunction doesn't start with an upper case letter
Nm The class name org.apache.activemq.filter.function.makeListFunction doesn't start with an upper case letter
Nm The class name org.apache.activemq.filter.function.regexMatchFunction doesn't start with an upper case letter
Nm The class name org.apache.activemq.filter.function.replaceFunction doesn't start with an upper case letter
Nm The class name org.apache.activemq.filter.function.splitFunction doesn't start with an upper case letter
Nm The method name org.apache.activemq.selector.SelectorParser.JmsSelector() doesn't start with a lower case letter
Nm The method name org.apache.activemq.selector.SelectorParser.ReInit(InputStream) doesn't start with a lower case letter
Nm The method name org.apache.activemq.selector.SelectorParser.ReInit(InputStream, String) doesn't start with a lower case letter
Nm The method name org.apache.activemq.selector.SelectorParser.ReInit(Reader) doesn't start with a lower case letter
Nm The method name org.apache.activemq.selector.SelectorParser.ReInit(SelectorParserTokenManager) doesn't start with a lower case letter
Nm The method name org.apache.activemq.selector.SelectorParserTokenManager.ReInit(SimpleCharStream) doesn't start with a lower case letter
Nm The method name org.apache.activemq.selector.SelectorParserTokenManager.ReInit(SimpleCharStream, int) doesn't start with a lower case letter
Nm The method name org.apache.activemq.selector.SelectorParserTokenManager.SwitchTo(int) doesn't start with a lower case letter
Nm The method name org.apache.activemq.selector.TokenMgrError.LexicalError(boolean, int, int, int, String, char) doesn't start with a lower case letter
OS org.apache.activemq.command.ActiveMQObjectMessage.getObject() may fail to close stream
OS org.apache.activemq.command.XATransactionId.initFromEncodedBytes() may fail to close stream
OS org.apache.activemq.command.XATransactionId.stringFormArj(StringBuffer, byte[]) may fail to close stream
OS org.apache.activemq.wireformat.ObjectStreamWireFormat.marshal(Object, DataOutput) may fail to close stream
PA Primitive field org.apache.activemq.command.JournalTransaction.transactionId is public and set from inside the class, which makes it too exposed. Consider making it private to limit external accessibility.
PA Primitive field org.apache.activemq.command.JournalTransaction.type is public and set from inside the class, which makes it too exposed. Consider making it private to limit external accessibility.
PA Primitive field org.apache.activemq.command.JournalTransaction.wasPrepared is public and set from inside the class, which makes it too exposed. Consider making it private to limit external accessibility.
PA Primitive field org.apache.activemq.selector.SelectorParser.jj_nt is public and set from inside the class, which makes it too exposed. Consider making it private to limit external accessibility.
PA Primitive field org.apache.activemq.selector.SelectorParser.token is public and set from inside the class, which makes it too exposed. Consider making it private to limit external accessibility.
PA Primitive field org.apache.activemq.selector.SelectorParser.token_source is public and set from inside the class, which makes it too exposed. Consider making it private to limit external accessibility.
PA Primitive field org.apache.activemq.selector.SelectorParserTokenManager.debugStream is public and set from inside the class, which makes it too exposed. Consider making it private to limit external accessibility.
PA Primitive field org.apache.activemq.selector.SimpleCharStream.bufpos is public and set from inside the class, which makes it too exposed. Consider making it private to limit external accessibility.
PA Primitive field org.apache.activemq.util.ByteSequence.data is public and set from inside the class, which makes it too exposed. Consider making it private to limit external accessibility.
PA Primitive field org.apache.activemq.util.ByteSequence.length is public and set from inside the class, which makes it too exposed. Consider making it private to limit external accessibility.
PA Primitive field org.apache.activemq.util.ByteSequence.offset is public and set from inside the class, which makes it too exposed. Consider making it private to limit external accessibility.
RC Suspicious comparison of Boolean references in org.apache.activemq.command.WireFormatInfo.isCacheEnabled()
RC Suspicious comparison of Boolean references in org.apache.activemq.command.WireFormatInfo.isSizePrefixDisabled()
RC Suspicious comparison of Boolean references in org.apache.activemq.command.WireFormatInfo.isStackTraceEnabled()
RC Suspicious comparison of Boolean references in org.apache.activemq.command.WireFormatInfo.isTcpNoDelayEnabled()
RC Suspicious comparison of Boolean references in org.apache.activemq.command.WireFormatInfo.isTightEncodingEnabled()
RC Suspicious comparison of Boolean references in org.apache.activemq.filter.ComparisonExpression.matches(MessageEvaluationContext)
RC Suspicious comparison of Boolean references in org.apache.activemq.filter.ComparisonExpression$LikeExpression.matches(MessageEvaluationContext)
RC Suspicious comparison of Boolean references in org.apache.activemq.filter.ConstantExpression$BooleanConstantExpression.matches(MessageEvaluationContext)
RC Suspicious comparison of Boolean references in org.apache.activemq.filter.LogicExpression.matches(MessageEvaluationContext)
RC Suspicious comparison of Boolean references in org.apache.activemq.filter.UnaryExpression$BooleanUnaryExpression.matches(MessageEvaluationContext)
RC Suspicious comparison of Boolean references in org.apache.activemq.filter.XPathExpression.matches(MessageEvaluationContext)
RC Suspicious comparison of Boolean references in org.apache.activemq.filter.XQueryExpression.matches(MessageEvaluationContext)
RR org.apache.activemq.command.XATransactionId.initFromEncodedBytes() ignores result of org.apache.activemq.util.DataByteArrayInputStream.read(byte[])
RR org.apache.activemq.command.XATransactionId.initFromEncodedBytes() ignores result of org.apache.activemq.util.DataByteArrayInputStream.skipBytes(int)
RR org.apache.activemq.util.DataByteArrayInputStream.readFully(byte[]) ignores result of org.apache.activemq.util.DataByteArrayInputStream.read(byte[], int, int)
RR org.apache.activemq.util.DataByteArrayInputStream.readFully(byte[], int, int) ignores result of org.apache.activemq.util.DataByteArrayInputStream.read(byte[], int, int)
RV Exceptional return value of java.io.File.mkdirs() ignored in org.apache.activemq.blob.FileSystemBlobStrategy.createRootFolder()
RV Exceptional return value of java.util.concurrent.locks.Condition.await(long, TimeUnit) ignored in org.apache.activemq.usage.MemoryUsage.waitForSpace(long)
RV Exceptional return value of java.util.concurrent.locks.Condition.await(long, TimeUnit) ignored in org.apache.activemq.usage.Usage.waitForSpace(long, int)
Se The field org.apache.activemq.ActiveMQMessageAuditNoSync.modified is transient but isn't set by deserialization
Se Class org.apache.activemq.advisory.DestinationEvent defines non-transient non-serializable instance field destinationInfo
Se org.apache.activemq.filter.AnyDestination is Externalizable but doesn't define a void constructor
Se org.apache.activemq.openwire.CommandIdComparator implements Comparator but not Serializable

Correctness Warnings

Code Warning
EC Using pointer equality to compare a FanoutTransport$FanoutTransportHandler with a org.apache.activemq.transport.Transport in org.apache.activemq.transport.fanout.FanoutTransport.restoreTransport(FanoutTransport$FanoutTransportHandler)
MF Field TcpTransportServer.allowLinkStealing masks field in superclass org.apache.activemq.transport.TransportServerSupport
NP connection is null guaranteed to be dereferenced in org.apache.activemq.ActiveMQConnectionFactory.createActiveMQConnection(String, String) on exception path
NP Possible null pointer dereference of ConsumerInfo.consumerId in org.apache.activemq.command.ConsumerInfo.equals(Object)
RV Return value of java.util.concurrent.CountDownLatch.await(long, TimeUnit) ignored in org.apache.activemq.ActiveMQConnection.getBrokerName()
RV Return value of java.util.concurrent.CountDownLatch.await(long, TimeUnit) ignored in org.apache.activemq.transport.tcp.TcpTransport.stop()

Experimental Warnings

Code Warning
OBL org.apache.activemq.util.ProducerThread.createMessage(int) may fail to clean up java.io.InputStream

Internationalization Warnings

Code Warning
Dm Found reliance on default encoding in new org.apache.activemq.selector.SimpleCharStream(InputStream, int, int, int): new java.io.InputStreamReader(InputStream)
Dm Found reliance on default encoding in new org.apache.activemq.selector.SimpleCharStream(InputStream, String, int, int, int): new java.io.InputStreamReader(InputStream)
Dm Found reliance on default encoding in org.apache.activemq.selector.SimpleCharStream.ReInit(InputStream, int, int, int): new java.io.InputStreamReader(InputStream)
Dm Found reliance on default encoding in org.apache.activemq.selector.SimpleCharStream.ReInit(InputStream, String, int, int, int): new java.io.InputStreamReader(InputStream)
Dm Found reliance on default encoding in org.apache.activemq.transport.discovery.multicast.MulticastDiscoveryAgent.doAdvertizeSelf(): String.getBytes()
Dm Found reliance on default encoding in org.apache.activemq.transport.discovery.multicast.MulticastDiscoveryAgent.run(): new String(byte[], int, int)
Dm Found reliance on default encoding in org.apache.activemq.transport.failover.FailoverTransport.getURLStream(String): new java.io.FileReader(String)
Dm Found reliance on default encoding in org.apache.activemq.transport.failover.FailoverTransport.getURLStream(String): new java.io.InputStreamReader(InputStream)
Dm Found reliance on default encoding in new org.apache.activemq.transport.multicast.MulticastDatagramHeaderMarshaller(String): String.getBytes()
Dm Found reliance on default encoding in org.apache.activemq.transport.multicast.MulticastDatagramHeaderMarshaller.createEndpoint(ByteBuffer, SocketAddress): new String(byte[])
Dm Found reliance on default encoding in org.apache.activemq.util.ConsumerThread.run(): new String(byte[])
Dm Found reliance on default encoding in org.apache.activemq.util.DataByteArrayInputStream.readLine(): new String(byte[], int, int)
Dm Found reliance on default encoding in new org.apache.activemq.util.IndentPrinter(): new java.io.PrintWriter(OutputStream)
Dm Found reliance on default encoding in org.apache.activemq.util.MarshallingSupport.propertiesToString(Properties): new String(byte[], int, int)
Dm Found reliance on default encoding in org.apache.activemq.util.MarshallingSupport.stringToProperties(String): String.getBytes()
Dm Found reliance on default encoding in org.apache.activemq.util.ProducerThread.readInputStream(InputStream, int, int): new java.io.InputStreamReader(InputStream)

Malicious code vulnerability Warnings

Code Warning
EI org.apache.activemq.ActiveMQConnection.getBlobTransferPolicy() may expose internal representation by returning ActiveMQConnection.blobTransferPolicy
EI org.apache.activemq.ActiveMQConnection.getBrokerInfo() may expose internal representation by returning ActiveMQConnection.brokerInfo
EI org.apache.activemq.ActiveMQConnection.getConnectionInfo() may expose internal representation by returning ActiveMQConnection.info
EI org.apache.activemq.ActiveMQConnection.getConnectionStats() may expose internal representation by returning ActiveMQConnection.stats
EI org.apache.activemq.ActiveMQConnection.getDestinationSource() may expose internal representation by returning ActiveMQConnection.destinationSource
EI org.apache.activemq.ActiveMQConnection.getFirstFailureError() may expose internal representation by returning ActiveMQConnection.firstFailureError
EI org.apache.activemq.ActiveMQConnection.getLocalTransactionIdGenerator() may expose internal representation by returning ActiveMQConnection.localTransactionIdGenerator
EI org.apache.activemq.ActiveMQConnection.getPrefetchPolicy() may expose internal representation by returning ActiveMQConnection.prefetchPolicy
EI org.apache.activemq.ActiveMQConnection.getRedeliveryPolicyMap() may expose internal representation by returning ActiveMQConnection.redeliveryPolicyMap
EI org.apache.activemq.ActiveMQConnection.getSessionTaskRunner() may expose internal representation by returning ActiveMQConnection.sessionTaskRunner
EI org.apache.activemq.ActiveMQConnection.getStats() may expose internal representation by returning ActiveMQConnection.stats
EI org.apache.activemq.ActiveMQConnection.getTransport() may expose internal representation by returning ActiveMQConnection.transport
EI org.apache.activemq.ActiveMQConnection.getTransportChannel() may expose internal representation by returning ActiveMQConnection.transport
EI org.apache.activemq.ActiveMQConnection.getTrustedPackages() may expose internal representation by returning ActiveMQConnection.trustedPackages
EI org.apache.activemq.ActiveMQConnectionConsumer.getConsumerInfo() may expose internal representation by returning ActiveMQConnectionConsumer.consumerInfo
EI org.apache.activemq.ActiveMQConnectionFactory.getBlobTransferPolicy() may expose internal representation by returning ActiveMQConnectionFactory.blobTransferPolicy
EI org.apache.activemq.ActiveMQConnectionFactory.getPrefetchPolicy() may expose internal representation by returning ActiveMQConnectionFactory.prefetchPolicy
EI org.apache.activemq.ActiveMQConnectionFactory.getRedeliveryPolicyMap() may expose internal representation by returning ActiveMQConnectionFactory.redeliveryPolicyMap
EI org.apache.activemq.ActiveMQConnectionFactory.getSessionTaskRunner() may expose internal representation by returning ActiveMQConnectionFactory.sessionTaskRunner
EI org.apache.activemq.ActiveMQConnectionFactory.getStats() may expose internal representation by returning ActiveMQConnectionFactory.factoryStats
EI org.apache.activemq.ActiveMQConnectionFactory.getTrustedPackages() may expose internal representation by returning ActiveMQConnectionFactory.trustedPackages
EI org.apache.activemq.ActiveMQMessageConsumer.getConsumerStats() may expose internal representation by returning ActiveMQMessageConsumer.stats
EI org.apache.activemq.ActiveMQMessageConsumer.getFailureError() may expose internal representation by returning ActiveMQMessageConsumer.failureError
EI org.apache.activemq.ActiveMQMessageConsumer.getRedeliveryPolicy() may expose internal representation by returning ActiveMQMessageConsumer.redeliveryPolicy
EI org.apache.activemq.ActiveMQMessageConsumer.getStats() may expose internal representation by returning ActiveMQMessageConsumer.stats
EI org.apache.activemq.ActiveMQMessageProducer.getProducerStats() may expose internal representation by returning ActiveMQMessageProducer.stats
EI org.apache.activemq.ActiveMQMessageProducer.getStats() may expose internal representation by returning ActiveMQMessageProducer.stats
EI org.apache.activemq.ActiveMQQueueBrowser.getQueue() may expose internal representation by returning ActiveMQQueueBrowser.destination
EI org.apache.activemq.ActiveMQSession.getBlobTransferPolicy() may expose internal representation by returning ActiveMQSession.blobTransferPolicy
EI org.apache.activemq.ActiveMQSession.getConnection() may expose internal representation by returning ActiveMQSession.connection
EI org.apache.activemq.ActiveMQSession.getSessionStats() may expose internal representation by returning ActiveMQSession.stats
EI org.apache.activemq.ActiveMQSession.getStats() may expose internal representation by returning ActiveMQSession.stats
EI org.apache.activemq.ActiveMQSession.getTransactionContext() may expose internal representation by returning ActiveMQSession.transactionContext
EI org.apache.activemq.TransactionContext.getConnection() may expose internal representation by returning TransactionContext.connection
EI org.apache.activemq.advisory.ConsumerEvent.getConsumerId() may expose internal representation by returning ConsumerEvent.consumerId
EI org.apache.activemq.advisory.ConsumerStartedEvent.getConsumerInfo() may expose internal representation by returning ConsumerStartedEvent.consumerInfo
EI org.apache.activemq.advisory.DestinationEvent.getDestinationInfo() may expose internal representation by returning DestinationEvent.destinationInfo
EI org.apache.activemq.advisory.DestinationSource.getQueues() may expose internal representation by returning DestinationSource.queues
EI org.apache.activemq.advisory.DestinationSource.getTemporaryQueues() may expose internal representation by returning DestinationSource.temporaryQueues
EI org.apache.activemq.advisory.DestinationSource.getTemporaryTopics() may expose internal representation by returning DestinationSource.temporaryTopics
EI org.apache.activemq.advisory.DestinationSource.getTopics() may expose internal representation by returning DestinationSource.topics
EI org.apache.activemq.advisory.ProducerEvent.getProducerId() may expose internal representation by returning ProducerEvent.producerId
EI org.apache.activemq.advisory.ProducerStartedEvent.getProducerInfo() may expose internal representation by returning ProducerStartedEvent.consumerInfo
EI org.apache.activemq.blob.BlobDownloader.getBlobTransferPolicy() may expose internal representation by returning BlobDownloader.blobTransferPolicy
EI org.apache.activemq.blob.BlobTransferPolicy.getDownloadStrategy() may expose internal representation by returning BlobTransferPolicy.downloadStrategy
EI org.apache.activemq.blob.BlobUploader.getBlobTransferPolicy() may expose internal representation by returning BlobUploader.blobTransferPolicy
EI org.apache.activemq.broker.SslContext.getKeyManagers() may expose internal representation by returning SslContext.keyManagers
EI org.apache.activemq.broker.SslContext.getSecureRandom() may expose internal representation by returning SslContext.secureRandom
EI org.apache.activemq.broker.SslContext.getTrustManagers() may expose internal representation by returning SslContext.trustManagers
EI org.apache.activemq.broker.region.policy.RedeliveryPolicyMap.getDefaultEntry() may expose internal representation by returning RedeliveryPolicyMap.defaultEntry
EI org.apache.activemq.command.ActiveMQBlobMessage.getBlobDownloader() may expose internal representation by returning ActiveMQBlobMessage.blobDownloader
EI org.apache.activemq.command.ActiveMQDestination.getCompositeDestinations() may expose internal representation by returning ActiveMQDestination.compositeDestinations
EI org.apache.activemq.command.ActiveMQDestination.getDestinationPaths() may expose internal representation by returning ActiveMQDestination.destinationPaths
EI org.apache.activemq.command.ActiveMQDestination.getOptions() may expose internal representation by returning ActiveMQDestination.options
EI org.apache.activemq.command.ActiveMQMapMessage.getContentMap() may expose internal representation by returning ActiveMQMapMessage.map
EI org.apache.activemq.command.ActiveMQObjectMessage.getTrustedPackages() may expose internal representation by returning ActiveMQObjectMessage.trustedPackages
EI org.apache.activemq.command.ActiveMQTempDestination.getConnection() may expose internal representation by returning ActiveMQTempDestination.connection
EI org.apache.activemq.command.BaseCommand.getFrom() may expose internal representation by returning BaseCommand.from
EI org.apache.activemq.command.BaseCommand.getTo() may expose internal representation by returning BaseCommand.to
EI org.apache.activemq.command.BaseEndpoint.getBrokerInfo() may expose internal representation by returning BaseEndpoint.brokerInfo
EI org.apache.activemq.command.BrokerInfo.getBrokerId() may expose internal representation by returning BrokerInfo.brokerId
EI org.apache.activemq.command.BrokerInfo.getPeerBrokerInfos() may expose internal representation by returning BrokerInfo.peerBrokerInfos
EI org.apache.activemq.command.BrokerSubscriptionInfo.getBrokerId() may expose internal representation by returning BrokerSubscriptionInfo.brokerId
EI org.apache.activemq.command.BrokerSubscriptionInfo.getSubscriptionInfos() may expose internal representation by returning BrokerSubscriptionInfo.subscriptionInfos
EI org.apache.activemq.command.ConnectionControl.getToken() may expose internal representation by returning ConnectionControl.token
EI org.apache.activemq.command.ConnectionError.getConnectionId() may expose internal representation by returning ConnectionError.connectionId
EI org.apache.activemq.command.ConnectionError.getException() may expose internal representation by returning ConnectionError.exception
EI org.apache.activemq.command.ConnectionInfo.getBrokerPath() may expose internal representation by returning ConnectionInfo.brokerPath
EI org.apache.activemq.command.ConnectionInfo.getConnectionId() may expose internal representation by returning ConnectionInfo.connectionId
EI org.apache.activemq.command.ConsumerControl.getConsumerId() may expose internal representation by returning ConsumerControl.consumerId
EI org.apache.activemq.command.ConsumerControl.getDestination() may expose internal representation by returning ConsumerControl.destination
EI org.apache.activemq.command.ConsumerId.getParentId() may expose internal representation by returning ConsumerId.parentId
EI org.apache.activemq.command.ConsumerInfo.getBrokerPath() may expose internal representation by returning ConsumerInfo.brokerPath
EI org.apache.activemq.command.ConsumerInfo.getConsumerId() may expose internal representation by returning ConsumerInfo.consumerId
EI org.apache.activemq.command.ConsumerInfo.getDestination() may expose internal representation by returning ConsumerInfo.destination
EI org.apache.activemq.command.DataArrayResponse.getData() may expose internal representation by returning DataArrayResponse.data
EI org.apache.activemq.command.DestinationInfo.getBrokerPath() may expose internal representation by returning DestinationInfo.brokerPath
EI org.apache.activemq.command.DestinationInfo.getConnectionId() may expose internal representation by returning DestinationInfo.connectionId
EI org.apache.activemq.command.DestinationInfo.getDestination() may expose internal representation by returning DestinationInfo.destination
EI org.apache.activemq.command.ExceptionResponse.getException() may expose internal representation by returning ExceptionResponse.exception
EI org.apache.activemq.command.JournalQueueAck.getDestination() may expose internal representation by returning JournalQueueAck.destination
EI org.apache.activemq.command.JournalQueueAck.getMessageAck() may expose internal representation by returning JournalQueueAck.messageAck
EI org.apache.activemq.command.JournalTopicAck.getDestination() may expose internal representation by returning JournalTopicAck.destination
EI org.apache.activemq.command.JournalTopicAck.getMessageId() may expose internal representation by returning JournalTopicAck.messageId
EI org.apache.activemq.command.KeepAliveInfo.getFrom() may expose internal representation by returning KeepAliveInfo.from
EI org.apache.activemq.command.KeepAliveInfo.getTo() may expose internal representation by returning KeepAliveInfo.to
EI org.apache.activemq.command.LocalTransactionId.getConnectionId() may expose internal representation by returning LocalTransactionId.connectionId
EI org.apache.activemq.command.Message.getBrokerPath() may expose internal representation by returning Message.brokerPath
EI org.apache.activemq.command.Message.getCluster() may expose internal representation by returning Message.cluster
EI org.apache.activemq.command.Message.getConnection() may expose internal representation by returning Message.connection
EI org.apache.activemq.command.Message.getContent() may expose internal representation by returning Message.content
EI org.apache.activemq.command.Message.getDestination() may expose internal representation by returning Message.destination
EI org.apache.activemq.command.Message.getMarshalledProperties() may expose internal representation by returning Message.marshalledProperties
EI org.apache.activemq.command.Message.getMemoryUsage() may expose internal representation by returning Message.memoryUsage
EI org.apache.activemq.command.Message.getMessageId() may expose internal representation by returning Message.messageId
EI org.apache.activemq.command.Message.getOriginalDestination() may expose internal representation by returning Message.originalDestination
EI org.apache.activemq.command.Message.getProducerId() may expose internal representation by returning Message.producerId
EI org.apache.activemq.command.Message.getReplyTo() may expose internal representation by returning Message.replyTo
EI org.apache.activemq.command.Message.getTargetConsumerId() may expose internal representation by returning Message.targetConsumerId
EI org.apache.activemq.command.MessageAck.getConsumerId() may expose internal representation by returning MessageAck.consumerId
EI org.apache.activemq.command.MessageAck.getDestination() may expose internal representation by returning MessageAck.destination
EI org.apache.activemq.command.MessageAck.getFirstMessageId() may expose internal representation by returning MessageAck.firstMessageId
EI org.apache.activemq.command.MessageAck.getLastMessageId() may expose internal representation by returning MessageAck.lastMessageId
EI org.apache.activemq.command.MessageAck.getPoisonCause() may expose internal representation by returning MessageAck.poisonCause
EI org.apache.activemq.command.MessageDispatch.getConsumerId() may expose internal representation by returning MessageDispatch.consumerId
EI org.apache.activemq.command.MessageDispatch.getDestination() may expose internal representation by returning MessageDispatch.destination
EI org.apache.activemq.command.MessageDispatch.getMessage() may expose internal representation by returning MessageDispatch.message
EI org.apache.activemq.command.MessageDispatch.getRollbackCause() may expose internal representation by returning MessageDispatch.rollbackCause
EI org.apache.activemq.command.MessageDispatchNotification.getConsumerId() may expose internal representation by returning MessageDispatchNotification.consumerId
EI org.apache.activemq.command.MessageDispatchNotification.getDestination() may expose internal representation by returning MessageDispatchNotification.destination
EI org.apache.activemq.command.MessageDispatchNotification.getMessageId() may expose internal representation by returning MessageDispatchNotification.messageId
EI org.apache.activemq.command.MessageId.getProducerId() may expose internal representation by returning MessageId.producerId
EI org.apache.activemq.command.MessagePull.getConsumerId() may expose internal representation by returning MessagePull.consumerId
EI org.apache.activemq.command.MessagePull.getDestination() may expose internal representation by returning MessagePull.destination
EI org.apache.activemq.command.MessagePull.getMessageId() may expose internal representation by returning MessagePull.messageId
EI org.apache.activemq.command.NetworkBridgeFilter.getNetworkBrokerId() may expose internal representation by returning NetworkBridgeFilter.networkBrokerId
EI org.apache.activemq.command.PartialCommand.getData() may expose internal representation by returning PartialCommand.data
EI org.apache.activemq.command.PartialCommand.getFrom() may expose internal representation by returning PartialCommand.from
EI org.apache.activemq.command.PartialCommand.getTo() may expose internal representation by returning PartialCommand.to
EI org.apache.activemq.command.ProducerAck.getProducerId() may expose internal representation by returning ProducerAck.producerId
EI org.apache.activemq.command.ProducerId.getParentId() may expose internal representation by returning ProducerId.parentId
EI org.apache.activemq.command.ProducerInfo.getBrokerPath() may expose internal representation by returning ProducerInfo.brokerPath
EI org.apache.activemq.command.ProducerInfo.getDestination() may expose internal representation by returning ProducerInfo.destination
EI org.apache.activemq.command.ProducerInfo.getProducerId() may expose internal representation by returning ProducerInfo.producerId
EI org.apache.activemq.command.RemoveSubscriptionInfo.getConnectionId() may expose internal representation by returning RemoveSubscriptionInfo.connectionId
EI org.apache.activemq.command.SessionId.getParentId() may expose internal representation by returning SessionId.parentId
EI org.apache.activemq.command.SessionInfo.getSessionId() may expose internal representation by returning SessionInfo.sessionId
EI org.apache.activemq.command.SubscriptionInfo.getDestination() may expose internal representation by returning SubscriptionInfo.destination
EI org.apache.activemq.command.SubscriptionInfo.getSubscribedDestination() may expose internal representation by returning SubscriptionInfo.subscribedDestination
EI org.apache.activemq.command.TransactionInfo.getConnectionId() may expose internal representation by returning TransactionInfo.connectionId
EI org.apache.activemq.command.WireFormatInfo.getFrom() may expose internal representation by returning WireFormatInfo.from
EI org.apache.activemq.command.WireFormatInfo.getMagic() may expose internal representation by returning WireFormatInfo.magic
EI org.apache.activemq.command.WireFormatInfo.getMarshalledProperties() may expose internal representation by returning WireFormatInfo.marshalledProperties
EI org.apache.activemq.command.WireFormatInfo.getTo() may expose internal representation by returning WireFormatInfo.to
EI org.apache.activemq.command.XATransactionId.getBranchQualifier() may expose internal representation by returning XATransactionId.branchQualifier
EI org.apache.activemq.command.XATransactionId.getEncodedXidBytes() may expose internal representation by returning XATransactionId.encodedXidBytes
EI org.apache.activemq.command.XATransactionId.getGlobalTransactionId() may expose internal representation by returning XATransactionId.globalTransactionId
EI org.apache.activemq.command.XATransactionId.getPreparedAcks() may expose internal representation by returning XATransactionId.preparedAcks
EI org.apache.activemq.command.XATransactionId.internalOutputStream() may expose internal representation by returning XATransactionId.outputStream
EI org.apache.activemq.filter.DefaultDestinationMapEntry.getValue() may expose internal representation by returning DefaultDestinationMapEntry.value
EI org.apache.activemq.filter.DestinationMap.getQueueRootNode() may expose internal representation by returning DestinationMap.queueRootNode
EI org.apache.activemq.filter.DestinationMap.getTempQueueRootNode() may expose internal representation by returning DestinationMap.tempQueueRootNode
EI org.apache.activemq.filter.DestinationMap.getTempTopicRootNode() may expose internal representation by returning DestinationMap.tempTopicRootNode
EI org.apache.activemq.filter.DestinationMap.getTopicRootNode() may expose internal representation by returning DestinationMap.topicRootNode
EI org.apache.activemq.filter.DestinationMapEntry.getDestination() may expose internal representation by returning DestinationMapEntry.destination
EI org.apache.activemq.filter.DestinationMapNode.getValues() may expose internal representation by returning DestinationMapNode.values
EI org.apache.activemq.filter.MessageEvaluationContext.getDestination() may expose internal representation by returning MessageEvaluationContext.destination
EI org.apache.activemq.filter.MessageEvaluationContext.getMessage() may expose internal representation by returning MessageEvaluationContext.message
EI org.apache.activemq.jndi.JNDIBaseStorable.getProperties() may expose internal representation by returning JNDIBaseStorable.properties
EI org.apache.activemq.management.CountStatisticImpl.getParent() may expose internal representation by returning CountStatisticImpl.parent
EI org.apache.activemq.management.JCAConnectionPoolStatsImpl.getCloseCount() may expose internal representation by returning JCAConnectionPoolStatsImpl.closeCount
EI org.apache.activemq.management.JCAConnectionPoolStatsImpl.getCreateCount() may expose internal representation by returning JCAConnectionPoolStatsImpl.createCount
EI org.apache.activemq.management.JCAConnectionPoolStatsImpl.getFreePoolSize() may expose internal representation by returning JCAConnectionPoolStatsImpl.freePoolSize
EI org.apache.activemq.management.JCAConnectionPoolStatsImpl.getPoolSize() may expose internal representation by returning JCAConnectionPoolStatsImpl.poolSize
EI org.apache.activemq.management.JCAConnectionPoolStatsImpl.getWaitingThreadCount() may expose internal representation by returning JCAConnectionPoolStatsImpl.waitingThreadCount
EI org.apache.activemq.management.JCAConnectionStatsImpl.getUseTime() may expose internal representation by returning JCAConnectionStatsImpl.useTime
EI org.apache.activemq.management.JCAConnectionStatsImpl.getWaitTime() may expose internal representation by returning JCAConnectionStatsImpl.waitTime
EI org.apache.activemq.management.JCAStatsImpl.getConnectionPools() may expose internal representation by returning JCAStatsImpl.connectionPoolStats
EI org.apache.activemq.management.JCAStatsImpl.getConnections() may expose internal representation by returning JCAStatsImpl.connectionStats
EI org.apache.activemq.management.JMSEndpointStatsImpl.getExpiredMessageCount() may expose internal representation by returning JMSEndpointStatsImpl.expiredMessageCount
EI org.apache.activemq.management.JMSEndpointStatsImpl.getMessageCount() may expose internal representation by returning JMSEndpointStatsImpl.messageCount
EI org.apache.activemq.management.JMSEndpointStatsImpl.getMessageRateTime() may expose internal representation by returning JMSEndpointStatsImpl.messageRateTime
EI org.apache.activemq.management.JMSEndpointStatsImpl.getMessageWaitTime() may expose internal representation by returning JMSEndpointStatsImpl.messageWaitTime
EI org.apache.activemq.management.JMSEndpointStatsImpl.getPendingMessageCount() may expose internal representation by returning JMSEndpointStatsImpl.pendingMessageCount
EI org.apache.activemq.management.JMSSessionStatsImpl.getDurableSubscriptionCount() may expose internal representation by returning JMSSessionStatsImpl.durableSubscriptionCount
EI org.apache.activemq.management.JMSSessionStatsImpl.getExpiredMessageCount() may expose internal representation by returning JMSSessionStatsImpl.expiredMessageCount
EI org.apache.activemq.management.JMSSessionStatsImpl.getMessageCount() may expose internal representation by returning JMSSessionStatsImpl.messageCount
EI org.apache.activemq.management.JMSSessionStatsImpl.getMessageRateTime() may expose internal representation by returning JMSSessionStatsImpl.messageRateTime
EI org.apache.activemq.management.JMSSessionStatsImpl.getMessageWaitTime() may expose internal representation by returning JMSSessionStatsImpl.messageWaitTime
EI org.apache.activemq.management.JMSSessionStatsImpl.getPendingMessageCount() may expose internal representation by returning JMSSessionStatsImpl.pendingMessageCount
EI org.apache.activemq.management.PollCountStatisticImpl.getParent() may expose internal representation by returning PollCountStatisticImpl.parent
EI org.apache.activemq.management.SizeStatisticImpl.getParent() may expose internal representation by returning SizeStatisticImpl.parent
EI org.apache.activemq.management.TimeStatisticImpl.getParent() may expose internal representation by returning TimeStatisticImpl.parent
EI org.apache.activemq.openwire.OpenWireFormat.getPreferedWireFormatInfo() may expose internal representation by returning OpenWireFormat.preferedWireFormatInfo
EI org.apache.activemq.state.ConnectionState.getInfo() may expose internal representation by returning ConnectionState.info
EI org.apache.activemq.state.ConnectionState.getRecoveringPullConsumers() may expose internal representation by returning ConnectionState.recoveringPullConsumers
EI org.apache.activemq.state.ConnectionState.getTempDestinations() may expose internal representation by returning ConnectionState.tempDestinations
EI org.apache.activemq.state.ConnectionStateTracker.processAddConnection(ConnectionInfo) may expose internal representation by returning ConnectionStateTracker.TRACKED_RESPONSE_MARKER
EI org.apache.activemq.state.ConnectionStateTracker.processAddConsumer(ConsumerInfo) may expose internal representation by returning ConnectionStateTracker.TRACKED_RESPONSE_MARKER
EI org.apache.activemq.state.ConnectionStateTracker.processAddDestination(DestinationInfo) may expose internal representation by returning ConnectionStateTracker.TRACKED_RESPONSE_MARKER
EI org.apache.activemq.state.ConnectionStateTracker.processAddProducer(ProducerInfo) may expose internal representation by returning ConnectionStateTracker.TRACKED_RESPONSE_MARKER
EI org.apache.activemq.state.ConnectionStateTracker.processAddSession(SessionInfo) may expose internal representation by returning ConnectionStateTracker.TRACKED_RESPONSE_MARKER
EI org.apache.activemq.state.ConnectionStateTracker.processBeginTransaction(TransactionInfo) may expose internal representation by returning ConnectionStateTracker.TRACKED_RESPONSE_MARKER
EI org.apache.activemq.state.ConnectionStateTracker.processEndTransaction(TransactionInfo) may expose internal representation by returning ConnectionStateTracker.TRACKED_RESPONSE_MARKER
EI org.apache.activemq.state.ConnectionStateTracker.processMessage(Message) may expose internal representation by returning ConnectionStateTracker.TRACKED_RESPONSE_MARKER
EI org.apache.activemq.state.ConnectionStateTracker.processRemoveConnection(ConnectionId, long) may expose internal representation by returning ConnectionStateTracker.TRACKED_RESPONSE_MARKER
EI org.apache.activemq.state.ConnectionStateTracker.processRemoveConsumer(ConsumerId, long) may expose internal representation by returning ConnectionStateTracker.TRACKED_RESPONSE_MARKER
EI org.apache.activemq.state.ConnectionStateTracker.processRemoveDestination(DestinationInfo) may expose internal representation by returning ConnectionStateTracker.TRACKED_RESPONSE_MARKER
EI org.apache.activemq.state.ConnectionStateTracker.processRemoveProducer(ProducerId) may expose internal representation by returning ConnectionStateTracker.TRACKED_RESPONSE_MARKER
EI org.apache.activemq.state.ConnectionStateTracker.processRemoveSession(SessionId, long) may expose internal representation by returning ConnectionStateTracker.TRACKED_RESPONSE_MARKER
EI org.apache.activemq.state.ConsumerState.getInfo() may expose internal representation by returning ConsumerState.info
EI org.apache.activemq.state.ProducerState.getInfo() may expose internal representation by returning ProducerState.info
EI org.apache.activemq.state.ProducerState.getTransactionState() may expose internal representation by returning ProducerState.transactionState
EI org.apache.activemq.state.SessionState.getInfo() may expose internal representation by returning SessionState.info
EI org.apache.activemq.state.TransactionState.getCommands() may expose internal representation by returning TransactionState.commands
EI org.apache.activemq.state.TransactionState.getProducerStates() may expose internal representation by returning TransactionState.producers
EI org.apache.activemq.transport.ResponseCorrelator.getSequenceGenerator() may expose internal representation by returning ResponseCorrelator.sequenceGenerator
EI org.apache.activemq.transport.TransportFilter.getNext() may expose internal representation by returning TransportFilter.next
EI org.apache.activemq.transport.discovery.DiscoveryTransport.getDiscoveryAgent() may expose internal representation by returning DiscoveryTransport.discoveryAgent
EI org.apache.activemq.transport.discovery.masterslave.MasterSlaveDiscoveryAgent.getServices() may expose internal representation by returning MasterSlaveDiscoveryAgent.msServices
EI org.apache.activemq.transport.discovery.simple.SimpleDiscoveryAgent.getServices() may expose internal representation by returning SimpleDiscoveryAgent.services
EI org.apache.activemq.transport.discovery.zeroconf.ZeroconfDiscoveryAgent.getJmdns() may expose internal representation by returning ZeroconfDiscoveryAgent.jmdns
EI org.apache.activemq.transport.discovery.zeroconf.ZeroconfDiscoveryAgent.getLocalAddress() may expose internal representation by returning ZeroconfDiscoveryAgent.localAddress
EI org.apache.activemq.transport.failover.FailoverTransport.getStateTracker() may expose internal representation by returning FailoverTransport.stateTracker
EI org.apache.activemq.transport.mock.MockTransport.getNext() may expose internal representation by returning MockTransport.next
EI org.apache.activemq.transport.nio.NIOSSLTransport.getEnabledCipherSuites() may expose internal representation by returning NIOSSLTransport.enabledCipherSuites
EI org.apache.activemq.transport.nio.NIOSSLTransport.getEnabledProtocols() may expose internal representation by returning NIOSSLTransport.enabledProtocols
EI org.apache.activemq.transport.reliable.ReliableTransport.getReplayBuffer() may expose internal representation by returning ReliableTransport.replayBuffer
EI org.apache.activemq.transport.tcp.ResponseHolder.getResponse(int) may expose internal representation by returning ResponseHolder.response
EI org.apache.activemq.transport.tcp.TcpTransport.getWireFormat() may expose internal representation by returning TcpTransport.wireFormat
EI org.apache.activemq.transport.tcp.TcpTransportServer.getCurrentTransportCount() may expose internal representation by returning TcpTransportServer.currentTransportCount
EI org.apache.activemq.transport.udp.CommandChannelSupport.getHeaderMarshaller() may expose internal representation by returning CommandChannelSupport.headerMarshaller
EI org.apache.activemq.transport.udp.CommandChannelSupport.getReplayBuffer() may expose internal representation by returning CommandChannelSupport.replayBuffer
EI org.apache.activemq.transport.udp.CommandDatagramChannel.getBufferPool() may expose internal representation by returning CommandDatagramChannel.bufferPool
EI org.apache.activemq.transport.udp.UdpTransport.getBufferPool() may expose internal representation by returning UdpTransport.bufferPool
EI org.apache.activemq.transport.udp.UdpTransport.getCommandChannel() may expose internal representation by returning UdpTransport.commandChannel
EI org.apache.activemq.transport.udp.UdpTransport.getReplayBuffer() may expose internal representation by returning UdpTransport.replayBuffer
EI org.apache.activemq.transport.udp.UdpTransport.getSequenceGenerator() may expose internal representation by returning UdpTransport.sequenceGenerator
EI org.apache.activemq.transport.udp.UdpTransport.getWireFormat() may expose internal representation by returning UdpTransport.wireFormat
EI org.apache.activemq.transport.udp.UdpTransportServer.getServerTransport() may expose internal representation by returning UdpTransportServer.serverTransport
EI org.apache.activemq.usage.Usage.getExecutor() may expose internal representation by returning Usage.executor
EI org.apache.activemq.usage.Usage.getLimiter() may expose internal representation by returning Usage.limiter
EI org.apache.activemq.usage.Usage.getParent() may expose internal representation by returning Usage.parent
EI org.apache.activemq.util.ClassLoadingAwareObjectInputStream.getTrustedPackages() may expose internal representation by returning ClassLoadingAwareObjectInputStream.trustedPackages
EI org.apache.activemq.util.DataByteArrayInputStream.getRawData() may expose internal representation by returning DataByteArrayInputStream.buf
EI org.apache.activemq.util.DataByteArrayOutputStream.getData() may expose internal representation by returning DataByteArrayOutputStream.buf
EI org.apache.activemq.util.URISupport$CompositeData.getComponents() may expose internal representation by returning URISupport$CompositeData.components
EI org.apache.activemq.util.URISupport$CompositeData.getParameters() may expose internal representation by returning URISupport$CompositeData.parameters
EI2 org.apache.activemq.ActiveMQConnection.setBlobTransferPolicy(BlobTransferPolicy) may expose internal representation by storing an externally mutable object into ActiveMQConnection.blobTransferPolicy
EI2 org.apache.activemq.ActiveMQConnection.setPrefetchPolicy(ActiveMQPrefetchPolicy) may expose internal representation by storing an externally mutable object into ActiveMQConnection.prefetchPolicy
EI2 org.apache.activemq.ActiveMQConnection.setRedeliveryPolicyMap(RedeliveryPolicyMap) may expose internal representation by storing an externally mutable object into ActiveMQConnection.redeliveryPolicyMap
EI2 org.apache.activemq.ActiveMQConnection.setSessionTaskRunner(TaskRunnerFactory) may expose internal representation by storing an externally mutable object into ActiveMQConnection.sessionTaskRunner
EI2 org.apache.activemq.ActiveMQConnection.setTrustedPackages(List) may expose internal representation by storing an externally mutable object into ActiveMQConnection.trustedPackages
EI2 org.apache.activemq.ActiveMQConnectionFactory.setBlobTransferPolicy(BlobTransferPolicy) may expose internal representation by storing an externally mutable object into ActiveMQConnectionFactory.blobTransferPolicy
EI2 org.apache.activemq.ActiveMQConnectionFactory.setPrefetchPolicy(ActiveMQPrefetchPolicy) may expose internal representation by storing an externally mutable object into ActiveMQConnectionFactory.prefetchPolicy
EI2 org.apache.activemq.ActiveMQConnectionFactory.setRedeliveryPolicyMap(RedeliveryPolicyMap) may expose internal representation by storing an externally mutable object into ActiveMQConnectionFactory.redeliveryPolicyMap
EI2 org.apache.activemq.ActiveMQConnectionFactory.setSessionTaskRunner(TaskRunnerFactory) may expose internal representation by storing an externally mutable object into ActiveMQConnectionFactory.sessionTaskRunner
EI2 org.apache.activemq.ActiveMQConnectionFactory.setTrustedPackages(List) may expose internal representation by storing an externally mutable object into ActiveMQConnectionFactory.trustedPackages
EI2 new org.apache.activemq.ActiveMQMessageConsumer(ActiveMQSession, ConsumerId, ActiveMQDestination, String, String, int, int, boolean, boolean, boolean, MessageListener) may expose internal representation by storing an externally mutable object into ActiveMQMessageConsumer.session
EI2 org.apache.activemq.ActiveMQMessageConsumer.setFailureError(IOException) may expose internal representation by storing an externally mutable object into ActiveMQMessageConsumer.failureError
EI2 org.apache.activemq.ActiveMQMessageConsumer.setRedeliveryPolicy(RedeliveryPolicy) may expose internal representation by storing an externally mutable object into ActiveMQMessageConsumer.redeliveryPolicy
EI2 new org.apache.activemq.ActiveMQMessageProducerSupport(ActiveMQSession) may expose internal representation by storing an externally mutable object into ActiveMQMessageProducerSupport.session
EI2 org.apache.activemq.ActiveMQSession.setBlobTransferPolicy(BlobTransferPolicy) may expose internal representation by storing an externally mutable object into ActiveMQSession.blobTransferPolicy
EI2 org.apache.activemq.ActiveMQSession.setTransactionContext(TransactionContext) may expose internal representation by storing an externally mutable object into ActiveMQSession.transactionContext
EI2 org.apache.activemq.ActiveMQSslConnectionFactory.setKeyAndTrustManagers(KeyManager[], TrustManager[], SecureRandom) may expose internal representation by storing an externally mutable object into ActiveMQSslConnectionFactory.keyManager
EI2 org.apache.activemq.ActiveMQSslConnectionFactory.setKeyAndTrustManagers(KeyManager[], TrustManager[], SecureRandom) may expose internal representation by storing an externally mutable object into ActiveMQSslConnectionFactory.secureRandom
EI2 org.apache.activemq.ActiveMQSslConnectionFactory.setKeyAndTrustManagers(KeyManager[], TrustManager[], SecureRandom) may expose internal representation by storing an externally mutable object into ActiveMQSslConnectionFactory.trustManager
EI2 new org.apache.activemq.AdvisoryConsumer(ActiveMQConnection, ConsumerId) may expose internal representation by storing an externally mutable object into AdvisoryConsumer.connection
EI2 new org.apache.activemq.TransactionContext(ActiveMQConnection) may expose internal representation by storing an externally mutable object into TransactionContext.connection
EI2 org.apache.activemq.TransactionContext.setConnection(ActiveMQConnection) may expose internal representation by storing an externally mutable object into TransactionContext.connection
EI2 new org.apache.activemq.advisory.ConsumerEvent(ConsumerEventSource, Destination, ConsumerId, int) may expose internal representation by storing an externally mutable object into ConsumerEvent.consumerId
EI2 new org.apache.activemq.advisory.ConsumerEventSource(Connection, Destination) may expose internal representation by storing an externally mutable object into ConsumerEventSource.connection
EI2 new org.apache.activemq.advisory.ConsumerStartedEvent(ConsumerEventSource, ActiveMQDestination, ConsumerInfo, int) may expose internal representation by storing an externally mutable object into ConsumerStartedEvent.consumerInfo
EI2 new org.apache.activemq.advisory.DestinationEvent(DestinationSource, DestinationInfo) may expose internal representation by storing an externally mutable object into DestinationEvent.destinationInfo
EI2 new org.apache.activemq.advisory.DestinationSource(Connection) may expose internal representation by storing an externally mutable object into DestinationSource.connection
EI2 new org.apache.activemq.advisory.ProducerEvent(ProducerEventSource, Destination, ProducerId, int) may expose internal representation by storing an externally mutable object into ProducerEvent.producerId
EI2 new org.apache.activemq.advisory.ProducerEventSource(Connection, Destination) may expose internal representation by storing an externally mutable object into ProducerEventSource.connection
EI2 new org.apache.activemq.advisory.ProducerStartedEvent(ProducerEventSource, ActiveMQDestination, ProducerInfo, int) may expose internal representation by storing an externally mutable object into ProducerStartedEvent.consumerInfo
EI2 new org.apache.activemq.blob.DefaultStrategy(BlobTransferPolicy) may expose internal representation by storing an externally mutable object into DefaultStrategy.transferPolicy
EI2 new org.apache.activemq.blob.FTPStrategy(BlobTransferPolicy) may expose internal representation by storing an externally mutable object into FTPStrategy.transferPolicy
EI2 new org.apache.activemq.blob.FileSystemBlobStrategy(BlobTransferPolicy) may expose internal representation by storing an externally mutable object into FileSystemBlobStrategy.policy
EI2 org.apache.activemq.broker.SslContext.setKeyManagers(List) may expose internal representation by storing an externally mutable object into SslContext.keyManagers
EI2 org.apache.activemq.broker.SslContext.setSecureRandom(SecureRandom) may expose internal representation by storing an externally mutable object into SslContext.secureRandom
EI2 org.apache.activemq.broker.SslContext.setTrustManagers(List) may expose internal representation by storing an externally mutable object into SslContext.trustManagers
EI2 org.apache.activemq.broker.region.policy.RedeliveryPolicyMap.setDefaultEntry(RedeliveryPolicy) may expose internal representation by storing an externally mutable object into RedeliveryPolicyMap.defaultEntry
EI2 org.apache.activemq.command.ActiveMQBlobMessage.setBlobDownloader(BlobDownloader) may expose internal representation by storing an externally mutable object into ActiveMQBlobMessage.blobDownloader
EI2 org.apache.activemq.command.ActiveMQDestination.setCompositeDestinations(ActiveMQDestination[]) may expose internal representation by storing an externally mutable object into ActiveMQDestination.compositeDestinations
EI2 org.apache.activemq.command.ActiveMQObjectMessage.setTrustedPackages(List) may expose internal representation by storing an externally mutable object into ActiveMQObjectMessage.trustedPackages
EI2 org.apache.activemq.command.ActiveMQTempDestination.setConnection(ActiveMQConnection) may expose internal representation by storing an externally mutable object into ActiveMQTempDestination.connection
EI2 org.apache.activemq.command.BaseCommand.setFrom(Endpoint) may expose internal representation by storing an externally mutable object into BaseCommand.from
EI2 org.apache.activemq.command.BaseCommand.setTo(Endpoint) may expose internal representation by storing an externally mutable object into BaseCommand.to
EI2 org.apache.activemq.command.BaseEndpoint.setBrokerInfo(BrokerInfo) may expose internal representation by storing an externally mutable object into BaseEndpoint.brokerInfo
EI2 org.apache.activemq.command.BrokerInfo.setBrokerId(BrokerId) may expose internal representation by storing an externally mutable object into BrokerInfo.brokerId
EI2 org.apache.activemq.command.BrokerInfo.setPeerBrokerInfos(BrokerInfo[]) may expose internal representation by storing an externally mutable object into BrokerInfo.peerBrokerInfos
EI2 org.apache.activemq.command.BrokerSubscriptionInfo.setBrokerId(BrokerId) may expose internal representation by storing an externally mutable object into BrokerSubscriptionInfo.brokerId
EI2 org.apache.activemq.command.BrokerSubscriptionInfo.setSubscriptionInfos(ConsumerInfo[]) may expose internal representation by storing an externally mutable object into BrokerSubscriptionInfo.subscriptionInfos
EI2 org.apache.activemq.command.ConnectionControl.setToken(byte[]) may expose internal representation by storing an externally mutable object into ConnectionControl.token
EI2 org.apache.activemq.command.ConnectionError.setConnectionId(ConnectionId) may expose internal representation by storing an externally mutable object into ConnectionError.connectionId
EI2 org.apache.activemq.command.ConnectionError.setException(Throwable) may expose internal representation by storing an externally mutable object into ConnectionError.exception
EI2 new org.apache.activemq.command.ConnectionInfo(ConnectionId) may expose internal representation by storing an externally mutable object into ConnectionInfo.connectionId
EI2 org.apache.activemq.command.ConnectionInfo.setBrokerPath(BrokerId[]) may expose internal representation by storing an externally mutable object into ConnectionInfo.brokerPath
EI2 org.apache.activemq.command.ConnectionInfo.setConnectionId(ConnectionId) may expose internal representation by storing an externally mutable object into ConnectionInfo.connectionId
EI2 org.apache.activemq.command.ConsumerControl.setConsumerId(ConsumerId) may expose internal representation by storing an externally mutable object into ConsumerControl.consumerId
EI2 org.apache.activemq.command.ConsumerControl.setDestination(ActiveMQDestination) may expose internal representation by storing an externally mutable object into ConsumerControl.destination
EI2 new org.apache.activemq.command.ConsumerInfo(ConsumerId) may expose internal representation by storing an externally mutable object into ConsumerInfo.consumerId
EI2 org.apache.activemq.command.ConsumerInfo.setBrokerPath(BrokerId[]) may expose internal representation by storing an externally mutable object into ConsumerInfo.brokerPath
EI2 org.apache.activemq.command.ConsumerInfo.setConsumerId(ConsumerId) may expose internal representation by storing an externally mutable object into ConsumerInfo.consumerId
EI2 org.apache.activemq.command.ConsumerInfo.setDestination(ActiveMQDestination) may expose internal representation by storing an externally mutable object into ConsumerInfo.destination
EI2 new org.apache.activemq.command.DataArrayResponse(DataStructure[]) may expose internal representation by storing an externally mutable object into DataArrayResponse.data
EI2 org.apache.activemq.command.DataArrayResponse.setData(DataStructure[]) may expose internal representation by storing an externally mutable object into DataArrayResponse.data
EI2 new org.apache.activemq.command.DestinationInfo(ConnectionId, byte, ActiveMQDestination) may expose internal representation by storing an externally mutable object into DestinationInfo.connectionId
EI2 new org.apache.activemq.command.DestinationInfo(ConnectionId, byte, ActiveMQDestination) may expose internal representation by storing an externally mutable object into DestinationInfo.destination
EI2 org.apache.activemq.command.DestinationInfo.setBrokerPath(BrokerId[]) may expose internal representation by storing an externally mutable object into DestinationInfo.brokerPath
EI2 org.apache.activemq.command.DestinationInfo.setConnectionId(ConnectionId) may expose internal representation by storing an externally mutable object into DestinationInfo.connectionId
EI2 org.apache.activemq.command.DestinationInfo.setDestination(ActiveMQDestination) may expose internal representation by storing an externally mutable object into DestinationInfo.destination
EI2 org.apache.activemq.command.ExceptionResponse.setException(Throwable) may expose internal representation by storing an externally mutable object into ExceptionResponse.exception
EI2 org.apache.activemq.command.JournalQueueAck.setDestination(ActiveMQDestination) may expose internal representation by storing an externally mutable object into JournalQueueAck.destination
EI2 org.apache.activemq.command.JournalQueueAck.setMessageAck(MessageAck) may expose internal representation by storing an externally mutable object into JournalQueueAck.messageAck
EI2 org.apache.activemq.command.JournalTopicAck.setDestination(ActiveMQDestination) may expose internal representation by storing an externally mutable object into JournalTopicAck.destination
EI2 org.apache.activemq.command.JournalTopicAck.setMessageId(MessageId) may expose internal representation by storing an externally mutable object into JournalTopicAck.messageId
EI2 org.apache.activemq.command.KeepAliveInfo.setFrom(Endpoint) may expose internal representation by storing an externally mutable object into KeepAliveInfo.from
EI2 org.apache.activemq.command.KeepAliveInfo.setTo(Endpoint) may expose internal representation by storing an externally mutable object into KeepAliveInfo.to
EI2 new org.apache.activemq.command.LocalTransactionId(ConnectionId, long) may expose internal representation by storing an externally mutable object into LocalTransactionId.connectionId
EI2 org.apache.activemq.command.LocalTransactionId.setConnectionId(ConnectionId) may expose internal representation by storing an externally mutable object into LocalTransactionId.connectionId
EI2 org.apache.activemq.command.Message.setBrokerPath(BrokerId[]) may expose internal representation by storing an externally mutable object into Message.brokerPath
EI2 org.apache.activemq.command.Message.setCluster(BrokerId[]) may expose internal representation by storing an externally mutable object into Message.cluster
EI2 org.apache.activemq.command.Message.setConnection(ActiveMQConnection) may expose internal representation by storing an externally mutable object into Message.connection
EI2 org.apache.activemq.command.Message.setContent(ByteSequence) may expose internal representation by storing an externally mutable object into Message.content
EI2 org.apache.activemq.command.Message.setDestination(ActiveMQDestination) may expose internal representation by storing an externally mutable object into Message.destination
EI2 org.apache.activemq.command.Message.setMarshalledProperties(ByteSequence) may expose internal representation by storing an externally mutable object into Message.marshalledProperties
EI2 org.apache.activemq.command.Message.setMemoryUsage(MemoryUsage) may expose internal representation by storing an externally mutable object into Message.memoryUsage
EI2 org.apache.activemq.command.Message.setMessageId(MessageId) may expose internal representation by storing an externally mutable object into Message.messageId
EI2 org.apache.activemq.command.Message.setOriginalDestination(ActiveMQDestination) may expose internal representation by storing an externally mutable object into Message.originalDestination
EI2 org.apache.activemq.command.Message.setProducerId(ProducerId) may expose internal representation by storing an externally mutable object into Message.producerId
EI2 org.apache.activemq.command.Message.setReplyTo(ActiveMQDestination) may expose internal representation by storing an externally mutable object into Message.replyTo
EI2 org.apache.activemq.command.Message.setTargetConsumerId(ConsumerId) may expose internal representation by storing an externally mutable object into Message.targetConsumerId
EI2 org.apache.activemq.command.MessageAck.setConsumerId(ConsumerId) may expose internal representation by storing an externally mutable object into MessageAck.consumerId
EI2 org.apache.activemq.command.MessageAck.setDestination(ActiveMQDestination) may expose internal representation by storing an externally mutable object into MessageAck.destination
EI2 org.apache.activemq.command.MessageAck.setFirstMessageId(MessageId) may expose internal representation by storing an externally mutable object into MessageAck.firstMessageId
EI2 org.apache.activemq.command.MessageAck.setLastMessageId(MessageId) may expose internal representation by storing an externally mutable object into MessageAck.lastMessageId
EI2 org.apache.activemq.command.MessageAck.setPoisonCause(Throwable) may expose internal representation by storing an externally mutable object into MessageAck.poisonCause
EI2 org.apache.activemq.command.MessageDispatch.setConsumerId(ConsumerId) may expose internal representation by storing an externally mutable object into MessageDispatch.consumerId
EI2 org.apache.activemq.command.MessageDispatch.setDestination(ActiveMQDestination) may expose internal representation by storing an externally mutable object into MessageDispatch.destination
EI2 org.apache.activemq.command.MessageDispatch.setMessage(Message) may expose internal representation by storing an externally mutable object into MessageDispatch.message
EI2 org.apache.activemq.command.MessageDispatch.setRollbackCause(Throwable) may expose internal representation by storing an externally mutable object into MessageDispatch.rollbackCause
EI2 org.apache.activemq.command.MessageDispatchNotification.setConsumerId(ConsumerId) may expose internal representation by storing an externally mutable object into MessageDispatchNotification.consumerId
EI2 org.apache.activemq.command.MessageDispatchNotification.setDestination(ActiveMQDestination) may expose internal representation by storing an externally mutable object into MessageDispatchNotification.destination
EI2 org.apache.activemq.command.MessageDispatchNotification.setMessageId(MessageId) may expose internal representation by storing an externally mutable object into MessageDispatchNotification.messageId
EI2 new org.apache.activemq.command.MessageId(ProducerId, long) may expose internal representation by storing an externally mutable object into MessageId.producerId
EI2 org.apache.activemq.command.MessageId.setProducerId(ProducerId) may expose internal representation by storing an externally mutable object into MessageId.producerId
EI2 org.apache.activemq.command.MessagePull.setConsumerId(ConsumerId) may expose internal representation by storing an externally mutable object into MessagePull.consumerId
EI2 org.apache.activemq.command.MessagePull.setDestination(ActiveMQDestination) may expose internal representation by storing an externally mutable object into MessagePull.destination
EI2 org.apache.activemq.command.MessagePull.setMessageId(MessageId) may expose internal representation by storing an externally mutable object into MessagePull.messageId
EI2 new org.apache.activemq.command.NetworkBridgeFilter(ConsumerInfo, BrokerId, int, int) may expose internal representation by storing an externally mutable object into NetworkBridgeFilter.consumerInfo
EI2 new org.apache.activemq.command.NetworkBridgeFilter(ConsumerInfo, BrokerId, int, int) may expose internal representation by storing an externally mutable object into NetworkBridgeFilter.networkBrokerId
EI2 org.apache.activemq.command.NetworkBridgeFilter.setNetworkBrokerId(BrokerId) may expose internal representation by storing an externally mutable object into NetworkBridgeFilter.networkBrokerId
EI2 org.apache.activemq.command.PartialCommand.setData(byte[]) may expose internal representation by storing an externally mutable object into PartialCommand.data
EI2 org.apache.activemq.command.PartialCommand.setFrom(Endpoint) may expose internal representation by storing an externally mutable object into PartialCommand.from
EI2 org.apache.activemq.command.PartialCommand.setTo(Endpoint) may expose internal representation by storing an externally mutable object into PartialCommand.to
EI2 new org.apache.activemq.command.ProducerAck(ProducerId, int) may expose internal representation by storing an externally mutable object into ProducerAck.producerId
EI2 org.apache.activemq.command.ProducerAck.setProducerId(ProducerId) may expose internal representation by storing an externally mutable object into ProducerAck.producerId
EI2 new org.apache.activemq.command.ProducerInfo(ProducerId) may expose internal representation by storing an externally mutable object into ProducerInfo.producerId
EI2 org.apache.activemq.command.ProducerInfo.setBrokerPath(BrokerId[]) may expose internal representation by storing an externally mutable object into ProducerInfo.brokerPath
EI2 org.apache.activemq.command.ProducerInfo.setDestination(ActiveMQDestination) may expose internal representation by storing an externally mutable object into ProducerInfo.destination
EI2 org.apache.activemq.command.ProducerInfo.setProducerId(ProducerId) may expose internal representation by storing an externally mutable object into ProducerInfo.producerId
EI2 org.apache.activemq.command.RemoveSubscriptionInfo.setConnectionId(ConnectionId) may expose internal representation by storing an externally mutable object into RemoveSubscriptionInfo.connectionId
EI2 new org.apache.activemq.command.SessionInfo(SessionId) may expose internal representation by storing an externally mutable object into SessionInfo.sessionId
EI2 org.apache.activemq.command.SessionInfo.setSessionId(SessionId) may expose internal representation by storing an externally mutable object into SessionInfo.sessionId
EI2 org.apache.activemq.command.SubscriptionInfo.setDestination(ActiveMQDestination) may expose internal representation by storing an externally mutable object into SubscriptionInfo.destination
EI2 org.apache.activemq.command.SubscriptionInfo.setSubscribedDestination(ActiveMQDestination) may expose internal representation by storing an externally mutable object into SubscriptionInfo.subscribedDestination
EI2 new org.apache.activemq.command.TransactionInfo(ConnectionId, TransactionId, byte) may expose internal representation by storing an externally mutable object into TransactionInfo.connectionId
EI2 org.apache.activemq.command.TransactionInfo.setConnectionId(ConnectionId) may expose internal representation by storing an externally mutable object into TransactionInfo.connectionId
EI2 org.apache.activemq.command.WireFormatInfo.setFrom(Endpoint) may expose internal representation by storing an externally mutable object into WireFormatInfo.from
EI2 org.apache.activemq.command.WireFormatInfo.setMagic(byte[]) may expose internal representation by storing an externally mutable object into WireFormatInfo.magic
EI2 org.apache.activemq.command.WireFormatInfo.setMarshalledProperties(ByteSequence) may expose internal representation by storing an externally mutable object into WireFormatInfo.marshalledProperties
EI2 org.apache.activemq.command.WireFormatInfo.setTo(Endpoint) may expose internal representation by storing an externally mutable object into WireFormatInfo.to
EI2 new org.apache.activemq.command.XATransactionId(byte[]) may expose internal representation by storing an externally mutable object into XATransactionId.encodedXidBytes
EI2 org.apache.activemq.command.XATransactionId.setBranchQualifier(byte[]) may expose internal representation by storing an externally mutable object into XATransactionId.branchQualifier
EI2 org.apache.activemq.command.XATransactionId.setGlobalTransactionId(byte[]) may expose internal representation by storing an externally mutable object into XATransactionId.globalTransactionId
EI2 org.apache.activemq.command.XATransactionId.setPreparedAcks(ArrayList) may expose internal representation by storing an externally mutable object into XATransactionId.preparedAcks
EI2 new org.apache.activemq.filter.AnyChildDestinationNode(DestinationNode) may expose internal representation by storing an externally mutable object into AnyChildDestinationNode.node
EI2 org.apache.activemq.filter.DefaultDestinationMapEntry.setValue(DestinationMapEntry) may expose internal representation by storing an externally mutable object into DefaultDestinationMapEntry.value
EI2 org.apache.activemq.filter.DestinationMapEntry.setDestination(ActiveMQDestination) may expose internal representation by storing an externally mutable object into DestinationMapEntry.destination
EI2 new org.apache.activemq.filter.DestinationMapNode(DestinationMapNode) may expose internal representation by storing an externally mutable object into DestinationMapNode.parent
EI2 org.apache.activemq.filter.MessageEvaluationContext.setDestination(ActiveMQDestination) may expose internal representation by storing an externally mutable object into MessageEvaluationContext.destination
EI2 new org.apache.activemq.filter.MultiExpressionEvaluator$CacheExpression(MultiExpressionEvaluator, Expression) may expose internal representation by storing an externally mutable object into MultiExpressionEvaluator$CacheExpression.this$0
EI2 new org.apache.activemq.filter.SimpleDestinationFilter(ActiveMQDestination) may expose internal representation by storing an externally mutable object into SimpleDestinationFilter.destination
EI2 org.apache.activemq.jndi.JNDIBaseStorable.setProperties(Properties) may expose internal representation by storing an externally mutable object into JNDIBaseStorable.properties
EI2 new org.apache.activemq.management.CountStatisticImpl(CountStatisticImpl, String, String) may expose internal representation by storing an externally mutable object into CountStatisticImpl.parent
EI2 org.apache.activemq.management.CountStatisticImpl.setParent(CountStatisticImpl) may expose internal representation by storing an externally mutable object into CountStatisticImpl.parent
EI2 new org.apache.activemq.management.JCAConnectionPoolStatsImpl(String, String, TimeStatisticImpl, TimeStatisticImpl, CountStatisticImpl, CountStatisticImpl, BoundedRangeStatisticImpl, BoundedRangeStatisticImpl, RangeStatisticImpl) may expose internal representation by storing an externally mutable object into JCAConnectionPoolStatsImpl.closeCount
EI2 new org.apache.activemq.management.JCAConnectionPoolStatsImpl(String, String, TimeStatisticImpl, TimeStatisticImpl, CountStatisticImpl, CountStatisticImpl, BoundedRangeStatisticImpl, BoundedRangeStatisticImpl, RangeStatisticImpl) may expose internal representation by storing an externally mutable object into JCAConnectionPoolStatsImpl.createCount
EI2 new org.apache.activemq.management.JCAConnectionPoolStatsImpl(String, String, TimeStatisticImpl, TimeStatisticImpl, CountStatisticImpl, CountStatisticImpl, BoundedRangeStatisticImpl, BoundedRangeStatisticImpl, RangeStatisticImpl) may expose internal representation by storing an externally mutable object into JCAConnectionPoolStatsImpl.freePoolSize
EI2 new org.apache.activemq.management.JCAConnectionPoolStatsImpl(String, String, TimeStatisticImpl, TimeStatisticImpl, CountStatisticImpl, CountStatisticImpl, BoundedRangeStatisticImpl, BoundedRangeStatisticImpl, RangeStatisticImpl) may expose internal representation by storing an externally mutable object into JCAConnectionPoolStatsImpl.poolSize
EI2 new org.apache.activemq.management.JCAConnectionPoolStatsImpl(String, String, TimeStatisticImpl, TimeStatisticImpl, CountStatisticImpl, CountStatisticImpl, BoundedRangeStatisticImpl, BoundedRangeStatisticImpl, RangeStatisticImpl) may expose internal representation by storing an externally mutable object into JCAConnectionPoolStatsImpl.waitingThreadCount
EI2 new org.apache.activemq.management.JCAConnectionStatsImpl(String, String, TimeStatisticImpl, TimeStatisticImpl) may expose internal representation by storing an externally mutable object into JCAConnectionStatsImpl.useTime
EI2 new org.apache.activemq.management.JCAConnectionStatsImpl(String, String, TimeStatisticImpl, TimeStatisticImpl) may expose internal representation by storing an externally mutable object into JCAConnectionStatsImpl.waitTime
EI2 new org.apache.activemq.management.JCAStatsImpl(JCAConnectionStatsImpl[], JCAConnectionPoolStatsImpl[]) may expose internal representation by storing an externally mutable object into JCAStatsImpl.connectionPoolStats
EI2 new org.apache.activemq.management.JCAStatsImpl(JCAConnectionStatsImpl[], JCAConnectionPoolStatsImpl[]) may expose internal representation by storing an externally mutable object into JCAStatsImpl.connectionStats
EI2 new org.apache.activemq.management.JMSConnectionStatsImpl(List, boolean) may expose internal representation by storing an externally mutable object into JMSConnectionStatsImpl.sessions
EI2 new org.apache.activemq.management.JMSEndpointStatsImpl(CountStatisticImpl, CountStatisticImpl, CountStatisticImpl, TimeStatisticImpl, TimeStatisticImpl) may expose internal representation by storing an externally mutable object into JMSEndpointStatsImpl.expiredMessageCount
EI2 new org.apache.activemq.management.JMSEndpointStatsImpl(CountStatisticImpl, CountStatisticImpl, CountStatisticImpl, TimeStatisticImpl, TimeStatisticImpl) may expose internal representation by storing an externally mutable object into JMSEndpointStatsImpl.messageCount
EI2 new org.apache.activemq.management.JMSEndpointStatsImpl(CountStatisticImpl, CountStatisticImpl, CountStatisticImpl, TimeStatisticImpl, TimeStatisticImpl) may expose internal representation by storing an externally mutable object into JMSEndpointStatsImpl.messageRateTime
EI2 new org.apache.activemq.management.JMSEndpointStatsImpl(CountStatisticImpl, CountStatisticImpl, CountStatisticImpl, TimeStatisticImpl, TimeStatisticImpl) may expose internal representation by storing an externally mutable object into JMSEndpointStatsImpl.messageWaitTime
EI2 new org.apache.activemq.management.JMSEndpointStatsImpl(CountStatisticImpl, CountStatisticImpl, CountStatisticImpl, TimeStatisticImpl, TimeStatisticImpl) may expose internal representation by storing an externally mutable object into JMSEndpointStatsImpl.pendingMessageCount
EI2 new org.apache.activemq.management.JMSSessionStatsImpl(List, List) may expose internal representation by storing an externally mutable object into JMSSessionStatsImpl.consumers
EI2 new org.apache.activemq.management.JMSSessionStatsImpl(List, List) may expose internal representation by storing an externally mutable object into JMSSessionStatsImpl.producers
EI2 org.apache.activemq.management.PollCountStatisticImpl.setParent(PollCountStatisticImpl) may expose internal representation by storing an externally mutable object into PollCountStatisticImpl.parent
EI2 new org.apache.activemq.management.SizeStatisticImpl(SizeStatisticImpl, String, String) may expose internal representation by storing an externally mutable object into SizeStatisticImpl.parent
EI2 org.apache.activemq.management.SizeStatisticImpl.setParent(SizeStatisticImpl) may expose internal representation by storing an externally mutable object into SizeStatisticImpl.parent
EI2 new org.apache.activemq.management.StatsImpl(Set) may expose internal representation by storing an externally mutable object into StatsImpl.set
EI2 new org.apache.activemq.management.TimeStatisticImpl(TimeStatisticImpl, String, String) may expose internal representation by storing an externally mutable object into TimeStatisticImpl.parent
EI2 org.apache.activemq.management.TimeStatisticImpl.setParent(TimeStatisticImpl) may expose internal representation by storing an externally mutable object into TimeStatisticImpl.parent
EI2 org.apache.activemq.openwire.OpenWireFormat.setPreferedWireFormatInfo(WireFormatInfo) may expose internal representation by storing an externally mutable object into OpenWireFormat.preferedWireFormatInfo
EI2 new org.apache.activemq.selector.SelectorParserTokenManager(SimpleCharStream) may expose internal representation by storing an externally mutable object into SelectorParserTokenManager.input_stream
EI2 org.apache.activemq.selector.SelectorParserTokenManager.ReInit(SimpleCharStream) may expose internal representation by storing an externally mutable object into SelectorParserTokenManager.input_stream
EI2 new org.apache.activemq.state.ConnectionState(ConnectionInfo) may expose internal representation by storing an externally mutable object into ConnectionState.info
EI2 org.apache.activemq.state.ConnectionState.reset(ConnectionInfo) may expose internal representation by storing an externally mutable object into ConnectionState.info
EI2 new org.apache.activemq.state.ConsumerState(ConsumerInfo) may expose internal representation by storing an externally mutable object into ConsumerState.info
EI2 new org.apache.activemq.state.ProducerState(ProducerInfo) may expose internal representation by storing an externally mutable object into ProducerState.info
EI2 org.apache.activemq.state.ProducerState.setTransactionState(TransactionState) may expose internal representation by storing an externally mutable object into ProducerState.transactionState
EI2 new org.apache.activemq.state.SessionState(SessionInfo) may expose internal representation by storing an externally mutable object into SessionState.info
EI2 org.apache.activemq.thread.TaskRunnerFactory.setThreadClassLoader(ClassLoader) may expose internal representation by storing an externally mutable object into TaskRunnerFactory.threadClassLoader
EI2 new org.apache.activemq.transport.AbstractInactivityMonitor(Transport, WireFormat) may expose internal representation by storing an externally mutable object into AbstractInactivityMonitor.wireFormat
EI2 new org.apache.activemq.transport.CommandJoiner(Transport, OpenWireFormat) may expose internal representation by storing an externally mutable object into CommandJoiner.wireFormat
EI2 new org.apache.activemq.transport.FutureResponse(ResponseCallback, TransportFilter) may expose internal representation by storing an externally mutable object into FutureResponse.transportFilter
EI2 new org.apache.activemq.transport.MarshallingTransportFilter(Transport, WireFormat, WireFormat) may expose internal representation by storing an externally mutable object into MarshallingTransportFilter.localWireFormat
EI2 new org.apache.activemq.transport.MarshallingTransportFilter(Transport, WireFormat, WireFormat) may expose internal representation by storing an externally mutable object into MarshallingTransportFilter.remoteWireFormat
EI2 new org.apache.activemq.transport.ResponseCorrelator(Transport, IntSequenceGenerator) may expose internal representation by storing an externally mutable object into ResponseCorrelator.sequenceGenerator
EI2 new org.apache.activemq.transport.TransportFilter(Transport) may expose internal representation by storing an externally mutable object into TransportFilter.next
EI2 new org.apache.activemq.transport.TransportServerFilter(TransportServer) may expose internal representation by storing an externally mutable object into TransportServerFilter.next
EI2 org.apache.activemq.transport.TransportServerSupport.setTransportOption(Map) may expose internal representation by storing an externally mutable object into TransportServerSupport.transportOptions
EI2 new org.apache.activemq.transport.WireFormatNegotiator(Transport, OpenWireFormat, int) may expose internal representation by storing an externally mutable object into WireFormatNegotiator.wireFormat
EI2 new org.apache.activemq.transport.discovery.DiscoveryTransport(CompositeTransport) may expose internal representation by storing an externally mutable object into DiscoveryTransport.next
EI2 org.apache.activemq.transport.discovery.DiscoveryTransport.setDiscoveryAgent(DiscoveryAgent) may expose internal representation by storing an externally mutable object into DiscoveryTransport.discoveryAgent
EI2 org.apache.activemq.transport.discovery.DiscoveryTransport.setParameters(Map) may expose internal representation by storing an externally mutable object into DiscoveryTransport.parameters
EI2 org.apache.activemq.transport.discovery.masterslave.MasterSlaveDiscoveryAgent.setServices(String[]) may expose internal representation by storing an externally mutable object into MasterSlaveDiscoveryAgent.msServices
EI2 org.apache.activemq.transport.discovery.simple.SimpleDiscoveryAgent.setServices(String[]) may expose internal representation by storing an externally mutable object into SimpleDiscoveryAgent.services
EI2 org.apache.activemq.transport.discovery.zeroconf.ZeroconfDiscoveryAgent.setJmdns(JmDNS) may expose internal representation by storing an externally mutable object into ZeroconfDiscoveryAgent.jmdns
EI2 org.apache.activemq.transport.discovery.zeroconf.ZeroconfDiscoveryAgent.setLocalAddress(InetAddress) may expose internal representation by storing an externally mutable object into ZeroconfDiscoveryAgent.localAddress
EI2 new org.apache.activemq.transport.mock.MockTransport(Transport) may expose internal representation by storing an externally mutable object into MockTransport.next
EI2 org.apache.activemq.transport.mock.MockTransport.setNext(Transport) may expose internal representation by storing an externally mutable object into MockTransport.next
EI2 new org.apache.activemq.transport.nio.NIOBufferedInputStream(ReadableByteChannel, int) may expose internal representation by storing an externally mutable object into NIOBufferedInputStream.sc
EI2 new org.apache.activemq.transport.nio.NIOOutputStream(WritableByteChannel, int) may expose internal representation by storing an externally mutable object into NIOOutputStream.out
EI2 org.apache.activemq.transport.nio.NIOOutputStream.setEngine(SSLEngine) may expose internal representation by storing an externally mutable object into NIOOutputStream.engine
EI2 new org.apache.activemq.transport.nio.NIOSSLTransport(WireFormat, Socket, SSLEngine, TcpTransport$InitBuffer, ByteBuffer) may expose internal representation by storing an externally mutable object into NIOSSLTransport.sslEngine
EI2 org.apache.activemq.transport.nio.NIOSSLTransport.setEnabledCipherSuites(String[]) may expose internal representation by storing an externally mutable object into NIOSSLTransport.enabledCipherSuites
EI2 org.apache.activemq.transport.nio.NIOSSLTransport.setEnabledProtocols(String[]) may expose internal representation by storing an externally mutable object into NIOSSLTransport.enabledProtocols
EI2 new org.apache.activemq.transport.nio.SelectorSelection(SelectorWorker, AbstractSelectableChannel, SelectorManager$Listener) may expose internal representation by storing an externally mutable object into SelectorSelection.worker
EI2 new org.apache.activemq.transport.nio.SelectorWorker(SelectorManager) may expose internal representation by storing an externally mutable object into SelectorWorker.manager
EI2 new org.apache.activemq.transport.reliable.ReliableTransport(Transport, UdpTransport) may expose internal representation by storing an externally mutable object into ReliableTransport.udpTransport
EI2 org.apache.activemq.transport.reliable.ReliableTransport.setReplayBuffer(ReplayBuffer) may expose internal representation by storing an externally mutable object into ReliableTransport.replayBuffer
EI2 org.apache.activemq.transport.tcp.ResponseHolder.setResponse(Response) may expose internal representation by storing an externally mutable object into ResponseHolder.response
EI2 new org.apache.activemq.transport.tcp.TcpTransport(WireFormat, Socket, TcpTransport$InitBuffer) may expose internal representation by storing an externally mutable object into TcpTransport.socket
EI2 new org.apache.activemq.transport.tcp.TcpTransport(WireFormat, Socket, TcpTransport$InitBuffer) may expose internal representation by storing an externally mutable object into TcpTransport.wireFormat
EI2 new org.apache.activemq.transport.tcp.TcpTransport(WireFormat, SocketFactory, URI, URI) may expose internal representation by storing an externally mutable object into TcpTransport.wireFormat
EI2 new org.apache.activemq.transport.tcp.TcpTransportServer$TransportInfo(TcpTransportServer, WireFormat, Transport, TransportFactory) may expose internal representation by storing an externally mutable object into TcpTransportServer$TransportInfo.format
EI2 new org.apache.activemq.transport.tcp.TcpTransportServer$TransportInfo(TcpTransportServer, WireFormat, Transport, TransportFactory) may expose internal representation by storing an externally mutable object into TcpTransportServer$TransportInfo.this$0
EI2 new org.apache.activemq.transport.tcp.TcpTransportServer$TransportInfo(TcpTransportServer, WireFormat, Transport, TransportFactory) may expose internal representation by storing an externally mutable object into TcpTransportServer$TransportInfo.transport
EI2 new org.apache.activemq.transport.udp.CommandChannelSupport(UdpTransport, OpenWireFormat, int, SocketAddress, DatagramHeaderMarshaller) may expose internal representation by storing an externally mutable object into CommandChannelSupport.headerMarshaller
EI2 new org.apache.activemq.transport.udp.CommandChannelSupport(UdpTransport, OpenWireFormat, int, SocketAddress, DatagramHeaderMarshaller) may expose internal representation by storing an externally mutable object into CommandChannelSupport.wireFormat
EI2 org.apache.activemq.transport.udp.CommandChannelSupport.setHeaderMarshaller(DatagramHeaderMarshaller) may expose internal representation by storing an externally mutable object into CommandChannelSupport.headerMarshaller
EI2 org.apache.activemq.transport.udp.CommandChannelSupport.setReplayBuffer(ReplayBuffer) may expose internal representation by storing an externally mutable object into CommandChannelSupport.replayBuffer
EI2 new org.apache.activemq.transport.udp.CommandDatagramChannel(UdpTransport, OpenWireFormat, int, SocketAddress, DatagramHeaderMarshaller, DatagramChannel, ByteBufferPool) may expose internal representation by storing an externally mutable object into CommandDatagramChannel.bufferPool
EI2 new org.apache.activemq.transport.udp.CommandDatagramChannel(UdpTransport, OpenWireFormat, int, SocketAddress, DatagramHeaderMarshaller, DatagramChannel, ByteBufferPool) may expose internal representation by storing an externally mutable object into CommandDatagramChannel.channel
EI2 org.apache.activemq.transport.udp.CommandDatagramChannel.setBufferPool(ByteBufferPool) may expose internal representation by storing an externally mutable object into CommandDatagramChannel.bufferPool
EI2 new org.apache.activemq.transport.udp.CommandDatagramSocket(UdpTransport, OpenWireFormat, int, SocketAddress, DatagramHeaderMarshaller, DatagramSocket) may expose internal representation by storing an externally mutable object into CommandDatagramSocket.channel
EI2 new org.apache.activemq.transport.udp.ResponseRedirectInterceptor(Transport, UdpTransport) may expose internal representation by storing an externally mutable object into ResponseRedirectInterceptor.transport
EI2 org.apache.activemq.transport.udp.UdpTransport.setBufferPool(ByteBufferPool) may expose internal representation by storing an externally mutable object into UdpTransport.bufferPool
EI2 org.apache.activemq.transport.udp.UdpTransport.setCommandChannel(CommandDatagramChannel) may expose internal representation by storing an externally mutable object into UdpTransport.commandChannel
EI2 org.apache.activemq.transport.udp.UdpTransport.setReplayBuffer(ReplayBuffer) may expose internal representation by storing an externally mutable object into UdpTransport.replayBuffer
EI2 org.apache.activemq.transport.udp.UdpTransport.setSequenceGenerator(IntSequenceGenerator) may expose internal representation by storing an externally mutable object into UdpTransport.sequenceGenerator
EI2 new org.apache.activemq.transport.udp.UdpTransportServer(URI, UdpTransport, Transport, ReplayStrategy) may expose internal representation by storing an externally mutable object into UdpTransportServer.configuredTransport
EI2 new org.apache.activemq.transport.udp.UdpTransportServer(URI, UdpTransport, Transport, ReplayStrategy) may expose internal representation by storing an externally mutable object into UdpTransportServer.serverTransport
EI2 new org.apache.activemq.usage.Usage(Usage, String, float) may expose internal representation by storing an externally mutable object into Usage.parent
EI2 org.apache.activemq.usage.Usage.setExecutor(ThreadPoolExecutor) may expose internal representation by storing an externally mutable object into Usage.executor
EI2 org.apache.activemq.usage.Usage.setLimiter(UsageCapacity) may expose internal representation by storing an externally mutable object into Usage.limiter
EI2 org.apache.activemq.usage.Usage.setParent(Usage) may expose internal representation by storing an externally mutable object into Usage.parent
EI2 new org.apache.activemq.util.ByteArrayInputStream(byte[], int, int) may expose internal representation by storing an externally mutable object into ByteArrayInputStream.buffer
EI2 org.apache.activemq.util.ClassLoadingAwareObjectInputStream.setTrustedPackages(List) may expose internal representation by storing an externally mutable object into ClassLoadingAwareObjectInputStream.trustedPackages
EI2 new org.apache.activemq.util.ConsumerThread(Session, Destination) may expose internal representation by storing an externally mutable object into ConsumerThread.session
EI2 new org.apache.activemq.util.DataByteArrayInputStream(byte[]) may expose internal representation by storing an externally mutable object into DataByteArrayInputStream.buf
EI2 org.apache.activemq.util.DataByteArrayInputStream.restart(byte[]) may expose internal representation by storing an externally mutable object into DataByteArrayInputStream.buf
EI2 new org.apache.activemq.util.IndentPrinter(PrintWriter, String) may expose internal representation by storing an externally mutable object into IndentPrinter.out
EI2 new org.apache.activemq.util.ProducerThread(Session, Destination) may expose internal representation by storing an externally mutable object into ProducerThread.session
EI2 org.apache.activemq.util.ServiceStopper.onException(Object, Throwable) may expose internal representation by storing an externally mutable object into ServiceStopper.firstException
MS org.apache.activemq.ActiveMQConnection.DEFAULT_THREAD_POOL_SIZE isn't final but should be
MS org.apache.activemq.TransportLoggerSupport.defaultLogWriterName isn't final but should be
MS org.apache.activemq.TransportLoggerSupport.defaultJmxPort isn't final but should be
MS Public static org.apache.activemq.advisory.AdvisorySupport.getAgentDestination() may expose internal representation by returning AdvisorySupport.AGENT_TOPIC_DESTINATION
MS org.apache.activemq.command.ActiveMQDestination.unresolvableDestinationTransformer should be package protected
MS org.apache.activemq.filter.FunctionCallExpression.functionRegistry is a mutable collection which should be package protected
MS Public static org.apache.activemq.openwire.v1.MarshallerFactory.createMarshallerMap(OpenWireFormat) may expose internal representation by returning MarshallerFactory.MARSHALLER
MS Public static org.apache.activemq.openwire.v10.MarshallerFactory.createMarshallerMap(OpenWireFormat) may expose internal representation by returning MarshallerFactory.marshaller
MS Public static org.apache.activemq.openwire.v11.MarshallerFactory.createMarshallerMap(OpenWireFormat) may expose internal representation by returning MarshallerFactory.marshaller
MS Public static org.apache.activemq.openwire.v12.MarshallerFactory.createMarshallerMap(OpenWireFormat) may expose internal representation by returning MarshallerFactory.marshaller
MS Public static org.apache.activemq.openwire.v9.MarshallerFactory.createMarshallerMap(OpenWireFormat) may expose internal representation by returning MarshallerFactory.marshaller
MS org.apache.activemq.selector.SelectorParserConstants.tokenImage should be moved out of an interface and made package protected
MS org.apache.activemq.selector.SelectorParserTokenManager.jjstrLiteralImages should be package protected
MS Public static org.apache.activemq.thread.DefaultThreadPools.getDefaultTaskRunnerFactory() may expose internal representation by returning DefaultThreadPools.DEFAULT_TASK_RUNNER_FACTORY
MS org.apache.activemq.transport.WriteTimeoutFilter.sleep should be package protected
MS org.apache.activemq.transport.WriteTimeoutFilter.writers isn't final but should be
MS org.apache.activemq.util.ClassLoadingAwareObjectInputStream.serializablePackages is a mutable array
VSC The method 'org.apache.activemq.util.IdGenerator.<static initializer for IdGenerator>()' performs security check by using 'SecurityManager.checkPropertiesAccess()' method of Security Manager Class, but is overrideable. Declare the method final or private in order to resolve the issue.

Multithreaded correctness Warnings

Code Warning
DC Possible double-check on org.apache.activemq.ActiveMQMessageConsumer.clearDeliveredList in org.apache.activemq.ActiveMQMessageConsumer.clearDeliveredList()
IS Inconsistent synchronization of org.apache.activemq.ActiveMQConnection.scheduler; locked 66% of time
IS Inconsistent synchronization of org.apache.activemq.ActiveMQConnection.sessionTaskRunner; locked 60% of time
IS Inconsistent synchronization of org.apache.activemq.ActiveMQConnection.watchTopicAdvisories; locked 66% of time
IS Inconsistent synchronization of org.apache.activemq.ActiveMQConnectionFactory.clientIDPrefix; locked 50% of time
IS Inconsistent synchronization of org.apache.activemq.ActiveMQConnectionFactory.clientIdGenerator; locked 80% of time
IS Inconsistent synchronization of org.apache.activemq.ActiveMQConnectionFactory.connectionIDPrefix; locked 66% of time
IS Inconsistent synchronization of org.apache.activemq.ActiveMQConnectionFactory.connectionIdGenerator; locked 80% of time
IS Inconsistent synchronization of org.apache.activemq.command.ConsumerInfo.networkConsumerIds; locked 52% of time
IS Inconsistent synchronization of org.apache.activemq.command.DiscoveryEvent.serviceName; locked 66% of time
IS Inconsistent synchronization of org.apache.activemq.command.XATransactionId.encodedXidBytes; locked 75% of time
IS Inconsistent synchronization of org.apache.activemq.management.SizeStatisticImpl.parent; locked 50% of time
IS Inconsistent synchronization of org.apache.activemq.management.TimeStatisticImpl.parent; locked 50% of time
IS Inconsistent synchronization of org.apache.activemq.transport.AbstractInactivityMonitor.readCheckTime; locked 57% of time
IS Inconsistent synchronization of org.apache.activemq.transport.AbstractInactivityMonitor.writeCheckTime; locked 66% of time
JLM Synchronization performed on java.util.concurrent.CopyOnWriteArrayList in org.apache.activemq.ActiveMQConnection.doStop(boolean)
UL org.apache.activemq.transport.AbstractInactivityMonitor.oneway(Object) does not release lock on all exception paths
VO Increment of volatile field org.apache.activemq.transport.tcp.TcpTransport.receiveCounter in org.apache.activemq.transport.tcp.TcpTransport$2.fill()
VO Increment of volatile field org.apache.activemq.transport.tcp.TcpTransport.receiveCounter in org.apache.activemq.transport.tcp.TcpTransport$2.read()
VO Increment of volatile field org.apache.activemq.transport.tcp.TcpTransport.receiveCounter in org.apache.activemq.transport.tcp.TcpTransport$2.read(byte[], int, int)
VO Increment of volatile field org.apache.activemq.transport.tcp.TcpTransport.receiveCounter in org.apache.activemq.transport.tcp.TcpTransport$2.skip(long)
VO Increment of volatile field org.apache.activemq.transport.udp.CommandDatagramChannel.receiveCounter in org.apache.activemq.transport.udp.CommandDatagramChannel.read()
VO Increment of volatile field org.apache.activemq.transport.udp.CommandDatagramSocket.receiveCounter in org.apache.activemq.transport.udp.CommandDatagramSocket.read()

Performance Warnings

Code Warning
Bx org.apache.activemq.broker.scheduler.CronParser.isCurrent(CronParser$CronEntry, int) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead
Bx Boxing/unboxing to parse a primitive org.apache.activemq.command.ActiveMQMapMessage.getDouble(String)
Bx Boxing/unboxing to parse a primitive org.apache.activemq.command.ActiveMQMapMessage.getFloat(String)
Bx Boxing/unboxing to parse a primitive org.apache.activemq.command.ActiveMQMapMessage.getInt(String)
Bx Boxing/unboxing to parse a primitive org.apache.activemq.command.ActiveMQMapMessage.getLong(String)
Bx Boxing/unboxing to parse a primitive org.apache.activemq.command.ActiveMQStreamMessage.readDouble()
Bx Boxing/unboxing to parse a primitive org.apache.activemq.command.ActiveMQStreamMessage.readFloat()
Bx Boxing/unboxing to parse a primitive org.apache.activemq.command.ActiveMQStreamMessage.readInt()
Bx Boxing/unboxing to parse a primitive org.apache.activemq.command.ActiveMQStreamMessage.readLong()
Bx Primitive boxed just to call toString in org.apache.activemq.command.ActiveMQStreamMessage.readString()
Bx Primitive boxed just to call toString in org.apache.activemq.command.ActiveMQStreamMessage.readString()
Bx Primitive boxed just to call toString in org.apache.activemq.command.ActiveMQStreamMessage.readString()
Bx Primitive boxed just to call toString in org.apache.activemq.command.ActiveMQStreamMessage.readString()
Bx Primitive boxed just to call toString in org.apache.activemq.command.ActiveMQStreamMessage.readString()
Bx Primitive boxed just to call toString in org.apache.activemq.command.ActiveMQStreamMessage.readString()
Bx Primitive boxed just to call toString in org.apache.activemq.command.ActiveMQStreamMessage.readString()
Bx org.apache.activemq.command.ActiveMQStreamMessage.readString() invokes inefficient new Byte(byte) constructor; use Byte.valueOf(byte) instead
Bx org.apache.activemq.command.ActiveMQStreamMessage.readString() invokes inefficient new Character(char) constructor; use Character.valueOf(char) instead
Bx org.apache.activemq.command.ActiveMQStreamMessage.readString() invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead
Bx org.apache.activemq.command.ActiveMQStreamMessage.readString() invokes inefficient new Long(long) constructor; use Long.valueOf(long) instead
Bx org.apache.activemq.command.ActiveMQStreamMessage.readString() invokes inefficient new Short(short) constructor; use Short.valueOf(short) instead
Bx org.apache.activemq.command.WireFormatInfo.setCacheSize(int) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead
Bx org.apache.activemq.command.WireFormatInfo.setMaxFrameSize(long) invokes inefficient new Long(long) constructor; use Long.valueOf(long) instead
Bx org.apache.activemq.command.WireFormatInfo.setMaxInactivityDuration(long) invokes inefficient new Long(long) constructor; use Long.valueOf(long) instead
Bx org.apache.activemq.command.WireFormatInfo.setMaxInactivityDurationInitalDelay(long) invokes inefficient new Long(long) constructor; use Long.valueOf(long) instead
Bx org.apache.activemq.filter.ArithmeticExpression.minus(Number, Number) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead
Bx org.apache.activemq.filter.ArithmeticExpression.minus(Number, Number) invokes inefficient new Long(long) constructor; use Long.valueOf(long) instead
Bx org.apache.activemq.filter.ArithmeticExpression.multiply(Number, Number) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead
Bx org.apache.activemq.filter.ArithmeticExpression.multiply(Number, Number) invokes inefficient new Long(long) constructor; use Long.valueOf(long) instead
Bx org.apache.activemq.filter.ArithmeticExpression.plus(Number, Number) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead
Bx org.apache.activemq.filter.ArithmeticExpression.plus(Number, Number) invokes inefficient new Long(long) constructor; use Long.valueOf(long) instead
Bx Boxed value is unboxed and then immediately reboxed in org.apache.activemq.filter.ComparisonExpression.compare(Comparable, Comparable)
Bx org.apache.activemq.filter.ComparisonExpression$LikeExpression.append(StringBuffer, char) invokes inefficient new Character(char) constructor; use Character.valueOf(char) instead
Bx org.apache.activemq.filter.ConstantExpression.createFromDecimal(String) invokes inefficient new Long(String) constructor; use Long.valueOf(String) instead
Bx org.apache.activemq.filter.PropertyExpression$14.evaluate(Message) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead
Bx org.apache.activemq.filter.UnaryExpression.negate(Number) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead
Bx org.apache.activemq.filter.UnaryExpression.negate(Number) invokes inefficient new Long(long) constructor; use Long.valueOf(long) instead
Bx org.apache.activemq.openwire.OpenWireFormat.addToMarshallCache(DataStructure) invokes inefficient new Short(short) constructor; use Short.valueOf(short) instead
Bx org.apache.activemq.openwire.v1.BaseDataStreamMarshaller.looseUnmarsalThrowable(OpenWireFormat, DataInput) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead
Bx org.apache.activemq.openwire.v1.BaseDataStreamMarshaller.tightUnmarsalThrowable(OpenWireFormat, DataInput, BooleanStream) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead
Bx org.apache.activemq.transport.ResponseCorrelator.asyncRequest(Object, ResponseCallback) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead
Bx org.apache.activemq.transport.fanout.FanoutTransport.oneway(Object) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead
Bx org.apache.activemq.transport.fanout.FanoutTransport$FanoutTransportHandler.onCommand(Object) invokes inefficient new Integer(int) constructor; use Integer.valueOf(int) instead
Dm org.apache.activemq.transport.failover.FailoverTransport.getConnectList() uses the nextDouble method of Random to generate a random integer; using nextInt is more efficient
SBSC org.apache.activemq.SimplePriorityMessageDispatchChannel.toString() concatenates strings using + in a loop
SBSC org.apache.activemq.selector.ParseException.initialise(Token, int[][], String[]) concatenates strings using + in a loop
SIC Should org.apache.activemq.ActiveMQMessageConsumer$PreviouslyDeliveredMap be a _static_ inner class?
SIC Should org.apache.activemq.transport.discovery.simple.SimpleDiscoveryAgent$SimpleDiscoveryEvent be a _static_ inner class?
SIC Should org.apache.activemq.transport.tcp.TcpTransportServer$TransportInfo be a _static_ inner class?
SS Unread field: org.apache.activemq.command.XATransactionId.XID_PREFIX_SIZE; should this field be static?
SS Unread field: org.apache.activemq.transport.fanout.FanoutTransport.useExponentialBackOff; should this field be static?
WMI org.apache.activemq.util.IntrospectionSupport.extractProperties(Map, String) makes inefficient use of keySet iterator instead of entrySet iterator
WMI org.apache.activemq.util.IntrospectionSupport.setProperties(Object, Map, String) makes inefficient use of keySet iterator instead of entrySet iterator
WMI org.apache.activemq.util.IntrospectionSupport.toString(Object, Class, Map) makes inefficient use of keySet iterator instead of entrySet iterator
WMI org.apache.activemq.util.MarshallingSupport.marshalPrimitiveMap(Map, DataOutputStream) makes inefficient use of keySet iterator instead of entrySet iterator
WMI org.apache.activemq.util.URISupport.createQueryString(Map) makes inefficient use of keySet iterator instead of entrySet iterator

Dodgy code Warnings

Code Warning
BC instanceof will always return true for all non-null values in org.apache.activemq.filter.DestinationMap.get(ActiveMQDestination), since all java.util.Set are instances of java.util.Set
BC instanceof will always return true for all non-null values in org.apache.activemq.management.JMSEndpointStatsImpl.setParent(CountStatisticImpl, CountStatisticImpl), since all org.apache.activemq.management.CountStatisticImpl are instances of org.apache.activemq.management.CountStatisticImpl
BC instanceof will always return true for all non-null values in org.apache.activemq.management.JMSEndpointStatsImpl.setParent(TimeStatisticImpl, TimeStatisticImpl), since all org.apache.activemq.management.TimeStatisticImpl are instances of org.apache.activemq.management.TimeStatisticImpl
BC Unchecked/unconfirmed cast from org.apache.activemq.command.DiscoveryEvent to org.apache.activemq.transport.discovery.simple.SimpleDiscoveryAgent$SimpleDiscoveryEvent in org.apache.activemq.transport.discovery.simple.SimpleDiscoveryAgent.serviceFailed(DiscoveryEvent)
BC Unchecked/unconfirmed cast from java.net.Socket to javax.net.ssl.SSLSocket in org.apache.activemq.transport.tcp.SslTransportFactory.createTransport(WireFormat, Socket, TcpTransport$InitBuffer)
DLS Dead store to info in org.apache.activemq.openwire.v1.ConnectionControlMarshaller.tightMarshal2(OpenWireFormat, Object, DataOutput, BooleanStream)
DLS Dead store to info in org.apache.activemq.openwire.v1.IntegerResponseMarshaller.tightMarshal1(OpenWireFormat, Object, BooleanStream)
DLS Dead store to info in org.apache.activemq.openwire.v1.ReplayCommandMarshaller.tightMarshal1(OpenWireFormat, Object, BooleanStream)
DLS Dead store to info in org.apache.activemq.openwire.v1.ResponseMarshaller.tightMarshal1(OpenWireFormat, Object, BooleanStream)
DLS Dead store to info in org.apache.activemq.openwire.v10.IntegerResponseMarshaller.tightMarshal1(OpenWireFormat, Object, BooleanStream)
DLS Dead store to info in org.apache.activemq.openwire.v10.ReplayCommandMarshaller.tightMarshal1(OpenWireFormat, Object, BooleanStream)
DLS Dead store to info in org.apache.activemq.openwire.v10.ResponseMarshaller.tightMarshal1(OpenWireFormat, Object, BooleanStream)
DLS Dead store to info in org.apache.activemq.openwire.v11.IntegerResponseMarshaller.tightMarshal1(OpenWireFormat, Object, BooleanStream)
DLS Dead store to info in org.apache.activemq.openwire.v11.ReplayCommandMarshaller.tightMarshal1(OpenWireFormat, Object, BooleanStream)
DLS Dead store to info in org.apache.activemq.openwire.v11.ResponseMarshaller.tightMarshal1(OpenWireFormat, Object, BooleanStream)
DLS Dead store to info in org.apache.activemq.openwire.v12.IntegerResponseMarshaller.tightMarshal1(OpenWireFormat, Object, BooleanStream)
DLS Dead store to info in org.apache.activemq.openwire.v12.ReplayCommandMarshaller.tightMarshal1(OpenWireFormat, Object, BooleanStream)
DLS Dead store to info in org.apache.activemq.openwire.v12.ResponseMarshaller.tightMarshal1(OpenWireFormat, Object, BooleanStream)
DLS Dead store to info in org.apache.activemq.openwire.v9.IntegerResponseMarshaller.tightMarshal1(OpenWireFormat, Object, BooleanStream)
DLS Dead store to info in org.apache.activemq.openwire.v9.ReplayCommandMarshaller.tightMarshal1(OpenWireFormat, Object, BooleanStream)
DLS Dead store to info in org.apache.activemq.openwire.v9.ResponseMarshaller.tightMarshal1(OpenWireFormat, Object, BooleanStream)
DLS Dead store to type in org.apache.activemq.transport.discovery.multicast.MulticastDiscoveryAgent.start()
DLS Dead store to openWireFormat in org.apache.activemq.transport.udp.UdpTransportFactory.doBind(URI)
DLS Dead store to port in org.apache.activemq.transport.udp.UdpTransportFactory.doBind(URI)
DLS Dead store to buffer in org.apache.activemq.util.DataByteArrayOutputStream.writeUTF(String)
Eq org.apache.activemq.command.ActiveMQBlobMessage doesn't override ActiveMQMessage.equals(Object)
Eq org.apache.activemq.command.ActiveMQTextMessage doesn't override ActiveMQMessage.equals(Object)
RCN Redundant nullcheck of sequence which is known to be null in org.apache.activemq.openwire.OpenWireFormat.tightMarshalNestedObject1(DataStructure, BooleanStream)
REC Exception is caught when Exception is not thrown in org.apache.activemq.ActiveMQMessageConsumer.dispatch(MessageDispatch)
REC Exception is caught when Exception is not thrown in org.apache.activemq.ActiveMQMessageConsumer.redeliveryExceeded(MessageDispatch)
RV Return value of org.apache.activemq.transport.reliable.ReliableTransport.getReplayer() ignored, but method has no side effect
UrF Unread public/protected field: org.apache.activemq.selector.SelectorParserTokenManager.debugStream
UuF Unused public or protected field: org.apache.activemq.command.MessageAck.consumerKey
UuF Unused public or protected field: org.apache.activemq.transport.nio.NIOInputStream.count
UuF Unused public or protected field: org.apache.activemq.transport.nio.NIOInputStream.position

Details

BC_EQUALS_METHOD_SHOULD_WORK_FOR_ALL_OBJECTS: Equals method should not assume anything about the type of its argument

The equals(Object o) method shouldn't make any assumptions about the type of o. It should simply return false if o is not the same type as this.

BC_UNCONFIRMED_CAST: Unchecked/unconfirmed cast

This cast is unchecked, and not all instances of the type cast from can be cast to the type it is being cast to. Check that your program logic ensures that this cast will not fail.

BC_VACUOUS_INSTANCEOF: instanceof will always return true

This instanceof test will always return true (unless the value being tested is null). Although this is safe, make sure it isn't an indication of some misunderstanding or some other logic error. If you really want to test the value for being null, perhaps it would be clearer to do better to do a null test rather than an instanceof test.

BX_UNBOXING_IMMEDIATELY_REBOXED: Boxed value is unboxed and then immediately reboxed

A boxed value is unboxed and then immediately reboxed.

DM_BOXED_PRIMITIVE_FOR_PARSING: Boxing/unboxing to parse a primitive

A boxed primitive is created from a String, just to extract the unboxed primitive value. It is more efficient to just call the static parseXXX method.

DM_BOXED_PRIMITIVE_TOSTRING: Method allocates a boxed primitive just to call toString

A boxed primitive is allocated just to call toString(). It is more effective to just use the static form of toString which takes the primitive value. So,

Replace...With this...
new Integer(1).toString()Integer.toString(1)
new Long(1).toString()Long.toString(1)
new Float(1.0).toString()Float.toString(1.0)
new Double(1.0).toString()Double.toString(1.0)
new Byte(1).toString()Byte.toString(1)
new Short(1).toString()Short.toString(1)
new Boolean(true).toString()Boolean.toString(true)

DM_NUMBER_CTOR: Method invokes inefficient Number constructor; use static valueOf instead

Using new Integer(int) is guaranteed to always result in a new object whereas Integer.valueOf(int) allows caching of values to be done by the compiler, class library, or JVM. Using of cached values avoids object allocation and the code will be faster.

Values between -128 and 127 are guaranteed to have corresponding cached instances and using valueOf is approximately 3.5 times faster than using constructor. For values outside the constant range the performance of both styles is the same.

Unless the class must be compatible with JVMs predating Java 5, use either autoboxing or the valueOf() method when creating instances of Long, Integer, Short, Character, and Byte.

CT_CONSTRUCTOR_THROW: Be wary of letting constructors throw exceptions.

Classes that throw exceptions in their constructors are vulnerable to Finalizer attacks

A finalizer attack can be prevented, by declaring the class final, using an empty finalizer declared as final, or by a clever use of a private constructor.

See SEI CERT Rule OBJ-11 for more information.

DC_DOUBLECHECK: Possible double-check of field

This method may contain an instance of double-checked locking.  This idiom is not correct according to the semantics of the Java memory model.  For more information, see the web page http://www.cs.umd.edu/~pugh/java/memoryModel/DoubleCheckedLocking.html.

DE_MIGHT_IGNORE: Method might ignore exception

This method might ignore an exception.  In general, exceptions should be handled or reported in some way, or they should be thrown out of the method.

DLS_DEAD_LOCAL_STORE: Dead store to local variable

This instruction assigns a value to a local variable, but the value is not read or used in any subsequent instruction. Often, this indicates an error, because the value computed is never used.

Note that Sun's javac compiler often generates dead stores for final local variables. Because SpotBugs is a bytecode-based tool, there is no easy way to eliminate these false positives.

DM_DEFAULT_ENCODING: Reliance on default encoding

Found a call to a method which will perform a byte to String (or String to byte) conversion, and will assume that the default platform encoding is suitable. This will cause the application behavior to vary between platforms. Use an alternative API and specify a charset name or Charset object explicitly.

DM_NEXTINT_VIA_NEXTDOUBLE: Use the nextInt method of Random rather than nextDouble to generate a random integer

If r is a java.util.Random, you can generate a random number from 0 to n-1 using r.nextInt(n), rather than using (int)(r.nextDouble() * n).

The argument to nextInt must be positive. If, for example, you want to generate a random value from -99 to 0, use -r.nextInt(100).

EC_UNRELATED_TYPES_USING_POINTER_EQUALITY: Using pointer equality to compare different types

This method uses pointer equality to compare two references that seem to be of different types. The result of this comparison will always be false at runtime.

EI_EXPOSE_REP: May expose internal representation by returning reference to mutable object

Returning a reference to a mutable object value stored in one of the object's fields exposes the internal representation of the object.  If instances are accessed by untrusted code, and unchecked changes to the mutable object would compromise security or other important properties, you will need to do something different. Returning a new copy of the object is better approach in many situations.

EI_EXPOSE_REP2: May expose internal representation by incorporating reference to mutable object

This code stores a reference to an externally mutable object into the internal representation of the object.  If instances are accessed by untrusted code, and unchecked changes to the mutable object would compromise security or other important properties, you will need to do something different. Storing a copy of the object is better approach in many situations.

EQ_DOESNT_OVERRIDE_EQUALS: Class doesn't override equals in superclass

This class extends a class that defines an equals method and adds fields, but doesn't define an equals method itself. Thus, equality on instances of this class will ignore the identity of the subclass and the added fields. Be sure this is what is intended, and that you don't need to override the equals method. Even if you don't need to override the equals method, consider overriding it anyway to document the fact that the equals method for the subclass just return the result of invoking super.equals(o).

EQ_GETCLASS_AND_CLASS_CONSTANT: equals method fails for subtypes

This class has an equals method that will be broken if it is inherited by subclasses. It compares a class literal with the class of the argument (e.g., in class Foo it might check if Foo.class == o.getClass()). It is better to check if this.getClass() == o.getClass().

HE_EQUALS_USE_HASHCODE: Class defines equals() and uses Object.hashCode()

This class overrides equals(Object), but does not override hashCode(), and inherits the implementation of hashCode() from java.lang.Object (which returns the identity hash code, an arbitrary value assigned to the object by the VM).  Therefore, the class is very likely to violate the invariant that equal objects must have equal hashcodes.

If you don't think instances of this class will ever be inserted into a HashMap/HashTable, the recommended hashCode implementation to use is:

public int hashCode() {
    assert false : "hashCode not designed";
    return 42; // any arbitrary constant will do
}

IS2_INCONSISTENT_SYNC: Inconsistent synchronization

The fields of this class appear to be accessed inconsistently with respect to synchronization.  This bug report indicates that the bug pattern detector judged that

A typical bug matching this bug pattern is forgetting to synchronize one of the methods in a class that is intended to be thread-safe.

You can select the nodes labeled "Unsynchronized access" to show the code locations where the detector believed that a field was accessed without synchronization.

Note that there are various sources of inaccuracy in this detector; for example, the detector cannot statically detect all situations in which a lock is held.  Also, even when the detector is accurate in distinguishing locked vs. unlocked accesses, the code in question may still be correct.

JLM_JSR166_UTILCONCURRENT_MONITORENTER: Synchronization performed on util.concurrent instance

This method performs synchronization on an object that is an instance of a class from the java.util.concurrent package (or its subclasses). Instances of these classes have their own concurrency control mechanisms that are orthogonal to the synchronization provided by the Java keyword synchronized. For example, synchronizing on an AtomicBoolean will not prevent other threads from modifying the AtomicBoolean.

Such code may be correct, but should be carefully reviewed and documented, and may confuse people who have to maintain the code at a later date.

MF_CLASS_MASKS_FIELD: Class defines field that masks a superclass field

This class defines a field with the same name as a visible instance field in a superclass. This is confusing, and may indicate an error if methods update or access one of the fields when they wanted the other.

MS_MUTABLE_ARRAY: Field is a mutable array

A final static field references an array and can be accessed by malicious code or by accident from another package. This code can freely modify the contents of the array.

MS_MUTABLE_COLLECTION_PKGPROTECT: Field is a mutable collection which should be package protected

A mutable collection instance is assigned to a final static field, thus can be changed by malicious code or by accident from another package. The field could be made package protected to avoid this vulnerability. Alternatively you may wrap this field into Collections.unmodifiableSet/List/Map/etc. to avoid this vulnerability.

MS_SHOULD_BE_FINAL: Field isn't final but should be

This public static or protected static field is not final, and could be changed by malicious code or by accident from another package. The field could be made final to avoid this vulnerability.

MS_OOI_PKGPROTECT: Field should be moved out of an interface and made package protected

A final static field that is defined in an interface references a mutable object such as an array or hashtable. This mutable object could be changed by malicious code or by accident from another package. To solve this, the field needs to be moved to a class and made package protected to avoid this vulnerability.

MS_PKGPROTECT: Field should be package protected

A mutable static field could be changed by malicious code or by accident. The field could be made package protected to avoid this vulnerability.

MS_EXPOSE_REP: Public static method may expose internal representation by returning a mutable object or array

A public static method returns a reference to a mutable object or an array that is part of the static state of the class. Any code that calls this method can freely modify the underlying array. One fix is to return a copy of the array.

NP_NULL_ON_SOME_PATH: Possible null pointer dereference

There is a branch of statement that, if executed, guarantees that a null value will be dereferenced, which would generate a NullPointerException when the code is executed. Of course, the problem might be that the branch or statement is infeasible and that the null pointer exception cannot ever be executed; deciding that is beyond the ability of SpotBugs.

NP_GUARANTEED_DEREF_ON_EXCEPTION_PATH: Value is null and guaranteed to be dereferenced on exception path

There is a statement or branch on an exception path that if executed guarantees that a value is null at this point, and that value that is guaranteed to be dereferenced (except on forward paths involving runtime exceptions).

NM_CLASS_NAMING_CONVENTION: Class names should start with an upper case letter

Class names should be nouns, in mixed case with the first letter of each internal word capitalized. Try to keep your class names simple and descriptive. Use whole words-avoid acronyms and abbreviations (unless the abbreviation is much more widely used than the long form, such as URL or HTML).

NM_SAME_SIMPLE_NAME_AS_INTERFACE: Class names shouldn't shadow simple name of implemented interface

This class/interface has a simple name that is identical to that of an implemented/extended interface, except that the interface is in a different package (e.g., alpha.Foo extends beta.Foo). This can be exceptionally confusing, create lots of situations in which you have to look at import statements to resolve references and creates many opportunities to accidentally define methods that do not override methods in their superclasses.

NM_METHOD_NAMING_CONVENTION: Method names should start with a lower case letter

Methods should be verbs, in mixed case with the first letter lowercase, with the first letter of each internal word capitalized.

OBL_UNSATISFIED_OBLIGATION: Method may fail to clean up stream or resource

This method may fail to clean up (close, dispose of) a stream, database object, or other resource requiring an explicit cleanup operation.

In general, if a method opens a stream or other resource, the method should use a try/finally block to ensure that the stream or resource is cleaned up before the method returns.

This bug pattern is essentially the same as the OS_OPEN_STREAM and ODR_OPEN_DATABASE_RESOURCE bug patterns, but is based on a different (and hopefully better) static analysis technique. We are interested is getting feedback about the usefulness of this bug pattern. For sending feedback, check:

In particular, the false-positive suppression heuristics for this bug pattern have not been extensively tuned, so reports about false positives are helpful to us.

See Weimer and Necula, Finding and Preventing Run-Time Error Handling Mistakes (PDF), for a description of the analysis technique.

OS_OPEN_STREAM: Method may fail to close stream

The method creates an IO stream object, does not assign it to any fields, pass it to other methods that might close it, or return it, and does not appear to close the stream on all paths out of the method.  This may result in a file descriptor leak.  It is generally a good idea to use a finally block to ensure that streams are closed.

PA_PUBLIC_PRIMITIVE_ATTRIBUTE: Primitive field is public

SEI CERT rule OBJ01-J requires that accessibility to fields must be limited. Otherwise, the values of the fields may be manipulated from outside the class, which may be unexpected or undesired behaviour. In general, requiring that no fields are allowed to be public is overkill and unrealistic. Even the rule mentions that final fields may be public. Besides final fields, there may be other usages for public fields: some public fields may serve as "flags" that affect the behavior of the class. Such flag fields are expected to be read by the current instance (or the current class, in case of static fields), but written by others. If a field is both written by the methods of the current instance (or the current class, in case of static fields) and from the outside, the code is suspicious. Consider making these fields private and provide appropriate setters, if necessary. Please note that constructors, initializers and finalizers are exceptions, if only they write the field inside the class, the field is not considered as written by the class itself.

RC_REF_COMPARISON_BAD_PRACTICE_BOOLEAN: Suspicious reference comparison of Boolean values

This method compares two Boolean values using the == or != operator. Normally, there are only two Boolean values (Boolean.TRUE and Boolean.FALSE), but it is possible to create other Boolean objects using the new Boolean(b) constructor. It is best to avoid such objects, but if they do exist, then checking Boolean objects for equality using == or != will give results than are different than you would get using .equals(...).

RCN_REDUNDANT_NULLCHECK_OF_NULL_VALUE: Redundant nullcheck of value known to be null

This method contains a redundant check of a known null value against the constant null.

REC_CATCH_EXCEPTION: Exception is caught when Exception is not thrown

This method uses a try-catch block that catches Exception objects, but Exception is not thrown within the try block, and RuntimeException is not explicitly caught. It is a common bug pattern to say try { ... } catch (Exception e) { something } as a shorthand for catching a number of types of exception each of whose catch blocks is identical, but this construct also accidentally catches RuntimeException as well, masking potential bugs.

A better approach is to either explicitly catch the specific exceptions that are thrown, or to explicitly catch RuntimeException exception, rethrow it, and then catch all non-Runtime Exceptions, as shown below:

try {
    ...
} catch (RuntimeException e) {
    throw e;
} catch (Exception e) {
    ... deal with all non-runtime exceptions ...
}

RR_NOT_CHECKED: Method ignores results of InputStream.read()

This method ignores the return value of one of the variants of java.io.InputStream.read() which can return multiple bytes.  If the return value is not checked, the caller will not be able to correctly handle the case where fewer bytes were read than the caller requested.  This is a particularly insidious kind of bug, because in many programs, reads from input streams usually do read the full amount of data requested, causing the program to fail only sporadically.

SR_NOT_CHECKED: Method ignores results of InputStream.skip()

This method ignores the return value of java.io.InputStream.skip() which can skip multiple bytes.  If the return value is not checked, the caller will not be able to correctly handle the case where fewer bytes were skipped than the caller requested.  This is a particularly insidious kind of bug, because in many programs, skips from input streams usually do skip the full amount of data requested, causing the program to fail only sporadically. With Buffered streams, however, skip() will only skip data in the buffer, and will routinely fail to skip the requested number of bytes.

RV_RETURN_VALUE_IGNORED_BAD_PRACTICE: Method ignores exceptional return value

This method returns a value that is not checked. The return value should be checked since it can indicate an unusual or unexpected function execution. For example, the File.delete() method returns false if the file could not be successfully deleted (rather than throwing an Exception). If you don't check the result, you won't notice if the method invocation signals unexpected behavior by returning an atypical return value.

RV_RETURN_VALUE_IGNORED: Method ignores return value

The return value of this method should be checked. One common cause of this warning is to invoke a method on an immutable object, thinking that it updates the object. For example, in the following code fragment,

String dateString = getHeaderField(name);
dateString.trim();

the programmer seems to be thinking that the trim() method will update the String referenced by dateString. But since Strings are immutable, the trim() function returns a new String value, which is being ignored here. The code should be corrected to:

String dateString = getHeaderField(name);
dateString = dateString.trim();

RV_RETURN_VALUE_IGNORED_NO_SIDE_EFFECT: Return value of method without side effect is ignored

This code calls a method and ignores the return value. However, our analysis shows that the method (including its implementations in subclasses if any) does not produce any effect other than return value. Thus, this call can be removed.

We are trying to reduce the false positives as much as possible, but in some cases this warning might be wrong. Common false-positive cases include:

- The method is designed to be overridden and produce a side effect in other projects which are out of the scope of the analysis.

- The method is called to trigger the class loading which may have a side effect.

- The method is called just to get some exception.

If you feel that our assumption is incorrect, you can use a @CheckReturnValue annotation to instruct SpotBugs that ignoring the return value of this method is acceptable.

SBSC_USE_STRINGBUFFER_CONCATENATION: Method concatenates strings using + in a loop

The method seems to be building a String using concatenation in a loop. In each iteration, the String is converted to a StringBuffer/StringBuilder, appended to, and converted back to a String. This can lead to a cost quadratic in the number of iterations, as the growing string is recopied in each iteration.

Better performance can be obtained by using a StringBuffer (or StringBuilder in Java 5) explicitly.

For example:

// This is bad
String s = "";
for (int i = 0; i < field.length; ++i) {
    s = s + field[i];
}

// This is better
StringBuffer buf = new StringBuffer();
for (int i = 0; i < field.length; ++i) {
    buf.append(field[i]);
}
String s = buf.toString();

SIC_INNER_SHOULD_BE_STATIC: Should be a static inner class

This class is an inner class, but does not use its embedded reference to the object which created it.  This reference makes the instances of the class larger, and may keep the reference to the creator object alive longer than necessary.  If possible, the class should be made static.

SS_SHOULD_BE_STATIC: Unread field: should this field be static?

This class contains an instance final field that is initialized to a compile-time static value. Consider making the field static.

SE_NO_SUITABLE_CONSTRUCTOR_FOR_EXTERNALIZATION: Class is Externalizable but doesn't define a void constructor

This class implements the Externalizable interface, but does not define a public void constructor. When Externalizable objects are deserialized, they first need to be constructed by invoking the public void constructor. Since this class does not have one, serialization and deserialization will fail at runtime.

SE_COMPARATOR_SHOULD_BE_SERIALIZABLE: Comparator doesn't implement Serializable

This class implements the Comparator interface. You should consider whether or not it should also implement the Serializable interface. If a comparator is used to construct an ordered collection such as a TreeMap, then the TreeMap will be serializable only if the comparator is also serializable. As most comparators have little or no state, making them serializable is generally easy and good defensive programming.

SE_BAD_FIELD: Non-transient non-serializable instance field in serializable class

This Serializable class defines a non-primitive instance field which is neither transient, Serializable, or java.lang.Object, and does not appear to implement the Externalizable interface or the readObject() and writeObject() methods.  Objects of this class will not be deserialized correctly if a non-Serializable object is stored in this field.

SE_TRANSIENT_FIELD_NOT_RESTORED: Transient field that isn't set by deserialization.

This class contains a field that is updated at multiple places in the class, thus it seems to be part of the state of the class. However, since the field is marked as transient and not set in readObject or readResolve, it will contain the default value in any deserialized instance of the class.

UL_UNRELEASED_LOCK_EXCEPTION_PATH: Method does not release lock on all exception paths

This method acquires a JSR-166 (java.util.concurrent) lock, but does not release it on all exception paths out of the method. In general, the correct idiom for using a JSR-166 lock is:

Lock l = ...;
l.lock();
try {
    // do something
} finally {
    l.unlock();
}

URF_UNREAD_PUBLIC_OR_PROTECTED_FIELD: Unread public/protected field

This field is never read.  The field is public or protected, so perhaps it is intended to be used with classes not seen as part of the analysis. If not, consider removing it from the class.

UUF_UNUSED_PUBLIC_OR_PROTECTED_FIELD: Unused public or protected field

This field is never used.  The field is public or protected, so perhaps it is intended to be used with classes not seen as part of the analysis. If not, consider removing it from the class.

VO_VOLATILE_INCREMENT: An increment to a volatile field isn't atomic

This code increments/decrements a volatile field. Increments/Decrements of volatile fields aren't atomic. If more than one thread is incrementing/decrementing the field at the same time, increments/decrements could be lost.

VSC_VULNERABLE_SECURITY_CHECK_METHODS: Non-Private and non-final security check methods are vulnerable

Methods that perform security checks should be prevented from being overridden, so they must be declared as private or final. Otherwise, these methods can be compromised when a malicious subclass overrides them and omits the checks.

See SEI CERT rule MET03-J. Methods that perform a security check must be declared private or final.

WMI_WRONG_MAP_ITERATOR: Inefficient use of keySet iterator instead of entrySet iterator

This method accesses the value of a Map entry, using a key that was retrieved from a keySet iterator. It is more efficient to use an iterator on the entrySet of the map, to avoid the Map.get(key) lookup.