You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by or...@apache.org on 2021/07/21 07:24:59 UTC

[camel] branch main updated: fixes based on static analysis check with FindBugs (#5842)

This is an automated email from the ASF dual-hosted git repository.

orpiske pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git


The following commit(s) were added to refs/heads/main by this push:
     new abefdfd  fixes based on static analysis check with FindBugs (#5842)
abefdfd is described below

commit abefdfd9cb3366057eb2020c6b1404016e19015f
Author: dk2k <dk...@users.noreply.github.com>
AuthorDate: Wed Jul 21 10:24:35 2021 +0300

    fixes based on static analysis check with FindBugs (#5842)
    
    Fixes based on static analysis check with FindBugs
    
    * fixed format issue
    * fixed format issue
    * fixed checkstyle issue
    * changes based on review by orpiske
    * fixed format issues
    * fixed format issues
    * cleanup of commented code
    
    Co-authored-by: Dmitry Kriukov <dk...@ya.ru>
---
 .../camel/component/aws2/iam/IAM2Producer.java     |  2 +-
 .../camel/component/aws2/s3/AWS2S3Producer.java    |  7 ++++--
 .../aws2/s3/stream/AWS2S3StreamUploadProducer.java |  2 +-
 .../bean/AbstractCamelInvocationHandler.java       | 16 ++++---------
 .../dataformat/bindy/BindyFixedLengthFactory.java  |  2 +-
 .../bindy/format/factories/ByteFormatFactory.java  |  2 +-
 .../utils/cassandra/CassandraSessionHolder.java    |  2 +-
 .../component/chatscript/ChatScriptProducer.java   |  2 +-
 .../org/apache/camel/coap/CamelCoapResource.java   | 16 ++++++++++---
 .../camel/component/cometd/CometdComponent.java    |  2 +-
 .../camel/component/cometd/CometdEndpoint.java     |  6 ++---
 .../camel/component/corda/CordaProducer.java       |  4 ++--
 .../cxf/common/header/CxfHeaderFilterStrategy.java |  3 +--
 .../camel/component/cxf/CxfSpringEndpoint.java     |  8 +++----
 .../camel/component/cxf/DefaultCxfBinding.java     |  1 +
 .../camel/component/cxf/jaxrs/CxfRsProducer.java   |  6 ++---
 .../spring/CxfEndpointBeanDefinitionParser.java    |  4 ++--
 .../model/CustomImageClassificationPredictor.java  |  4 ++--
 .../djl/model/CustomObjectDetectionPredictor.java  |  4 ++--
 .../djl/model/ZooImageClassificationPredictor.java |  4 ++--
 .../djl/model/ZooObjectDetectionPredictor.java     |  4 ++--
 .../elasticsearch/ElasticsearchProducer.java       |  2 +-
 .../camel/component/file/remote/FtpOperations.java |  7 +++++-
 .../camel/component/hbase/HBaseProducer.java       |  5 ++--
 .../component/hdfs/HdfsNormalFileHandler.java      |  8 ++++++-
 .../hystrix/processor/HystrixProcessor.java        |  1 +
 .../camel/converter/jaxb/JaxbDataFormat.java       |  5 +++-
 .../apache/camel/component/jbpm/JBPMConsumer.java  |  9 ++++++--
 .../apache/camel/component/jdbc/JdbcProducer.java  |  6 ++---
 .../camel/component/jetty/CamelFilterWrapper.java  |  9 +++++++-
 .../camel/component/jetty/JettyHttpComponent.java  | 20 ++++++----------
 .../component/jetty9/AttachmentHttpBinding.java    |  2 +-
 .../raft/cluster/JGroupsRaftClusterView.java       | 25 ++++++++++----------
 .../component/jira/producer/AddIssueProducer.java  |  4 ++--
 .../apache/camel/component/jms/JmsConsumer.java    | 11 +++++++--
 .../apache/camel/component/jms/JmsProducer.java    | 11 +++++++--
 .../camel/language/joor/JoorScriptingCompiler.java |  2 +-
 .../camel/component/jsonata/JsonataEndpoint.java   | 13 +++++++----
 .../camel/component/kafka/KafkaProducer.java       |  6 ++---
 .../apache/camel/component/kamelet/Kamelet.java    |  9 ++++----
 .../camel/component/lucene/LuceneIndexer.java      |  5 +++-
 .../camel/component/metrics/GaugeProducer.java     |  2 +-
 .../micrometer/json/MicrometerModule.java          |  1 +
 .../milo/client/MiloClientConfiguration.java       |  2 +-
 .../camel/component/mllp/internal/Hl7Util.java     |  1 +
 .../component/mongodb/gridfs/GridFsProducer.java   |  2 +-
 .../converters/MongoDbFallbackConverter.java       |  6 ++---
 .../component/printer/PrinterConfiguration.java    |  2 +-
 .../camel/component/pulsar/PulsarEndpoint.java     |  2 +-
 .../reactive/streams/engine/CamelSubscription.java | 12 ++++++----
 .../reactor/engine/ReactorCamelProcessor.java      |  2 +-
 .../camel/component/rest/DefaultRestRegistry.java  |  2 +-
 .../apache/camel/component/sjms/SjmsProducer.java  |  2 +-
 .../component/sjms/TransactionOnCompletion.java    |  2 +-
 .../camel/component/smpp/AbstractSmppCommand.java  |  6 ++---
 .../component/SoroushBotAbstractConsumer.java      |  4 ++--
 .../utils/ExponentialBackOffStrategy.java          |  4 ++--
 .../soroushbot/utils/LinearBackOffStrategy.java    |  4 ++--
 .../integration/SpringIntegrationEndpoint.java     |  2 +-
 .../integration/SpringIntegrationProducer.java     |  2 +-
 .../xml/handler/ErrorHandlerDefinitionParser.java  |  2 +-
 .../spi/BridgePropertyPlaceholderConfigurer.java   |  2 +-
 .../component/sql/stored/SqlStoredProducer.java    |  1 -
 .../sql/stored/template/ast/ParseHelper.java       |  2 +-
 .../stored/template/generated/ParseException.java  | 27 +++++++++++-----------
 .../camel/component/stax/StaxStreamXMLReader.java  |  6 +++--
 .../aggregate/tarfile/TarAggregationStrategy.java  |  2 +-
 .../model/InlineQueryResultCachedVoice.java        |  2 +-
 .../test/spring/junit5/CamelSpringTestSupport.java | 18 +++++++--------
 .../test/spring/junit5/RouteCoverageDumper.java    |  5 +++-
 .../apache/camel/component/tika/TikaProducer.java  | 10 +++++++-
 .../main/java/org/apache/camel/tracing/Tracer.java |  2 +-
 .../twitter/timeline/TwitterTimelineEndpoint.java  |  1 -
 .../UndertowComponentVerifierExtension.java        |  2 +-
 .../handlers/CamelPathTemplateHandler.java         |  2 +-
 .../undertow/handlers/RestRootHandler.java         |  4 ++--
 .../component/websocket/WebsocketComponent.java    |  2 +-
 .../workday/producer/WorkdayCommonAPIProducer.java |  2 +-
 .../processor/XmlVerifierProcessor.java            |  2 +-
 .../apache/camel/component/xslt/XsltBuilder.java   |  5 +++-
 .../dataformat/zipfile/ZipFileDataFormat.java      |  8 ++++++-
 .../aggregate/zipfile/ZipAggregationStrategy.java  | 20 ++++++++++++----
 .../group/internal/ZooKeeperGroup.java             |  5 +++-
 .../component/zookeeper/NaturalSortComparator.java |  1 +
 .../zookeeper/ZooKeeperConnectionManager.java      |  2 +-
 85 files changed, 269 insertions(+), 187 deletions(-)

diff --git a/components/camel-aws/camel-aws2-iam/src/main/java/org/apache/camel/component/aws2/iam/IAM2Producer.java b/components/camel-aws/camel-aws2-iam/src/main/java/org/apache/camel/component/aws2/iam/IAM2Producer.java
index ebd31ac..aea6ae5 100644
--- a/components/camel-aws/camel-aws2-iam/src/main/java/org/apache/camel/component/aws2/iam/IAM2Producer.java
+++ b/components/camel-aws/camel-aws2-iam/src/main/java/org/apache/camel/component/aws2/iam/IAM2Producer.java
@@ -458,7 +458,7 @@ public class IAM2Producer extends DefaultProducer {
             if (payload instanceof DeleteGroupResponse) {
                 DeleteGroupResponse result;
                 try {
-                    result = iamClient.deleteGroup((DeleteGroupRequest) payload);
+                    result = iamClient.deleteGroup((DeleteGroupRequest) payload); // TODO this cast is impossible and will produce ClassCastException for non-null value
                 } catch (AwsServiceException ase) {
                     LOG.trace("Delete Group command returned the error code {}", ase.awsErrorDetails().errorCode());
                     throw ase;
diff --git a/components/camel-aws/camel-aws2-s3/src/main/java/org/apache/camel/component/aws2/s3/AWS2S3Producer.java b/components/camel-aws/camel-aws2-s3/src/main/java/org/apache/camel/component/aws2/s3/AWS2S3Producer.java
index b908191..9c6fcb4 100644
--- a/components/camel-aws/camel-aws2-s3/src/main/java/org/apache/camel/component/aws2/s3/AWS2S3Producer.java
+++ b/components/camel-aws/camel-aws2-s3/src/main/java/org/apache/camel/component/aws2/s3/AWS2S3Producer.java
@@ -197,7 +197,7 @@ public class AWS2S3Producer extends DefaultProducer {
 
         CreateMultipartUploadResponse initResponse
                 = getEndpoint().getS3Client().createMultipartUpload(createMultipartUploadRequest.build());
-        final long contentLength = Long.valueOf(objectMetadata.get("Content-Length"));
+        final long contentLength = Long.parseLong(objectMetadata.get("Content-Length"));
         List<CompletedPart> completedParts = new ArrayList<CompletedPart>();
         long partSize = getConfiguration().getPartSize();
         CompleteMultipartUploadResponse uploadResult = null;
@@ -214,7 +214,10 @@ public class AWS2S3Producer extends DefaultProducer {
 
                 LOG.trace("Uploading part [{}] for {}", part, keyName);
                 try (InputStream fileInputStream = new FileInputStream(filePayload)) {
-                    fileInputStream.skip(filePosition);
+                    long skipped = fileInputStream.skip(filePosition);
+                    if (skipped == 0) {
+                        LOG.warn("While trying to upload the file {} file, 0 bytes were skipped", keyName);
+                    }
 
                     String etag = getEndpoint().getS3Client()
                             .uploadPart(uploadRequest, RequestBody.fromInputStream(fileInputStream, partSize)).eTag();
diff --git a/components/camel-aws/camel-aws2-s3/src/main/java/org/apache/camel/component/aws2/s3/stream/AWS2S3StreamUploadProducer.java b/components/camel-aws/camel-aws2-s3/src/main/java/org/apache/camel/component/aws2/s3/stream/AWS2S3StreamUploadProducer.java
index a14bd6d..77591e3 100644
--- a/components/camel-aws/camel-aws2-s3/src/main/java/org/apache/camel/component/aws2/s3/stream/AWS2S3StreamUploadProducer.java
+++ b/components/camel-aws/camel-aws2-s3/src/main/java/org/apache/camel/component/aws2/s3/stream/AWS2S3StreamUploadProducer.java
@@ -302,7 +302,7 @@ public class AWS2S3StreamUploadProducer extends DefaultProducer {
                 if (position != -1) {
                     String partString = fileName.substring(position + 1);
                     if (ObjectHelper.isNotEmpty(partString)) {
-                        part.getAndSet(Integer.valueOf(partString) + 1);
+                        part.getAndSet(Integer.parseInt(partString) + 1);
                     }
                 } else {
                     part.getAndSet(1);
diff --git a/components/camel-bean/src/main/java/org/apache/camel/component/bean/AbstractCamelInvocationHandler.java b/components/camel-bean/src/main/java/org/apache/camel/component/bean/AbstractCamelInvocationHandler.java
index 893b235..8a5ef87 100644
--- a/components/camel-bean/src/main/java/org/apache/camel/component/bean/AbstractCamelInvocationHandler.java
+++ b/components/camel-bean/src/main/java/org/apache/camel/component/bean/AbstractCamelInvocationHandler.java
@@ -140,10 +140,7 @@ public abstract class AbstractCamelInvocationHandler implements InvocationHandle
                             ExchangeProperty ep = (ExchangeProperty) ann;
                             String name = ep.value();
                             exchange.setProperty(name, value);
-                        } else if (ann.annotationType().isAssignableFrom(Body.class)) {
-                            exchange.getIn().setBody(value);
                         } else {
-                            // assume its message body when there is no annotations
                             exchange.getIn().setBody(value);
                         }
                     }
@@ -218,7 +215,7 @@ public abstract class AbstractCamelInvocationHandler implements InvocationHandle
 
     protected Object afterInvoke(Method method, Exchange exchange, ExchangePattern pattern, boolean isFuture) throws Exception {
         // check if we had an exception
-        Throwable cause = exchange.getException();
+        Exception cause = exchange.getException();
         if (cause != null) {
             Throwable found = findSuitableException(cause, method);
             if (found != null) {
@@ -234,17 +231,12 @@ public abstract class AbstractCamelInvocationHandler implements InvocationHandle
                 // if the inner cause is a runtime exception we can throw it
                 // directly
                 if (cause.getCause() instanceof RuntimeException) {
-                    throw (RuntimeException) ((RuntimeCamelException) cause).getCause();
+                    throw (RuntimeException) cause.getCause();
                 }
-                throw (RuntimeCamelException) cause;
+                throw cause;
             }
             // okay just throw the exception as is
-            if (cause instanceof Exception) {
-                throw (Exception) cause;
-            } else {
-                // wrap as exception
-                throw new CamelExchangeException("Error processing exchange", exchange, cause);
-            }
+            throw cause;
         }
 
         Class<?> to = isFuture ? getGenericType(exchange.getContext(), method.getGenericReturnType()) : method.getReturnType();
diff --git a/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/BindyFixedLengthFactory.java b/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/BindyFixedLengthFactory.java
index 6b1e688..6f0cff7 100644
--- a/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/BindyFixedLengthFactory.java
+++ b/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/BindyFixedLengthFactory.java
@@ -464,7 +464,7 @@ public class BindyFixedLengthFactory extends BindyAbstractFactory implements Bin
 
                     if (fieldLength == 0 && datafield.lengthPos() > 0) {
                         List<String> resultVals = results.get(datafield.lengthPos());
-                        fieldLength = Integer.valueOf(resultVals.get(0));
+                        fieldLength = Integer.parseInt(resultVals.get(0));
                     }
 
                     if (fieldLength <= 0 && datafield.delimiter().equals("") && datafield.lengthPos() == 0) {
diff --git a/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/format/factories/ByteFormatFactory.java b/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/format/factories/ByteFormatFactory.java
index 1bd4732..4ccde19 100644
--- a/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/format/factories/ByteFormatFactory.java
+++ b/components/camel-bindy/src/main/java/org/apache/camel/dataformat/bindy/format/factories/ByteFormatFactory.java
@@ -49,7 +49,7 @@ public class ByteFormatFactory extends AbstractFormatFactory {
 
         @Override
         public Byte parse(String string) throws Exception {
-            return new Byte(string);
+            return Byte.valueOf(string);
         }
 
     }
diff --git a/components/camel-cassandraql/src/main/java/org/apache/camel/utils/cassandra/CassandraSessionHolder.java b/components/camel-cassandraql/src/main/java/org/apache/camel/utils/cassandra/CassandraSessionHolder.java
index 165af30..c0f21ed 100644
--- a/components/camel-cassandraql/src/main/java/org/apache/camel/utils/cassandra/CassandraSessionHolder.java
+++ b/components/camel-cassandraql/src/main/java/org/apache/camel/utils/cassandra/CassandraSessionHolder.java
@@ -29,7 +29,7 @@ public class CassandraSessionHolder {
     /**
      * Keyspace name
      */
-    private String keyspace;
+    //private String keyspace; // this field is reported unused
     /**
      * Indicates whether Session is externally managed
      */
diff --git a/components/camel-chatscript/src/main/java/org/apache/camel/component/chatscript/ChatScriptProducer.java b/components/camel-chatscript/src/main/java/org/apache/camel/component/chatscript/ChatScriptProducer.java
index 9eab014..ecc50ab 100644
--- a/components/camel-chatscript/src/main/java/org/apache/camel/component/chatscript/ChatScriptProducer.java
+++ b/components/camel-chatscript/src/main/java/org/apache/camel/component/chatscript/ChatScriptProducer.java
@@ -40,7 +40,7 @@ public class ChatScriptProducer extends DefaultProducer {
     public void process(Exchange exchange) throws Exception {
 
         Object body = exchange.getIn().getBody();
-        ChatScriptMessage inputMessage = new ChatScriptMessage();
+        ChatScriptMessage inputMessage;
         /* use can pass message object as json or the object it self */
         if (!(body instanceof ChatScriptMessage)) {
             inputMessage = buildMessage(body);
diff --git a/components/camel-coap/src/main/java/org/apache/camel/coap/CamelCoapResource.java b/components/camel-coap/src/main/java/org/apache/camel/coap/CamelCoapResource.java
index 948513b..5045117 100644
--- a/components/camel-coap/src/main/java/org/apache/camel/coap/CamelCoapResource.java
+++ b/components/camel-coap/src/main/java/org/apache/camel/coap/CamelCoapResource.java
@@ -29,8 +29,13 @@ import org.eclipse.californium.core.coap.OptionSet;
 import org.eclipse.californium.core.network.Exchange;
 import org.eclipse.californium.core.server.resources.CoapExchange;
 import org.eclipse.californium.core.server.resources.Resource;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 final class CamelCoapResource extends CoapResource {
+
+    private static final Logger LOG = LoggerFactory.getLogger(CamelCoapResource.class);
+
     private final Map<String, CoAPConsumer> consumers = new ConcurrentHashMap<>();
     private final List<CamelCoapResource> possibles;
 
@@ -141,10 +146,15 @@ final class CamelCoapResource extends CoapResource {
         } catch (Exception e) {
             cexchange.respond(ResponseCode.INTERNAL_SERVER_ERROR, e.getMessage());
         } finally {
-            if (camelExchange != null) {
-                consumer.doneUoW(camelExchange);
+            if (consumer != null) {
+                if (camelExchange != null) {
+                    consumer.doneUoW(camelExchange);
+                }
+                consumer.releaseExchange(camelExchange, false);
+            } else {
+                LOG.warn(
+                        "Skipping releasing the consumer exchange because the consumer is null. It may haven't been properly created earlier - exception was thrown");
             }
-            consumer.releaseExchange(camelExchange, false);
         }
     }
 }
diff --git a/components/camel-cometd/src/main/java/org/apache/camel/component/cometd/CometdComponent.java b/components/camel-cometd/src/main/java/org/apache/camel/component/cometd/CometdComponent.java
index 1df21ea..6aa6148 100644
--- a/components/camel-cometd/src/main/java/org/apache/camel/component/cometd/CometdComponent.java
+++ b/components/camel-cometd/src/main/java/org/apache/camel/component/cometd/CometdComponent.java
@@ -75,7 +75,7 @@ public class CometdComponent extends DefaultComponent implements SSLContextParam
     @Metadata(label = "security", defaultValue = "false")
     private boolean useGlobalSslContextParameters;
 
-    class ConnectorRef {
+    static class ConnectorRef {
         Connector connector;
         CometDServlet servlet;
         Server server;
diff --git a/components/camel-cometd/src/main/java/org/apache/camel/component/cometd/CometdEndpoint.java b/components/camel-cometd/src/main/java/org/apache/camel/component/cometd/CometdEndpoint.java
index 6dade84..17c65b9 100644
--- a/components/camel-cometd/src/main/java/org/apache/camel/component/cometd/CometdEndpoint.java
+++ b/components/camel-cometd/src/main/java/org/apache/camel/component/cometd/CometdEndpoint.java
@@ -46,13 +46,13 @@ public class CometdEndpoint extends DefaultEndpoint {
     private URI uri;
     @UriPath(description = "Hostname")
     @Metadata(required = true)
-    private String host;
+    private String host; // TODO field is reported unread
     @UriPath(description = "Host port number")
     @Metadata(required = true)
-    private int port;
+    private int port; // TODO field is reported unread
     @UriPath(description = "The channelName represents a topic that can be subscribed to by the Camel endpoints.")
     @Metadata(required = true)
-    private String channelName;
+    private String channelName; // TODO field is reported unread
     @UriParam
     private String baseResource;
     @UriParam(defaultValue = "240000")
diff --git a/components/camel-corda/src/main/java/org/apache/camel/component/corda/CordaProducer.java b/components/camel-corda/src/main/java/org/apache/camel/component/corda/CordaProducer.java
index b21bc39..1e095a6 100644
--- a/components/camel-corda/src/main/java/org/apache/camel/component/corda/CordaProducer.java
+++ b/components/camel-corda/src/main/java/org/apache/camel/component/corda/CordaProducer.java
@@ -51,12 +51,12 @@ import static org.apache.camel.component.corda.CordaConstants.SORT;
  */
 
 public class CordaProducer extends HeaderSelectorProducer {
-    private CordaConfiguration configuration;
+    //private CordaConfiguration configuration;
     private CordaRPCOps cordaRPCOps;
 
     public CordaProducer(CordaEndpoint endpoint, final CordaConfiguration configuration, CordaRPCOps cordaRPCOps) {
         super(endpoint, CordaConstants.OPERATION, () -> configuration.getOperation(), false);
-        this.configuration = configuration;
+        //this.configuration = configuration;
         this.cordaRPCOps = cordaRPCOps;
     }
 
diff --git a/components/camel-cxf-transport/src/main/java/org/apache/camel/component/cxf/common/header/CxfHeaderFilterStrategy.java b/components/camel-cxf-transport/src/main/java/org/apache/camel/component/cxf/common/header/CxfHeaderFilterStrategy.java
index 2330f00..4235a4c 100644
--- a/components/camel-cxf-transport/src/main/java/org/apache/camel/component/cxf/common/header/CxfHeaderFilterStrategy.java
+++ b/components/camel-cxf-transport/src/main/java/org/apache/camel/component/cxf/common/header/CxfHeaderFilterStrategy.java
@@ -140,8 +140,7 @@ public class CxfHeaderFilterStrategy extends DefaultHeaderFilterStrategy {
 
     private void addToMessageHeaderFilterMap(MessageHeaderFilter filter) {
         for (String ns : filter.getActivationNamespaces()) {
-            if (messageHeaderFiltersMap.containsKey(ns) && messageHeaderFiltersMap.get(ns)
-                                                           != messageHeaderFiltersMap
+            if (messageHeaderFiltersMap.containsKey(ns)
                     && !allowFilterNamespaceClash) {
                 throw new IllegalArgumentException(
                         "More then one MessageHeaderRelay activates "
diff --git a/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfSpringEndpoint.java b/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfSpringEndpoint.java
index 1373cbf..eaf3e3d 100644
--- a/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfSpringEndpoint.java
+++ b/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfSpringEndpoint.java
@@ -145,6 +145,7 @@ public class CxfSpringEndpoint extends CxfEndpoint implements ApplicationContext
         }
 
         // setup server factory bean
+        // TODO answer may contain null
         setupServerFactoryBean(answer, cls);
 
         // fill in values that have not been filled.
@@ -155,10 +156,9 @@ public class CxfSpringEndpoint extends CxfEndpoint implements ApplicationContext
             answer.setEndpointName(new QName(getEndpointNamespace(), getEndpointLocalName()));
         }
 
-        if (cls == null) {
-            checkName(answer.getEndpointName(), "endpoint/port name");
-            checkName(answer.getServiceName(), "service name");
-        }
+        checkName(answer.getEndpointName(), "endpoint/port name");
+        checkName(answer.getServiceName(), "service name");
+
         return answer;
     }
 
diff --git a/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/DefaultCxfBinding.java b/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/DefaultCxfBinding.java
index ff87f1e..230c028 100644
--- a/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/DefaultCxfBinding.java
+++ b/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/DefaultCxfBinding.java
@@ -766,6 +766,7 @@ public class DefaultCxfBinding implements CxfBinding, HeaderFilterStrategyAware
             transportHeaders.putAll(headers);
         }
 
+        // TODO camelExchange may be null
         DataFormat dataFormat = camelExchange.getProperty(CxfConstants.DATA_FORMAT_PROPERTY, DataFormat.class);
 
         for (Map.Entry<String, Object> entry : camelHeaders.entrySet()) {
diff --git a/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/jaxrs/CxfRsProducer.java b/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/jaxrs/CxfRsProducer.java
index c4710a5..ae9459f 100644
--- a/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/jaxrs/CxfRsProducer.java
+++ b/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/jaxrs/CxfRsProducer.java
@@ -276,11 +276,9 @@ public class CxfRsProducer extends DefaultAsyncProducer {
             int matrixStart = requestURL.indexOf(';');
             int matrixEnd = requestURL.indexOf('?') > -1 ? requestURL.indexOf('?') : requestURL.length();
             Map<String, String> maps = null;
-            if (requestURL != null && matrixStart > 0) {
+            if (matrixStart > 0) {
                 matrixParam = requestURL.substring(matrixStart + 1, matrixEnd);
-                if (matrixParam != null) {
-                    maps = getMatrixParametersFromMatrixString(matrixParam, ExchangeHelper.getCharsetName(exchange));
-                }
+                maps = getMatrixParametersFromMatrixString(matrixParam, ExchangeHelper.getCharsetName(exchange));
             }
             if (maps != null) {
                 for (Map.Entry<String, String> entry : maps.entrySet()) {
diff --git a/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/spring/CxfEndpointBeanDefinitionParser.java b/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/spring/CxfEndpointBeanDefinitionParser.java
index 54c9794..0a87610 100644
--- a/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/spring/CxfEndpointBeanDefinitionParser.java
+++ b/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/spring/CxfEndpointBeanDefinitionParser.java
@@ -37,8 +37,8 @@ public class CxfEndpointBeanDefinitionParser extends AbstractCxfBeanDefinitionPa
     }
 
     private boolean isSpringPlaceHolder(String value) {
-        if (value != null && value.startsWith("${") && value.endsWith("}")
-                || value.startsWith("{{") && value.endsWith("}}")) {
+        if (value != null && (value.startsWith("${") && value.endsWith("}")
+                || value.startsWith("{{") && value.endsWith("}}"))) {
             return true;
         }
         return false;
diff --git a/components/camel-djl/src/main/java/org/apache/camel/component/djl/model/CustomImageClassificationPredictor.java b/components/camel-djl/src/main/java/org/apache/camel/component/djl/model/CustomImageClassificationPredictor.java
index 0856caa..63b01e2 100644
--- a/components/camel-djl/src/main/java/org/apache/camel/component/djl/model/CustomImageClassificationPredictor.java
+++ b/components/camel-djl/src/main/java/org/apache/camel/component/djl/model/CustomImageClassificationPredictor.java
@@ -64,8 +64,8 @@ public class CustomImageClassificationPredictor extends AbstractPredictor {
     }
 
     private Map<String, Float> classify(Model model, Translator translator, File input) throws Exception {
-        try {
-            Image image = ImageFactory.getInstance().fromInputStream(new FileInputStream(input));
+        try (InputStream fileInputStream = new FileInputStream(input)) {
+            Image image = ImageFactory.getInstance().fromInputStream(fileInputStream);
             return classify(model, translator, image);
         } catch (IOException e) {
             LOG.error("Couldn't transform input into a BufferedImage");
diff --git a/components/camel-djl/src/main/java/org/apache/camel/component/djl/model/CustomObjectDetectionPredictor.java b/components/camel-djl/src/main/java/org/apache/camel/component/djl/model/CustomObjectDetectionPredictor.java
index b661b19..b683af9 100644
--- a/components/camel-djl/src/main/java/org/apache/camel/component/djl/model/CustomObjectDetectionPredictor.java
+++ b/components/camel-djl/src/main/java/org/apache/camel/component/djl/model/CustomObjectDetectionPredictor.java
@@ -72,8 +72,8 @@ public class CustomObjectDetectionPredictor extends AbstractPredictor {
     }
 
     public DetectedObjects classify(Model model, Translator translator, File input) throws Exception {
-        try {
-            Image image = ImageFactory.getInstance().fromInputStream(new FileInputStream(input));
+        try (InputStream fileInputStream = new FileInputStream(input)) {
+            Image image = ImageFactory.getInstance().fromInputStream(fileInputStream);
             return classify(model, translator, image);
         } catch (IOException e) {
             LOG.error("Couldn't transform input into a BufferedImage");
diff --git a/components/camel-djl/src/main/java/org/apache/camel/component/djl/model/ZooImageClassificationPredictor.java b/components/camel-djl/src/main/java/org/apache/camel/component/djl/model/ZooImageClassificationPredictor.java
index 843d255..19cf386 100644
--- a/components/camel-djl/src/main/java/org/apache/camel/component/djl/model/ZooImageClassificationPredictor.java
+++ b/components/camel-djl/src/main/java/org/apache/camel/component/djl/model/ZooImageClassificationPredictor.java
@@ -69,8 +69,8 @@ public class ZooImageClassificationPredictor extends AbstractPredictor {
     }
 
     public Map<String, Float> classify(File input) throws Exception {
-        try {
-            Image image = ImageFactory.getInstance().fromInputStream(new FileInputStream(input));
+        try (InputStream fileInputStream = new FileInputStream(input)) {
+            Image image = ImageFactory.getInstance().fromInputStream(fileInputStream);
             return classify(image);
         } catch (IOException e) {
             LOG.error("Couldn't transform input into a BufferedImage");
diff --git a/components/camel-djl/src/main/java/org/apache/camel/component/djl/model/ZooObjectDetectionPredictor.java b/components/camel-djl/src/main/java/org/apache/camel/component/djl/model/ZooObjectDetectionPredictor.java
index 493a835..661e60c 100644
--- a/components/camel-djl/src/main/java/org/apache/camel/component/djl/model/ZooObjectDetectionPredictor.java
+++ b/components/camel-djl/src/main/java/org/apache/camel/component/djl/model/ZooObjectDetectionPredictor.java
@@ -75,8 +75,8 @@ public class ZooObjectDetectionPredictor extends AbstractPredictor {
     }
 
     public DetectedObjects classify(File input) throws Exception {
-        try {
-            Image image = ImageFactory.getInstance().fromInputStream(new FileInputStream(input));
+        try (InputStream fileInputStream = new FileInputStream(input)) {
+            Image image = ImageFactory.getInstance().fromInputStream(fileInputStream);
             return classify(image);
         } catch (IOException e) {
             LOG.error("Couldn't transform input into a BufferedImage");
diff --git a/components/camel-elasticsearch-rest/src/main/java/org/apache/camel/component/elasticsearch/ElasticsearchProducer.java b/components/camel-elasticsearch-rest/src/main/java/org/apache/camel/component/elasticsearch/ElasticsearchProducer.java
index f95a23b..dd504c9 100644
--- a/components/camel-elasticsearch-rest/src/main/java/org/apache/camel/component/elasticsearch/ElasticsearchProducer.java
+++ b/components/camel-elasticsearch-rest/src/main/java/org/apache/camel/component/elasticsearch/ElasticsearchProducer.java
@@ -342,7 +342,7 @@ public class ElasticsearchProducer extends DefaultProducer {
         return client;
     }
 
-    private final class HighLevelClient extends RestHighLevelClient {
+    private static final class HighLevelClient extends RestHighLevelClient {
         private HighLevelClient(RestClient restClient) {
             super(restClient, client -> {
             }, Collections.emptyList());
diff --git a/components/camel-ftp/src/main/java/org/apache/camel/component/file/remote/FtpOperations.java b/components/camel-ftp/src/main/java/org/apache/camel/component/file/remote/FtpOperations.java
index ea8a593..e6335d3 100644
--- a/components/camel-ftp/src/main/java/org/apache/camel/component/file/remote/FtpOperations.java
+++ b/components/camel-ftp/src/main/java/org/apache/camel/component/file/remote/FtpOperations.java
@@ -524,7 +524,12 @@ public class FtpOperations implements RemoteFileOperations<FTPFile> {
             local = new File(local, relativeName);
 
             // create directory to local work file
-            local.mkdirs();
+            boolean result = local.mkdirs();
+            if (!result) {
+                log.warn(
+                        "Failed to create local directory {} while retrieving file in local work directory. Directory may already exist or have been created externally",
+                        local);
+            }
 
             // delete any local file (as its the temp file that is in the
             // in-progress download)
diff --git a/components/camel-hbase/src/main/java/org/apache/camel/component/hbase/HBaseProducer.java b/components/camel-hbase/src/main/java/org/apache/camel/component/hbase/HBaseProducer.java
index 47823b5..f17101b 100644
--- a/components/camel-hbase/src/main/java/org/apache/camel/component/hbase/HBaseProducer.java
+++ b/components/camel-hbase/src/main/java/org/apache/camel/component/hbase/HBaseProducer.java
@@ -200,8 +200,9 @@ public class HBaseProducer extends DefaultProducer {
             throws Exception {
         List<HBaseRow> rowSet = new LinkedList<>();
 
-        HBaseRow startRow = new HBaseRow(model.getCells());
-        startRow.setId(start);
+        // unused
+        //HBaseRow startRow = new HBaseRow(model.getCells());
+        //startRow.setId(start);
 
         Scan scan = new Scan();
         if (start != null) {
diff --git a/components/camel-hdfs/src/main/java/org/apache/camel/component/hdfs/HdfsNormalFileHandler.java b/components/camel-hdfs/src/main/java/org/apache/camel/component/hdfs/HdfsNormalFileHandler.java
index 1393fca..372cb06 100644
--- a/components/camel-hdfs/src/main/java/org/apache/camel/component/hdfs/HdfsNormalFileHandler.java
+++ b/components/camel-hdfs/src/main/java/org/apache/camel/component/hdfs/HdfsNormalFileHandler.java
@@ -32,9 +32,12 @@ import org.apache.hadoop.fs.FSDataOutputStream;
 import org.apache.hadoop.fs.FileSystem;
 import org.apache.hadoop.fs.FileUtil;
 import org.apache.hadoop.fs.Path;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 class HdfsNormalFileHandler extends DefaultHdfsFile<OutputStream, InputStream> {
 
+    private static final Logger LOG = LoggerFactory.getLogger(HdfsNormalFileHandler.class);
     private boolean consumed;
 
     @Override
@@ -152,7 +155,10 @@ class HdfsNormalFileHandler extends DefaultHdfsFile<OutputStream, InputStream> {
             }
 
             if (outputDest.exists()) {
-                outputDest.delete();
+                boolean result = outputDest.delete();
+                if (!result) {
+                    LOG.error("Failed to delete output destination {}", outputDest);
+                }
             }
 
             HdfsInfoFactory hdfsInfoFactory = new HdfsInfoFactory(configuration);
diff --git a/components/camel-hystrix/src/main/java/org/apache/camel/component/hystrix/processor/HystrixProcessor.java b/components/camel-hystrix/src/main/java/org/apache/camel/component/hystrix/processor/HystrixProcessor.java
index 686c37c..0210262 100644
--- a/components/camel-hystrix/src/main/java/org/apache/camel/component/hystrix/processor/HystrixProcessor.java
+++ b/components/camel-hystrix/src/main/java/org/apache/camel/component/hystrix/processor/HystrixProcessor.java
@@ -84,6 +84,7 @@ public class HystrixProcessor extends AsyncProcessorSupport
         return groupKey.name();
     }
 
+    // TODO Recursion?
     @ManagedAttribute
     public boolean isFallbackViaNetwork() {
         return isFallbackViaNetwork();
diff --git a/components/camel-jaxb/src/main/java/org/apache/camel/converter/jaxb/JaxbDataFormat.java b/components/camel-jaxb/src/main/java/org/apache/camel/converter/jaxb/JaxbDataFormat.java
index 5b48740..4a53b83 100644
--- a/components/camel-jaxb/src/main/java/org/apache/camel/converter/jaxb/JaxbDataFormat.java
+++ b/components/camel-jaxb/src/main/java/org/apache/camel/converter/jaxb/JaxbDataFormat.java
@@ -635,7 +635,10 @@ public class JaxbDataFormat extends ServiceSupport
 
     private void returnSchemaFactory(SchemaFactory factory) {
         if (factory != schemaFactory) {
-            SCHEMA_FACTORY_POOL.offer(factory);
+            boolean result = SCHEMA_FACTORY_POOL.offer(factory);
+            if (!result) {
+                LOG.error("offer() failed for SCHEMA_FACTORY_POOL");
+            }
         }
     }
 
diff --git a/components/camel-jbpm/src/main/java/org/apache/camel/component/jbpm/JBPMConsumer.java b/components/camel-jbpm/src/main/java/org/apache/camel/component/jbpm/JBPMConsumer.java
index 5e8d165..255a28b 100644
--- a/components/camel-jbpm/src/main/java/org/apache/camel/component/jbpm/JBPMConsumer.java
+++ b/components/camel-jbpm/src/main/java/org/apache/camel/component/jbpm/JBPMConsumer.java
@@ -188,8 +188,13 @@ public class JBPMConsumer extends DefaultConsumer implements DeploymentEventList
             return;
         }
 
-        LOGGER.debug("Adding consumer {} on {}", consumer, consumerAware);
-        consumerAware.addConsumer(consumer);
+        if (consumerAware != null) {
+            LOGGER.debug("Adding consumer {} on {}", consumer, consumerAware);
+            consumerAware.addConsumer(consumer);
+        } else {
+            LOGGER.error(
+                    "Skipping adding of consumer on instance of JBPMCamelConsumerAware, as we failed either to get non-null instance of JBPMCamelConsumerAware from cache or to create it.");
+        }
     }
 
     @Override
diff --git a/components/camel-jdbc/src/main/java/org/apache/camel/component/jdbc/JdbcProducer.java b/components/camel-jdbc/src/main/java/org/apache/camel/component/jdbc/JdbcProducer.java
index 44e8ce1..757b94f 100644
--- a/components/camel-jdbc/src/main/java/org/apache/camel/component/jdbc/JdbcProducer.java
+++ b/components/camel-jdbc/src/main/java/org/apache/camel/component/jdbc/JdbcProducer.java
@@ -191,12 +191,11 @@ public class JdbcProducer extends DefaultProducer {
     }
 
     private boolean doCreateAndExecuteSqlStatement(Exchange exchange, String sql, Connection conn) throws Exception {
-        Statement stmt = null;
+
         ResultSet rs = null;
         boolean shouldCloseResources = true;
 
-        try {
-            stmt = conn.createStatement();
+        try (Statement stmt = conn.createStatement()) {
 
             if (parameters != null && !parameters.isEmpty()) {
                 Map<String, Object> copy = new HashMap<>(parameters);
@@ -241,7 +240,6 @@ public class JdbcProducer extends DefaultProducer {
         } finally {
             if (shouldCloseResources) {
                 closeQuietly(rs);
-                closeQuietly(stmt);
             }
         }
         return shouldCloseResources;
diff --git a/components/camel-jetty-common/src/main/java/org/apache/camel/component/jetty/CamelFilterWrapper.java b/components/camel-jetty-common/src/main/java/org/apache/camel/component/jetty/CamelFilterWrapper.java
index 9601322..f66543d 100644
--- a/components/camel-jetty-common/src/main/java/org/apache/camel/component/jetty/CamelFilterWrapper.java
+++ b/components/camel-jetty-common/src/main/java/org/apache/camel/component/jetty/CamelFilterWrapper.java
@@ -27,11 +27,15 @@ import javax.servlet.ServletException;
 import javax.servlet.ServletRequest;
 import javax.servlet.ServletResponse;
 
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
 /**
  * The camel filter wrapper that processes only initially dispatched requests. Re-dispatched requests are ignored.
  */
 public class CamelFilterWrapper implements Filter {
 
+    private static final Logger LOG = LoggerFactory.getLogger(CamelFilterWrapper.class);
     private Filter wrapped;
 
     public CamelFilterWrapper(Filter wrapped) {
@@ -62,7 +66,10 @@ public class CamelFilterWrapper implements Filter {
             //go ahead and set it to the default tmp dir on the system.
             try {
                 File file = Files.createTempFile("camel", "").toFile();
-                file.delete();
+                boolean result = file.delete();
+                if (!result) {
+                    LOG.error("failed to delete {}", file);
+                }
                 config.getServletContext().setAttribute("javax.servlet.context.tempdir",
                         file.getParentFile());
             } catch (IOException e) {
diff --git a/components/camel-jetty-common/src/main/java/org/apache/camel/component/jetty/JettyHttpComponent.java b/components/camel-jetty-common/src/main/java/org/apache/camel/component/jetty/JettyHttpComponent.java
index c0af82c..13ab0cf 100644
--- a/components/camel-jetty-common/src/main/java/org/apache/camel/component/jetty/JettyHttpComponent.java
+++ b/components/camel-jetty-common/src/main/java/org/apache/camel/component/jetty/JettyHttpComponent.java
@@ -138,15 +138,13 @@ public abstract class JettyHttpComponent extends HttpCommonComponent
     public JettyHttpComponent() {
     }
 
-    class ConnectorRef {
-        CamelContext camelContext;
+    static class ConnectorRef {
         Server server;
         Connector connector;
         CamelServlet servlet;
         int refCount;
 
-        ConnectorRef(CamelContext camelContext, Server server, Connector connector, CamelServlet servlet) {
-            this.camelContext = camelContext;
+        ConnectorRef(Server server, Connector connector, CamelServlet servlet) {
             this.server = server;
             this.connector = connector;
             this.servlet = servlet;
@@ -172,8 +170,6 @@ public abstract class JettyHttpComponent extends HttpCommonComponent
         // must extract well known parameters before we create the endpoint
         List<Handler> handlerList = resolveAndRemoveReferenceListParameter(parameters, "handlers", Handler.class);
         HttpBinding binding = resolveAndRemoveReferenceParameter(parameters, "httpBindingRef", HttpBinding.class);
-        JettyHttpBinding jettyBinding
-                = resolveAndRemoveReferenceParameter(parameters, "jettyHttpBindingRef", JettyHttpBinding.class);
         Boolean enableJmx = getAndRemoveParameter(parameters, "enableJmx", Boolean.class);
         Boolean enableMultipartFilter = getAndRemoveParameter(parameters, "enableMultipartFilter",
                 Boolean.class, true);
@@ -235,11 +231,6 @@ public abstract class JettyHttpComponent extends HttpCommonComponent
         if (binding != null) {
             endpoint.setBinding(binding);
         }
-        // prefer to use endpoint configured over component configured
-        if (jettyBinding == null) {
-            // fallback to component configured
-            jettyBinding = getJettyHttpBinding();
-        }
         if (enableJmx != null) {
             endpoint.setEnableJmx(enableJmx);
         } else {
@@ -335,7 +326,7 @@ public abstract class JettyHttpComponent extends HttpCommonComponent
                 server.addConnector(connector);
 
                 connectorRef = new ConnectorRef(
-                        getCamelContext(), server, connector,
+                        server, connector,
                         createServletForConnector(server, connector, endpoint.getHandlers(), endpoint));
                 // must enable session before we start
                 if (endpoint.isSessionSupport()) {
@@ -1171,7 +1162,10 @@ public abstract class JettyHttpComponent extends HttpCommonComponent
         context.addServlet(holder, "/*");
 
         File file = File.createTempFile("camel", "");
-        file.delete();
+        boolean result = file.delete();
+        if (!result) {
+            LOG.error("failed to delete {}", file);
+        }
 
         //must register the MultipartConfig to make jetty server multipart aware
         holder.getRegistration()
diff --git a/components/camel-jetty/src/main/java/org/apache/camel/component/jetty9/AttachmentHttpBinding.java b/components/camel-jetty/src/main/java/org/apache/camel/component/jetty9/AttachmentHttpBinding.java
index fb5f4c4..d7b54b1 100644
--- a/components/camel-jetty/src/main/java/org/apache/camel/component/jetty9/AttachmentHttpBinding.java
+++ b/components/camel-jetty/src/main/java/org/apache/camel/component/jetty9/AttachmentHttpBinding.java
@@ -129,7 +129,7 @@ final class AttachmentHttpBinding extends DefaultHttpBinding {
         }
     }
 
-    final class PartDataSource implements DataSource {
+    static final class PartDataSource implements DataSource {
         private final Part part;
 
         PartDataSource(Part part) {
diff --git a/components/camel-jgroups-raft/src/main/java/org/apache/camel/component/jgroups/raft/cluster/JGroupsRaftClusterView.java b/components/camel-jgroups-raft/src/main/java/org/apache/camel/component/jgroups/raft/cluster/JGroupsRaftClusterView.java
index 25baafe..1de9c0a 100644
--- a/components/camel-jgroups-raft/src/main/java/org/apache/camel/component/jgroups/raft/cluster/JGroupsRaftClusterView.java
+++ b/components/camel-jgroups-raft/src/main/java/org/apache/camel/component/jgroups/raft/cluster/JGroupsRaftClusterView.java
@@ -103,22 +103,21 @@ public class JGroupsRaftClusterView extends AbstractCamelClusterView {
         isMaster = false;
         fireLeadershipChangedEvent(Optional.empty());
         if (raftHandle != null) {
-            raftHandle.channel().close();
-            raftHandle = null;
-        }
 
-        LOG.info("Closing JGroupsraft Channel for JGroupsRaftClusterView with Id {}", raftId);
-        if (raftHandle != null && raftHandle.channel() != null) {
-            raftHandle.channel().close();
+            if (raftHandle.channel() != null) {
+                LOG.info("Closing JGroupsraft Channel for JGroupsRaftClusterView with Id {}", raftId);
+                raftHandle.channel().close();
+                LOG.info("Closed JGroupsraft Channel Channel for JGroupsRaftClusterView with Id {}", raftId);
+            }
 
-            LOG.info("Closed JGroupsraft Channel Channel for JGroupsRaftClusterView with Id {}", raftId);
-        }
-        LOG.info("Closing Log for JGroupsRaftClusterView with Id {}", raftId);
-        if (raftHandle != null && raftHandle.log() != null) {
-            raftHandle.log().close();
-            LOG.info("Closed Log for JGroupsRaftClusterView with Id {}", raftId);
+            if (raftHandle.log() != null) {
+                LOG.info("Closing Log for JGroupsRaftClusterView with Id {}", raftId);
+                raftHandle.log().close();
+                LOG.info("Closed Log for JGroupsRaftClusterView with Id {}", raftId);
+            }
+
+            raftHandle = null;
         }
-        raftHandle = null;
     }
 
     public boolean isMaster() {
diff --git a/components/camel-jira/src/main/java/org/apache/camel/component/jira/producer/AddIssueProducer.java b/components/camel-jira/src/main/java/org/apache/camel/component/jira/producer/AddIssueProducer.java
index 1fb788b..2a902f1 100644
--- a/components/camel-jira/src/main/java/org/apache/camel/component/jira/producer/AddIssueProducer.java
+++ b/components/camel-jira/src/main/java/org/apache/camel/component/jira/producer/AddIssueProducer.java
@@ -76,11 +76,11 @@ public class AddIssueProducer extends DefaultProducer {
         }
         if (issueTypeId == null) {
             throw new IllegalArgumentException(
-                    "A valid issue type id is required, actual: id(" + issueTypeId + "), name(" + issueTypeName + ")");
+                    "A valid issue type id is required, actual: id(" + null + "), name(" + issueTypeName + ")");
         }
 
         if (summary == null) {
-            throw new IllegalArgumentException("A summary field is required, actual value: " + summary);
+            throw new IllegalArgumentException("A summary field is required.");
         }
 
         IssueInputBuilder builder = new IssueInputBuilder(projectKey, issueTypeId);
diff --git a/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsConsumer.java b/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsConsumer.java
index 17b3283..e1a391e 100644
--- a/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsConsumer.java
+++ b/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsConsumer.java
@@ -19,6 +19,7 @@ package org.apache.camel.component.jms;
 import java.util.concurrent.ExecutorService;
 
 import javax.jms.Connection;
+import javax.jms.ConnectionFactory;
 
 import org.apache.camel.FailedToCreateConsumerException;
 import org.apache.camel.Processor;
@@ -125,8 +126,14 @@ public class JmsConsumer extends DefaultConsumer implements Suspendable {
     protected void testConnectionOnStartup() throws FailedToCreateConsumerException {
         try {
             LOG.debug("Testing JMS Connection on startup for destination: {}", getDestinationName());
-            Connection con = listenerContainer.getConnectionFactory().createConnection();
-            JmsUtils.closeConnection(con);
+            ConnectionFactory connectionfactory = listenerContainer.getConnectionFactory();
+            if (connectionfactory != null) {
+                Connection con = connectionfactory.createConnection();
+                JmsUtils.closeConnection(con);
+            } else {
+                LOG.error("connection factory is null");
+                throw new IllegalStateException("connection factory is null");
+            }
             LOG.debug("Successfully tested JMS Connection on startup for destination: {}", getDestinationName());
         } catch (Exception e) {
             String msg = "Cannot get JMS Connection on startup for destination " + getDestinationName();
diff --git a/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsProducer.java b/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsProducer.java
index 1f58603..ca94be2 100644
--- a/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsProducer.java
+++ b/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsProducer.java
@@ -22,6 +22,7 @@ import java.util.concurrent.ScheduledExecutorService;
 import java.util.concurrent.atomic.AtomicBoolean;
 
 import javax.jms.Connection;
+import javax.jms.ConnectionFactory;
 import javax.jms.Destination;
 import javax.jms.JMSException;
 import javax.jms.Message;
@@ -518,8 +519,14 @@ public class JmsProducer extends DefaultAsyncProducer {
                 LOG.debug("Testing JMS Connection on startup for destination: {}", template.getDefaultDestinationName());
             }
 
-            Connection conn = template.getConnectionFactory().createConnection();
-            JmsUtils.closeConnection(conn);
+            ConnectionFactory connectionfactory = template.getConnectionFactory();
+            if (connectionfactory != null) {
+                Connection conn = connectionfactory.createConnection();
+                JmsUtils.closeConnection(conn);
+            } else {
+                LOG.error("connection factory is null");
+                throw new IllegalStateException("connection factory is null");
+            }
 
             LOG.debug("Successfully tested JMS Connection on startup for destination: {}",
                     template.getDefaultDestinationName());
diff --git a/components/camel-joor/src/main/java/org/apache/camel/language/joor/JoorScriptingCompiler.java b/components/camel-joor/src/main/java/org/apache/camel/language/joor/JoorScriptingCompiler.java
index 4890bdf..10bbca2 100644
--- a/components/camel-joor/src/main/java/org/apache/camel/language/joor/JoorScriptingCompiler.java
+++ b/components/camel-joor/src/main/java/org/apache/camel/language/joor/JoorScriptingCompiler.java
@@ -167,7 +167,7 @@ public class JoorScriptingCompiler extends ServiceSupport implements StaticServi
             for (Map.Entry<String, Object> bind : bindings.entrySet()) {
                 String vn = bind.getKey();
                 String cn = ObjectHelper.className(bind.getValue());
-                String b = String.format("        var %s = (%s) args.get(\"%s\");\n", vn, cn, vn);
+                String b = String.format("        var %s = (%s) args.get(\"%s\");%n", vn, cn, vn);
                 sb.append(b);
             }
             sb.append("\n");
diff --git a/components/camel-jsonata/src/main/java/org/apache/camel/component/jsonata/JsonataEndpoint.java b/components/camel-jsonata/src/main/java/org/apache/camel/component/jsonata/JsonataEndpoint.java
index d654f66..b4593c1 100644
--- a/components/camel-jsonata/src/main/java/org/apache/camel/component/jsonata/JsonataEndpoint.java
+++ b/components/camel-jsonata/src/main/java/org/apache/camel/component/jsonata/JsonataEndpoint.java
@@ -103,11 +103,14 @@ public class JsonataEndpoint extends ResourceEndpoint {
 
         JsonNode output = null;
         if (expressions == null) {
-            String spec = new BufferedReader(
-                    new InputStreamReader(getResourceAsInputStream(), StandardCharsets.UTF_8))
-                            .lines()
-                            .collect(Collectors.joining("\n"));
-            expressions = Expressions.parse(spec);
+            try (InputStreamReader inputStreamReader
+                    = new InputStreamReader(getResourceAsInputStream(), StandardCharsets.UTF_8);
+                 BufferedReader bufferedReader = new BufferedReader(inputStreamReader);) {
+                String spec = bufferedReader
+                        .lines()
+                        .collect(Collectors.joining("\n"));
+                expressions = Expressions.parse(spec);
+            }
         }
         output = expressions.evaluate(input);
 
diff --git a/components/camel-kafka/src/main/java/org/apache/camel/component/kafka/KafkaProducer.java b/components/camel-kafka/src/main/java/org/apache/camel/component/kafka/KafkaProducer.java
index 335c7b2..43d6541 100644
--- a/components/camel-kafka/src/main/java/org/apache/camel/component/kafka/KafkaProducer.java
+++ b/components/camel-kafka/src/main/java/org/apache/camel/component/kafka/KafkaProducer.java
@@ -164,7 +164,7 @@ public class KafkaProducer extends DefaultAsyncProducer {
         Object overrideTimeStamp = exchange.getIn().removeHeader(KafkaConstants.OVERRIDE_TIMESTAMP);
         if (overrideTimeStamp != null && overrideTimeStamp instanceof Long) {
             LOG.debug("Using override TimeStamp: {}", overrideTimeStamp);
-            timeStamp = ((Long) overrideTimeStamp).longValue();
+            timeStamp = (Long) overrideTimeStamp;
         }
 
         // extracting headers which need to be propagated
@@ -234,7 +234,7 @@ public class KafkaProducer extends DefaultAsyncProducer {
                         if (innerMmessage.getHeader(KafkaConstants.OVERRIDE_TIMESTAMP) != null) {
                             if (innerMmessage.getHeader(KafkaConstants.OVERRIDE_TIMESTAMP) instanceof Long) {
                                 innerTimestamp
-                                        = ((Long) innerMmessage.removeHeader(KafkaConstants.OVERRIDE_TIMESTAMP)).longValue();
+                                        = (Long) innerMmessage.removeHeader(KafkaConstants.OVERRIDE_TIMESTAMP);
                             }
                         }
                         ex = innerExchange == null ? exchange : innerExchange;
@@ -405,7 +405,7 @@ public class KafkaProducer extends DefaultAsyncProducer {
         return answer != null ? answer : object;
     }
 
-    private final class DelegatingCallback implements Callback {
+    private static final class DelegatingCallback implements Callback {
 
         private final List<Callback> callbacks;
 
diff --git a/components/camel-kamelet/src/main/java/org/apache/camel/component/kamelet/Kamelet.java b/components/camel-kamelet/src/main/java/org/apache/camel/component/kamelet/Kamelet.java
index e54c6db..2376b32 100644
--- a/components/camel-kamelet/src/main/java/org/apache/camel/component/kamelet/Kamelet.java
+++ b/components/camel-kamelet/src/main/java/org/apache/camel/component/kamelet/Kamelet.java
@@ -107,18 +107,17 @@ public final class Kamelet {
 
     public static void extractKameletProperties(CamelContext context, Map<String, Object> properties, String... elements) {
         PropertiesComponent pc = context.getPropertiesComponent();
-        String prefix = Kamelet.PROPERTIES_PREFIX;
+        StringBuffer prefixBuffer = new StringBuffer(Kamelet.PROPERTIES_PREFIX);
 
         for (String element : elements) {
             if (element == null) {
                 continue;
             }
+            prefixBuffer.append(element + ".");
 
-            prefix = prefix + element + ".";
-
-            Properties prefixed = pc.loadProperties(Kamelet.startsWith(prefix));
+            Properties prefixed = pc.loadProperties(Kamelet.startsWith(prefixBuffer.toString()));
             for (String name : prefixed.stringPropertyNames()) {
-                properties.put(name.substring(prefix.length()), prefixed.getProperty(name));
+                properties.put(name.substring(prefixBuffer.toString().length()), prefixed.getProperty(name));
             }
         }
     }
diff --git a/components/camel-lucene/src/main/java/org/apache/camel/component/lucene/LuceneIndexer.java b/components/camel-lucene/src/main/java/org/apache/camel/component/lucene/LuceneIndexer.java
index 5f64ba3..9e5e14d 100644
--- a/components/camel-lucene/src/main/java/org/apache/camel/component/lucene/LuceneIndexer.java
+++ b/components/camel-lucene/src/main/java/org/apache/camel/component/lucene/LuceneIndexer.java
@@ -51,7 +51,10 @@ public class LuceneIndexer {
     public LuceneIndexer(File sourceDirectory, File indexDirectory, Analyzer analyzer) throws Exception {
         if (indexDirectory != null) {
             if (!indexDirectory.exists()) {
-                indexDirectory.mkdir();
+                boolean result = indexDirectory.mkdir();
+                if (!result) {
+                    LOG.error("mkdir failed for {}. Maybe this folder was created externally", indexDirectory);
+                }
             }
             this.setNiofsDirectory(new NIOFSDirectory(indexDirectory.toPath()));
         } else {
diff --git a/components/camel-metrics/src/main/java/org/apache/camel/component/metrics/GaugeProducer.java b/components/camel-metrics/src/main/java/org/apache/camel/component/metrics/GaugeProducer.java
index fd02f3b..9e7b8e6 100644
--- a/components/camel-metrics/src/main/java/org/apache/camel/component/metrics/GaugeProducer.java
+++ b/components/camel-metrics/src/main/java/org/apache/camel/component/metrics/GaugeProducer.java
@@ -66,7 +66,7 @@ public class GaugeProducer extends AbstractMetricsProducer {
         }
     }
 
-    class CamelMetricsGauge implements Gauge<Object> {
+    static class CamelMetricsGauge implements Gauge<Object> {
         private Object subject;
 
         CamelMetricsGauge(Object subject) {
diff --git a/components/camel-micrometer/src/main/java/org/apache/camel/component/micrometer/json/MicrometerModule.java b/components/camel-micrometer/src/main/java/org/apache/camel/component/micrometer/json/MicrometerModule.java
index c4b10d4..26a271b 100644
--- a/components/camel-micrometer/src/main/java/org/apache/camel/component/micrometer/json/MicrometerModule.java
+++ b/components/camel-micrometer/src/main/java/org/apache/camel/component/micrometer/json/MicrometerModule.java
@@ -128,6 +128,7 @@ public class MicrometerModule extends Module {
             json.writeNumberField("total", snapshot.total(timeUnit));
             ValueAtPercentile[] percentiles = snapshot.percentileValues();
             for (ValueAtPercentile percentile : percentiles) {
+                // TODO format "p%0.3d" is incorrect
                 json.writeNumberField(String.format("p%0.3d", percentile.percentile()), percentile.value(timeUnit));
             }
         }
diff --git a/components/camel-milo/src/main/java/org/apache/camel/component/milo/client/MiloClientConfiguration.java b/components/camel-milo/src/main/java/org/apache/camel/component/milo/client/MiloClientConfiguration.java
index e8e1859..485b72c 100644
--- a/components/camel-milo/src/main/java/org/apache/camel/component/milo/client/MiloClientConfiguration.java
+++ b/components/camel-milo/src/main/java/org/apache/camel/component/milo/client/MiloClientConfiguration.java
@@ -130,7 +130,7 @@ public class MiloClientConfiguration implements Cloneable {
         this.keyAlias = other.keyAlias;
         this.keyStorePassword = other.keyStorePassword;
         this.keyPassword = other.keyPassword;
-        this.allowedSecurityPolicies = allowedSecurityPolicies != null ? new HashSet<>(other.allowedSecurityPolicies) : null;
+        this.allowedSecurityPolicies = new HashSet<>(other.allowedSecurityPolicies);
         this.overrideHost = other.overrideHost;
         this.requestedPublishingInterval = other.requestedPublishingInterval;
     }
diff --git a/components/camel-mllp/src/main/java/org/apache/camel/component/mllp/internal/Hl7Util.java b/components/camel-mllp/src/main/java/org/apache/camel/component/mllp/internal/Hl7Util.java
index df82bd2..9ca7b71 100644
--- a/components/camel-mllp/src/main/java/org/apache/camel/component/mllp/internal/Hl7Util.java
+++ b/components/camel-mllp/src/main/java/org/apache/camel/component/mllp/internal/Hl7Util.java
@@ -243,6 +243,7 @@ public final class Hl7Util {
 
         // MSH-7
         mllpSocketBuffer.write(fieldSeparator);
+        // TODO static field TIMESTAMP_FORMAT of type java.text.DateFormat isn't thread safe! Think about using ThreadLocal
         mllpSocketBuffer.write(TIMESTAMP_FORMAT.format(new Date()).getBytes());
 
         // Don't copy MSH-8
diff --git a/components/camel-mongodb-gridfs/src/main/java/org/apache/camel/component/mongodb/gridfs/GridFsProducer.java b/components/camel-mongodb-gridfs/src/main/java/org/apache/camel/component/mongodb/gridfs/GridFsProducer.java
index 1e43745..3481a46 100644
--- a/components/camel-mongodb-gridfs/src/main/java/org/apache/camel/component/mongodb/gridfs/GridFsProducer.java
+++ b/components/camel-mongodb-gridfs/src/main/java/org/apache/camel/component/mongodb/gridfs/GridFsProducer.java
@@ -129,7 +129,7 @@ public class GridFsProducer extends DefaultProducer {
         }
     }
 
-    private class DBCursorFilenameReader extends Reader {
+    private static class DBCursorFilenameReader extends Reader {
         MongoCursor<GridFSFile> cursor;
         StringBuilder current;
         int pos;
diff --git a/components/camel-mongodb/src/main/java/org/apache/camel/component/mongodb/converters/MongoDbFallbackConverter.java b/components/camel-mongodb/src/main/java/org/apache/camel/component/mongodb/converters/MongoDbFallbackConverter.java
index ed209df..e3449c6 100644
--- a/components/camel-mongodb/src/main/java/org/apache/camel/component/mongodb/converters/MongoDbFallbackConverter.java
+++ b/components/camel-mongodb/src/main/java/org/apache/camel/component/mongodb/converters/MongoDbFallbackConverter.java
@@ -48,21 +48,21 @@ public final class MongoDbFallbackConverter {
 
             if (type == DBObject.class) {
                 Object out = BasicDBObject.parse(value.toString());
-                if (out instanceof DBObject) {
+                if (out instanceof DBObject) { // condition is always true!
                     return out;
                 } else {
                     throw new InvalidPayloadException(exchange, type);
                 }
             } else if (type == BasicDBList.class) {
                 Object out = BasicDBObject.parse(value.toString());
-                if (out instanceof BasicDBList) {
+                if (out instanceof BasicDBList) { // condition is always false
                     return out;
                 } else {
                     throw new InvalidPayloadException(exchange, type);
                 }
             } else if (type == BasicDBObject.class) {
                 Object out = BasicDBObject.parse(value.toString());
-                if (out instanceof BasicDBObject) {
+                if (out instanceof BasicDBObject) { // condition is always true
                     return out;
                 } else {
                     throw new InvalidPayloadException(exchange, type);
diff --git a/components/camel-printer/src/main/java/org/apache/camel/component/printer/PrinterConfiguration.java b/components/camel-printer/src/main/java/org/apache/camel/component/printer/PrinterConfiguration.java
index c5a6885..63b9ad6 100644
--- a/components/camel-printer/src/main/java/org/apache/camel/component/printer/PrinterConfiguration.java
+++ b/components/camel-printer/src/main/java/org/apache/camel/component/printer/PrinterConfiguration.java
@@ -107,7 +107,7 @@ public class PrinterConfiguration {
         setInternalSides(assignSides(sides));
         setInternalOrientation(assignOrientation(orientation));
         if (printSettings.containsKey("sendToPrinter")) {
-            if (!(Boolean.valueOf((String) printSettings.get("sendToPrinter")))) {
+            if (!(Boolean.parseBoolean((String) printSettings.get("sendToPrinter")))) {
                 setSendToPrinter(false);
             }
         }
diff --git a/components/camel-pulsar/src/main/java/org/apache/camel/component/pulsar/PulsarEndpoint.java b/components/camel-pulsar/src/main/java/org/apache/camel/component/pulsar/PulsarEndpoint.java
index d89088e..e8f48f5 100644
--- a/components/camel-pulsar/src/main/java/org/apache/camel/component/pulsar/PulsarEndpoint.java
+++ b/components/camel-pulsar/src/main/java/org/apache/camel/component/pulsar/PulsarEndpoint.java
@@ -36,7 +36,7 @@ import org.apache.pulsar.client.api.PulsarClient;
 public class PulsarEndpoint extends DefaultEndpoint {
 
     private PulsarClient pulsarClient;
-    private String uri;
+    private String uri; // TODO this field is reported unread
 
     @UriPath(enums = "persistent,non-persistent")
     @Metadata(required = true)
diff --git a/components/camel-reactive-streams/src/main/java/org/apache/camel/component/reactive/streams/engine/CamelSubscription.java b/components/camel-reactive-streams/src/main/java/org/apache/camel/component/reactive/streams/engine/CamelSubscription.java
index 3935185..b9ecad2 100644
--- a/components/camel-reactive-streams/src/main/java/org/apache/camel/component/reactive/streams/engine/CamelSubscription.java
+++ b/components/camel-reactive-streams/src/main/java/org/apache/camel/component/reactive/streams/engine/CamelSubscription.java
@@ -202,11 +202,15 @@ public class CamelSubscription implements Subscription {
     public void cancel() {
         publisher.unsubscribe(this);
 
+        List<Exchange> bufferCopy;
         mutex.lock();
-        this.terminated = true;
-        List<Exchange> bufferCopy = new LinkedList<>(buffer);
-        this.buffer.clear();
-        mutex.unlock();
+        try {
+            this.terminated = true;
+            bufferCopy = new LinkedList<>(buffer);
+            this.buffer.clear();
+        } finally {
+            mutex.unlock();
+        }
 
         discardBuffer(bufferCopy);
     }
diff --git a/components/camel-reactor/src/main/java/org/apache/camel/component/reactor/engine/ReactorCamelProcessor.java b/components/camel-reactor/src/main/java/org/apache/camel/component/reactor/engine/ReactorCamelProcessor.java
index ad3e546..c33100a 100644
--- a/components/camel-reactor/src/main/java/org/apache/camel/component/reactor/engine/ReactorCamelProcessor.java
+++ b/components/camel-reactor/src/main/java/org/apache/camel/component/reactor/engine/ReactorCamelProcessor.java
@@ -71,7 +71,7 @@ final class ReactorCamelProcessor implements Closeable {
             throw new IllegalStateException("A producer is already attached to the stream '" + name + "'");
         }
 
-        if (this.camelProducer != producer) {
+        if (this.camelProducer != producer) { // this condition is always true
             detach();
 
             ReactiveStreamsBackpressureStrategy strategy = producer.getEndpoint().getBackpressureStrategy();
diff --git a/components/camel-rest/src/main/java/org/apache/camel/component/rest/DefaultRestRegistry.java b/components/camel-rest/src/main/java/org/apache/camel/component/rest/DefaultRestRegistry.java
index da40e10..d564872 100644
--- a/components/camel-rest/src/main/java/org/apache/camel/component/rest/DefaultRestRegistry.java
+++ b/components/camel-rest/src/main/java/org/apache/camel/component/rest/DefaultRestRegistry.java
@@ -156,7 +156,7 @@ public class DefaultRestRegistry extends ServiceSupport implements StaticService
     /**
      * Represents a rest service
      */
-    private final class RestServiceEntry implements RestService {
+    private static final class RestServiceEntry implements RestService {
 
         private final Consumer consumer;
         private final String url;
diff --git a/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/SjmsProducer.java b/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/SjmsProducer.java
index a7676e4..1a779fc 100644
--- a/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/SjmsProducer.java
+++ b/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/SjmsProducer.java
@@ -112,7 +112,7 @@ public class SjmsProducer extends DefaultAsyncProducer {
                     // validate that replyToType and replyTo is configured accordingly
                     if (endpoint.getReplyToType() != null) {
                         // setting temporary with a fixed replyTo is not supported
-                        if (endpoint.getReplyTo() != null && endpoint.getReplyToType().equals(ReplyToType.Temporary.name())) {
+                        if (endpoint.getReplyTo() != null && endpoint.getReplyToType().equals(ReplyToType.Temporary)) {
                             throw new IllegalArgumentException(
                                     "ReplyToType " + ReplyToType.Temporary
                                                                + " is not supported when replyTo " + endpoint.getReplyTo()
diff --git a/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/TransactionOnCompletion.java b/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/TransactionOnCompletion.java
index 33ba7ba..556ed47 100644
--- a/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/TransactionOnCompletion.java
+++ b/components/camel-sjms/src/main/java/org/apache/camel/component/sjms/TransactionOnCompletion.java
@@ -59,7 +59,7 @@ class TransactionOnCompletion extends SynchronizationAdapter {
 
     @Override
     public boolean equals(Object o) {
-        if (!(o instanceof TransactionOnCompletion) || o == null) {
+        if (!(o instanceof TransactionOnCompletion)) {
             return false;
         }
 
diff --git a/components/camel-smpp/src/main/java/org/apache/camel/component/smpp/AbstractSmppCommand.java b/components/camel-smpp/src/main/java/org/apache/camel/component/smpp/AbstractSmppCommand.java
index cb19f02..ada2b35 100644
--- a/components/camel-smpp/src/main/java/org/apache/camel/component/smpp/AbstractSmppCommand.java
+++ b/components/camel-smpp/src/main/java/org/apache/camel/component/smpp/AbstractSmppCommand.java
@@ -119,13 +119,13 @@ public abstract class AbstractSmppCommand implements SmppCommand {
                 if (ancestorClasses.contains(OctetString.class)) {
                     optParam = (OptionalParameter) type.getConstructor(byte[].class).newInstance(value.getBytes());
                 } else if (ancestorClasses.contains(OptionalParameter.Byte.class)) {
-                    Byte byteValue = (value == null) ? 0 : Byte.valueOf(value); // required because jsmpp 2.1.1 interpreted null as 0
+                    Byte byteValue = (value == null) ? 0 : Byte.parseByte(value); // required because jsmpp 2.1.1 interpreted null as 0
                     optParam = (OptionalParameter) type.getConstructor(byte.class).newInstance(byteValue);
                 } else if (ancestorClasses.contains(OptionalParameter.Int.class)) {
-                    Integer intValue = (value == null) ? 0 : Integer.valueOf(value); // required because jsmpp 2.1.1 interpreted null as 0
+                    Integer intValue = (value == null) ? 0 : Integer.parseInt(value); // required because jsmpp 2.1.1 interpreted null as 0
                     optParam = (OptionalParameter) type.getConstructor(int.class).newInstance(intValue);
                 } else if (ancestorClasses.contains(OptionalParameter.Short.class)) {
-                    Short shortValue = (value == null) ? 0 : Short.valueOf(value); // required because jsmpp 2.1.1 interpreted null as 0
+                    Short shortValue = (value == null) ? 0 : Short.parseShort(value); // required because jsmpp 2.1.1 interpreted null as 0
                     optParam = (OptionalParameter) type.getConstructor(short.class).newInstance(shortValue);
                 }
 
diff --git a/components/camel-soroush/src/main/java/org/apache/camel/component/soroushbot/component/SoroushBotAbstractConsumer.java b/components/camel-soroush/src/main/java/org/apache/camel/component/soroushbot/component/SoroushBotAbstractConsumer.java
index 5cda105..4bfcc8e 100644
--- a/components/camel-soroush/src/main/java/org/apache/camel/component/soroushbot/component/SoroushBotAbstractConsumer.java
+++ b/components/camel-soroush/src/main/java/org/apache/camel/component/soroushbot/component/SoroushBotAbstractConsumer.java
@@ -171,7 +171,7 @@ public abstract class SoroushBotAbstractConsumer extends DefaultConsumer impleme
 
 class ReconnectableEventSourceListener extends EventSourceListener {
     private boolean manuallyClosed;
-    private OkHttpClient client;
+    //private OkHttpClient client;
     private final int maxConnectionRetry;
     private int connectionRetry;
     private Request request;
@@ -179,7 +179,7 @@ class ReconnectableEventSourceListener extends EventSourceListener {
     private EventSource eventSource;
 
     public ReconnectableEventSourceListener(OkHttpClient client, Request request, int maxConnectionRetry) {
-        this.client = client;
+        //this.client = client;
         this.maxConnectionRetry = maxConnectionRetry;
         this.request = request;
         factory = EventSources.createFactory(client);
diff --git a/components/camel-soroush/src/main/java/org/apache/camel/component/soroushbot/utils/ExponentialBackOffStrategy.java b/components/camel-soroush/src/main/java/org/apache/camel/component/soroushbot/utils/ExponentialBackOffStrategy.java
index 4ba899a..3f30ca6 100644
--- a/components/camel-soroush/src/main/java/org/apache/camel/component/soroushbot/utils/ExponentialBackOffStrategy.java
+++ b/components/camel-soroush/src/main/java/org/apache/camel/component/soroushbot/utils/ExponentialBackOffStrategy.java
@@ -19,12 +19,12 @@ package org.apache.camel.component.soroushbot.utils;
 public class ExponentialBackOffStrategy implements BackOffStrategy {
     Long baseRetryTimeOut;
     Long coefficient;
-    Long maxRetryWaitingTime;
+    //Long maxRetryWaitingTime;
 
     public ExponentialBackOffStrategy(Long baseRetryTimeOut, Long coefficient, Long maxRetryWaitingTime) {
         this.baseRetryTimeOut = baseRetryTimeOut;
         this.coefficient = coefficient;
-        this.maxRetryWaitingTime = maxRetryWaitingTime;
+        //this.maxRetryWaitingTime = maxRetryWaitingTime;
     }
 
     @Override
diff --git a/components/camel-soroush/src/main/java/org/apache/camel/component/soroushbot/utils/LinearBackOffStrategy.java b/components/camel-soroush/src/main/java/org/apache/camel/component/soroushbot/utils/LinearBackOffStrategy.java
index 6473809..ee815ee 100644
--- a/components/camel-soroush/src/main/java/org/apache/camel/component/soroushbot/utils/LinearBackOffStrategy.java
+++ b/components/camel-soroush/src/main/java/org/apache/camel/component/soroushbot/utils/LinearBackOffStrategy.java
@@ -19,12 +19,12 @@ package org.apache.camel.component.soroushbot.utils;
 public class LinearBackOffStrategy implements BackOffStrategy {
     Long retryWaitingTime;
     Long increment;
-    Long maxRetryWaitingTime;
+    //Long maxRetryWaitingTime;
 
     public LinearBackOffStrategy(Long retryWaitingTime, Long increment, Long maxRetryWaitingTime) {
         this.retryWaitingTime = retryWaitingTime;
         this.increment = increment;
-        this.maxRetryWaitingTime = maxRetryWaitingTime;
+        //this.maxRetryWaitingTime = maxRetryWaitingTime;
     }
 
     @Override
diff --git a/components/camel-spring-integration/src/main/java/org/apache/camel/component/spring/integration/SpringIntegrationEndpoint.java b/components/camel-spring-integration/src/main/java/org/apache/camel/component/spring/integration/SpringIntegrationEndpoint.java
index 0ea25d0..fc62976 100644
--- a/components/camel-spring-integration/src/main/java/org/apache/camel/component/spring/integration/SpringIntegrationEndpoint.java
+++ b/components/camel-spring-integration/src/main/java/org/apache/camel/component/spring/integration/SpringIntegrationEndpoint.java
@@ -35,7 +35,7 @@ import org.springframework.messaging.MessageChannel;
              syntax = "spring-integration:defaultChannel",
              category = { Category.SPRING, Category.EVENTBUS })
 public class SpringIntegrationEndpoint extends DefaultEndpoint {
-    private MessageChannel messageChannel;
+    private MessageChannel messageChannel; // TODO is this field never assigned
     @UriPath
     @Metadata(required = true)
     private String defaultChannel;
diff --git a/components/camel-spring-integration/src/main/java/org/apache/camel/component/spring/integration/SpringIntegrationProducer.java b/components/camel-spring-integration/src/main/java/org/apache/camel/component/spring/integration/SpringIntegrationProducer.java
index cfc7e88..d8d6cbb 100644
--- a/components/camel-spring-integration/src/main/java/org/apache/camel/component/spring/integration/SpringIntegrationProducer.java
+++ b/components/camel-spring-integration/src/main/java/org/apache/camel/component/spring/integration/SpringIntegrationProducer.java
@@ -81,7 +81,7 @@ public class SpringIntegrationProducer extends DefaultProducer implements Proces
             StringHelper.notEmpty(getEndpoint().getInputChannel(), "InputChannel", getEndpoint());
             inputChannel = (DirectChannel) destinationResolver.resolveDestination(getEndpoint().getInputChannel());
 
-            if (inputChannel == null) {
+            if (inputChannel == null) { // this condition is always false
                 throw new IllegalArgumentException("Cannot resolve InputChannel on " + getEndpoint());
             }
         }
diff --git a/components/camel-spring-xml/src/main/java/org/apache/camel/spring/xml/handler/ErrorHandlerDefinitionParser.java b/components/camel-spring-xml/src/main/java/org/apache/camel/spring/xml/handler/ErrorHandlerDefinitionParser.java
index aecbea4..5b85e44 100644
--- a/components/camel-spring-xml/src/main/java/org/apache/camel/spring/xml/handler/ErrorHandlerDefinitionParser.java
+++ b/components/camel-spring-xml/src/main/java/org/apache/camel/spring/xml/handler/ErrorHandlerDefinitionParser.java
@@ -218,7 +218,7 @@ public class ErrorHandlerDefinitionParser extends BeanDefinitionParser {
         }
     }
 
-    protected class RedeliveryPolicyDefinitionParser extends BeanDefinitionParser {
+    protected static class RedeliveryPolicyDefinitionParser extends BeanDefinitionParser {
 
         public RedeliveryPolicyDefinitionParser(Class<?> type) {
             super(type, false);
diff --git a/components/camel-spring/src/main/java/org/apache/camel/spring/spi/BridgePropertyPlaceholderConfigurer.java b/components/camel-spring/src/main/java/org/apache/camel/spring/spi/BridgePropertyPlaceholderConfigurer.java
index 7df8631..3274539 100644
--- a/components/camel-spring/src/main/java/org/apache/camel/spring/spi/BridgePropertyPlaceholderConfigurer.java
+++ b/components/camel-spring/src/main/java/org/apache/camel/spring/spi/BridgePropertyPlaceholderConfigurer.java
@@ -182,7 +182,7 @@ public class BridgePropertyPlaceholderConfigurer extends PropertyPlaceholderConf
         }
     }
 
-    private final class BridgePropertiesParser implements PropertiesParser {
+    private static final class BridgePropertiesParser implements PropertiesParser {
 
         private final PropertiesParser delegate;
         private final PropertiesParser parser;
diff --git a/components/camel-sql/src/main/java/org/apache/camel/component/sql/stored/SqlStoredProducer.java b/components/camel-sql/src/main/java/org/apache/camel/component/sql/stored/SqlStoredProducer.java
index a45d824..ed036d9 100644
--- a/components/camel-sql/src/main/java/org/apache/camel/component/sql/stored/SqlStoredProducer.java
+++ b/components/camel-sql/src/main/java/org/apache/camel/component/sql/stored/SqlStoredProducer.java
@@ -28,7 +28,6 @@ import org.springframework.dao.DataAccessException;
 public class SqlStoredProducer extends DefaultProducer {
 
     private String resolvedTemplate;
-    private CallableStatementWrapperFactory callableStatementWrapperFactory;
 
     public SqlStoredProducer(SqlStoredEndpoint endpoint) {
         super(endpoint);
diff --git a/components/camel-sql/src/main/java/org/apache/camel/component/sql/stored/template/ast/ParseHelper.java b/components/camel-sql/src/main/java/org/apache/camel/component/sql/stored/template/ast/ParseHelper.java
index 2223823..841b6e2 100644
--- a/components/camel-sql/src/main/java/org/apache/camel/component/sql/stored/template/ast/ParseHelper.java
+++ b/components/camel-sql/src/main/java/org/apache/camel/component/sql/stored/template/ast/ParseHelper.java
@@ -36,7 +36,7 @@ public final class ParseHelper {
 
         //if number then use it(probably Vendor spesific SQL-type)
         if (sqlTypeToken.kind == SSPTParserConstants.NUMBER) {
-            return Integer.valueOf(sqlType);
+            return Integer.parseInt(sqlType);
         }
 
         //if contains .
diff --git a/components/camel-sql/src/main/java/org/apache/camel/component/sql/stored/template/generated/ParseException.java b/components/camel-sql/src/main/java/org/apache/camel/component/sql/stored/template/generated/ParseException.java
index a4df52c..fdc6302 100644
--- a/components/camel-sql/src/main/java/org/apache/camel/component/sql/stored/template/generated/ParseException.java
+++ b/components/camel-sql/src/main/java/org/apache/camel/component/sql/stored/template/generated/ParseException.java
@@ -87,30 +87,31 @@ public class ParseException extends Exception {
             }
             expected.append(eol).append("    ");
         }
-        String retval = "Encountered \"";
+
+        StringBuffer stringBufferRetVal = new StringBuffer("Encountered \"");
         Token tok = currentToken.next;
         for (int i = 0; i < maxSize; i++) {
             if (i != 0)
-                retval += " ";
+                stringBufferRetVal.append(" ");
             if (tok.kind == 0) {
-                retval += tokenImage[0];
+                stringBufferRetVal.append(tokenImage[0]);
                 break;
             }
-            retval += " " + tokenImage[tok.kind];
-            retval += " \"";
-            retval += add_escapes(tok.image);
-            retval += " \"";
+            stringBufferRetVal.append(" " + tokenImage[tok.kind]);
+            stringBufferRetVal.append(" \"");
+            stringBufferRetVal.append(add_escapes(tok.image));
+            stringBufferRetVal.append(" \"");
             tok = tok.next;
         }
-        retval += "\" at line " + currentToken.next.beginLine + ", column " + currentToken.next.beginColumn;
-        retval += "." + eol;
+        stringBufferRetVal.append("\" at line " + currentToken.next.beginLine + ", column " + currentToken.next.beginColumn);
+        stringBufferRetVal.append("." + eol);
         if (expectedTokenSequences.length == 1) {
-            retval += "Was expecting:" + eol + "    ";
+            stringBufferRetVal.append("Was expecting:" + eol + "    ");
         } else {
-            retval += "Was expecting one of:" + eol + "    ";
+            stringBufferRetVal.append("Was expecting one of:" + eol + "    ");
         }
-        retval += expected.toString();
-        return retval;
+        stringBufferRetVal.append(expected);
+        return stringBufferRetVal.toString();
     }
 
     /**
diff --git a/components/camel-stax/src/main/java/org/apache/camel/component/stax/StaxStreamXMLReader.java b/components/camel-stax/src/main/java/org/apache/camel/component/stax/StaxStreamXMLReader.java
index bca1630..802be36 100644
--- a/components/camel-stax/src/main/java/org/apache/camel/component/stax/StaxStreamXMLReader.java
+++ b/components/camel-stax/src/main/java/org/apache/camel/component/stax/StaxStreamXMLReader.java
@@ -51,13 +51,13 @@ public class StaxStreamXMLReader implements XMLReader {
 
   private static final String DEFAULT_XML_VERSION = "1.0";
 
-    private static final String NAMESPACES_FEATURE_NAME = "http://xml.org/sax/features/namespaces";
+  private static final String NAMESPACES_FEATURE_NAME = "http://xml.org/sax/features/namespaces";
 
   private static final String NAMESPACE_PREFIXES_FEATURE_NAME = "http://xml.org/sax/features/namespace-prefixes";
 
   private static final String IS_STANDALONE_FEATURE_NAME = "http://xml.org/sax/features/is-standalone";
 
-    private DTDHandler dtdHandler;
+  private DTDHandler dtdHandler;
 
   private ContentHandler contentHandler;
 
@@ -147,6 +147,8 @@ public class StaxStreamXMLReader implements XMLReader {
         case XMLStreamConstants.ENTITY_REFERENCE:
           handleEntityReference();
           break;
+        default:
+          throw new IllegalStateException("unexpected eventType " + eventType);
       }
       if (reader.hasNext() && elementDepth >= 0) {
         eventType = reader.next();
diff --git a/components/camel-tarfile/src/main/java/org/apache/camel/processor/aggregate/tarfile/TarAggregationStrategy.java b/components/camel-tarfile/src/main/java/org/apache/camel/processor/aggregate/tarfile/TarAggregationStrategy.java
index 96e2e4e..78c05bd 100644
--- a/components/camel-tarfile/src/main/java/org/apache/camel/processor/aggregate/tarfile/TarAggregationStrategy.java
+++ b/components/camel-tarfile/src/main/java/org/apache/camel/processor/aggregate/tarfile/TarAggregationStrategy.java
@@ -282,7 +282,7 @@ public class TarAggregationStrategy implements AggregationStrategy {
     /**
      * This callback class is used to clean up the temporary TAR file once the exchange has completed.
      */
-    private class DeleteTarFileOnCompletion implements Synchronization {
+    private static class DeleteTarFileOnCompletion implements Synchronization {
 
         private final File fileToDelete;
 
diff --git a/components/camel-telegram/src/main/java/org/apache/camel/component/telegram/model/InlineQueryResultCachedVoice.java b/components/camel-telegram/src/main/java/org/apache/camel/component/telegram/model/InlineQueryResultCachedVoice.java
index 440bf60..0dc069b 100644
--- a/components/camel-telegram/src/main/java/org/apache/camel/component/telegram/model/InlineQueryResultCachedVoice.java
+++ b/components/camel-telegram/src/main/java/org/apache/camel/component/telegram/model/InlineQueryResultCachedVoice.java
@@ -54,7 +54,7 @@ public class InlineQueryResultCachedVoice extends InlineQueryResult {
     public static final class Builder {
         private String id;
         private InlineKeyboardMarkup replyMarkup;
-        private String voiceFileId;
+        private String voiceFileId; // TODO this field is never assigned
         private String title;
         private String caption;
         private String parseMode;
diff --git a/components/camel-test/camel-test-spring-junit5/src/main/java/org/apache/camel/test/spring/junit5/CamelSpringTestSupport.java b/components/camel-test/camel-test-spring-junit5/src/main/java/org/apache/camel/test/spring/junit5/CamelSpringTestSupport.java
index 4397a312a..cc70cae 100644
--- a/components/camel-test/camel-test-spring-junit5/src/main/java/org/apache/camel/test/spring/junit5/CamelSpringTestSupport.java
+++ b/components/camel-test/camel-test-spring-junit5/src/main/java/org/apache/camel/test/spring/junit5/CamelSpringTestSupport.java
@@ -64,8 +64,8 @@ public abstract class CamelSpringTestSupport extends CamelTestSupport {
     public static final String TEST_CLASS_SIMPLE_NAME_PROPERTY = "testClassSimpleName";
     public static final String TEST_DIRECTORY_PROPERTY = "testDirectory";
 
-    protected static ThreadLocal<AbstractApplicationContext> threadAppContext = new ThreadLocal<>();
-    protected static Object lock = new Object();
+    protected static final ThreadLocal<AbstractApplicationContext> THREAD_APP_CONTEXT = new ThreadLocal<>();
+    protected static final Object LOCK = new Object();
 
     private static final Logger LOG = LoggerFactory.getLogger(CamelSpringTestSupport.class);
 
@@ -76,7 +76,7 @@ public abstract class CamelSpringTestSupport extends CamelTestSupport {
     @Override
     public void postProcessTest() throws Exception {
         if (isCreateCamelContextPerClass()) {
-            applicationContext = threadAppContext.get();
+            applicationContext = THREAD_APP_CONTEXT.get();
         }
         super.postProcessTest();
     }
@@ -86,13 +86,13 @@ public abstract class CamelSpringTestSupport extends CamelTestSupport {
         if (!"true".equalsIgnoreCase(System.getProperty("skipStartingCamelContext"))) {
             // tell camel-spring it should not trigger starting CamelContext, since we do that later
             // after we are finished setting up the unit test
-            synchronized (lock) {
+            synchronized (LOCK) {
                 SpringCamelContext.setNoStart(true);
                 if (isCreateCamelContextPerClass()) {
-                    applicationContext = threadAppContext.get();
+                    applicationContext = THREAD_APP_CONTEXT.get();
                     if (applicationContext == null) {
                         applicationContext = doCreateApplicationContext();
-                        threadAppContext.set(applicationContext);
+                        THREAD_APP_CONTEXT.set(applicationContext);
                     }
                 } else {
                     applicationContext = doCreateApplicationContext();
@@ -144,9 +144,9 @@ public abstract class CamelSpringTestSupport extends CamelTestSupport {
     public void doPostTearDown() throws Exception {
         super.doPostTearDown();
 
-        if (threadAppContext.get() != null) {
-            IOHelper.close(threadAppContext.get());
-            threadAppContext.remove();
+        if (THREAD_APP_CONTEXT.get() != null) {
+            IOHelper.close(THREAD_APP_CONTEXT.get());
+            THREAD_APP_CONTEXT.remove();
         }
     }
 
diff --git a/components/camel-test/camel-test-spring-junit5/src/main/java/org/apache/camel/test/spring/junit5/RouteCoverageDumper.java b/components/camel-test/camel-test-spring-junit5/src/main/java/org/apache/camel/test/spring/junit5/RouteCoverageDumper.java
index a8a4a48..3bf5597 100644
--- a/components/camel-test/camel-test-spring-junit5/src/main/java/org/apache/camel/test/spring/junit5/RouteCoverageDumper.java
+++ b/components/camel-test/camel-test-spring-junit5/src/main/java/org/apache/camel/test/spring/junit5/RouteCoverageDumper.java
@@ -60,7 +60,10 @@ public final class RouteCoverageDumper {
 
                 File file = new File(dir);
                 // ensure dir exists
-                file.mkdirs();
+                boolean result = file.mkdirs();
+                if (!result) {
+                    LOG.error("mkdirs() failed for " + file);
+                }
                 file = new File(dir, name);
 
                 LOG.info("Dumping route coverage to file: {}", file);
diff --git a/components/camel-tika/src/main/java/org/apache/camel/component/tika/TikaProducer.java b/components/camel-tika/src/main/java/org/apache/camel/component/tika/TikaProducer.java
index 43298cf..9169709 100644
--- a/components/camel-tika/src/main/java/org/apache/camel/component/tika/TikaProducer.java
+++ b/components/camel-tika/src/main/java/org/apache/camel/component/tika/TikaProducer.java
@@ -47,9 +47,13 @@ import org.apache.tika.parser.Parser;
 import org.apache.tika.parser.html.BoilerpipeContentHandler;
 import org.apache.tika.sax.BodyContentHandler;
 import org.apache.tika.sax.ExpandedTitleContentHandler;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 public class TikaProducer extends DefaultProducer {
 
+    private static final Logger LOG = LoggerFactory.getLogger(TikaProducer.class);
+
     private final TikaConfiguration tikaConfiguration;
 
     private final Parser parser;
@@ -170,8 +174,12 @@ public class TikaProducer extends DefaultProducer {
         handler.getTransformer().setOutputProperty(OutputKeys.INDENT, prettyPrint ? "yes" : "no");
         if (this.encoding != null) {
             handler.getTransformer().setOutputProperty(OutputKeys.ENCODING, this.encoding);
+            handler.setResult(new StreamResult(new OutputStreamWriter(output, this.encoding)));
+        } else {
+            LOG.error("encoding is null");
+            return null;
         }
-        handler.setResult(new StreamResult(new OutputStreamWriter(output, this.encoding)));
+
         return handler;
     }
 }
diff --git a/components/camel-tracing/src/main/java/org/apache/camel/tracing/Tracer.java b/components/camel-tracing/src/main/java/org/apache/camel/tracing/Tracer.java
index 267bf8d..7b6590b 100644
--- a/components/camel-tracing/src/main/java/org/apache/camel/tracing/Tracer.java
+++ b/components/camel-tracing/src/main/java/org/apache/camel/tracing/Tracer.java
@@ -324,7 +324,7 @@ public abstract class Tracer extends ServiceSupport implements RoutePolicyFactor
         }
     }
 
-    private final class TracingLogListener implements LogListener {
+    private static final class TracingLogListener implements LogListener {
 
         @Override
         public String onLog(Exchange exchange, CamelLogger camelLogger, String message) {
diff --git a/components/camel-twitter/src/main/java/org/apache/camel/component/twitter/timeline/TwitterTimelineEndpoint.java b/components/camel-twitter/src/main/java/org/apache/camel/component/twitter/timeline/TwitterTimelineEndpoint.java
index 1579699..ac59f21 100644
--- a/components/camel-twitter/src/main/java/org/apache/camel/component/twitter/timeline/TwitterTimelineEndpoint.java
+++ b/components/camel-twitter/src/main/java/org/apache/camel/component/twitter/timeline/TwitterTimelineEndpoint.java
@@ -100,7 +100,6 @@ public class TwitterTimelineEndpoint extends AbstractTwitterEndpoint {
                 handler = new RetweetsConsumerHandler(this);
                 break;
             case LIST:
-                TwitterTimelineComponent component = (TwitterTimelineComponent) getComponent();
                 handler = new UserListConsumerHandler(this, user, list);
                 break;
             case USER:
diff --git a/components/camel-undertow/src/main/java/org/apache/camel/component/undertow/UndertowComponentVerifierExtension.java b/components/camel-undertow/src/main/java/org/apache/camel/component/undertow/UndertowComponentVerifierExtension.java
index 0e78d4d..69f600e 100644
--- a/components/camel-undertow/src/main/java/org/apache/camel/component/undertow/UndertowComponentVerifierExtension.java
+++ b/components/camel-undertow/src/main/java/org/apache/camel/component/undertow/UndertowComponentVerifierExtension.java
@@ -250,7 +250,7 @@ public final class UndertowComponentVerifierExtension extends DefaultComponentVe
         }
     }
 
-    private final class UndertowClientResponseFuture extends AbstractIoFuture<ClientExchange>
+    private static final class UndertowClientResponseFuture extends AbstractIoFuture<ClientExchange>
             implements ClientCallback<ClientExchange> {
         @Override
         public void completed(ClientExchange result) {
diff --git a/components/camel-undertow/src/main/java/org/apache/camel/component/undertow/handlers/CamelPathTemplateHandler.java b/components/camel-undertow/src/main/java/org/apache/camel/component/undertow/handlers/CamelPathTemplateHandler.java
index c2ef171..6922403 100644
--- a/components/camel-undertow/src/main/java/org/apache/camel/component/undertow/handlers/CamelPathTemplateHandler.java
+++ b/components/camel-undertow/src/main/java/org/apache/camel/component/undertow/handlers/CamelPathTemplateHandler.java
@@ -81,7 +81,7 @@ public class CamelPathTemplateHandler implements HttpHandler {
         return handlerString;
     }
 
-    class Wrapper implements HttpHandler {
+    static class Wrapper implements HttpHandler {
         private CamelMethodHandler handler;
 
         public void set(CamelMethodHandler handler) {
diff --git a/components/camel-undertow/src/main/java/org/apache/camel/component/undertow/handlers/RestRootHandler.java b/components/camel-undertow/src/main/java/org/apache/camel/component/undertow/handlers/RestRootHandler.java
index 750038b..18fdfdc 100644
--- a/components/camel-undertow/src/main/java/org/apache/camel/component/undertow/handlers/RestRootHandler.java
+++ b/components/camel-undertow/src/main/java/org/apache/camel/component/undertow/handlers/RestRootHandler.java
@@ -43,7 +43,7 @@ public class RestRootHandler implements HttpHandler {
 
     private final Set<UndertowConsumer> consumers = new CopyOnWriteArraySet<>();
 
-    private int port;
+    //private int port; // unread field
     private String token;
     private int len;
 
@@ -51,7 +51,7 @@ public class RestRootHandler implements HttpHandler {
      * Initializes this handler with the given port.
      */
     public void init(int port) {
-        this.port = port;
+        //this.port = port;
         this.token = ":" + port;
         this.len = token.length();
     }
diff --git a/components/camel-websocket/src/main/java/org/apache/camel/component/websocket/WebsocketComponent.java b/components/camel-websocket/src/main/java/org/apache/camel/component/websocket/WebsocketComponent.java
index d54dd4d..055a6f4 100644
--- a/components/camel-websocket/src/main/java/org/apache/camel/component/websocket/WebsocketComponent.java
+++ b/components/camel-websocket/src/main/java/org/apache/camel/component/websocket/WebsocketComponent.java
@@ -100,7 +100,7 @@ public class WebsocketComponent extends DefaultComponent implements SSLContextPa
      */
     private Map<String, WebsocketComponentServlet> servlets = new HashMap<>();
 
-    class ConnectorRef {
+    static class ConnectorRef {
         Server server;
         ServerConnector connector;
         WebsocketComponentServlet servlet;
diff --git a/components/camel-workday/src/main/java/org/apache/camel/component/workday/producer/WorkdayCommonAPIProducer.java b/components/camel-workday/src/main/java/org/apache/camel/component/workday/producer/WorkdayCommonAPIProducer.java
index 77dd30a..34fc33b 100644
--- a/components/camel-workday/src/main/java/org/apache/camel/component/workday/producer/WorkdayCommonAPIProducer.java
+++ b/components/camel-workday/src/main/java/org/apache/camel/component/workday/producer/WorkdayCommonAPIProducer.java
@@ -85,7 +85,7 @@ public class WorkdayCommonAPIProducer extends WorkdayDefaultProducer {
     @Override
     public String prepareUri(WorkdayConfiguration configuration) throws Exception {
 
-        String pathString = new String(configuration.getPath());
+        String pathString = configuration.getPath();
         String genericPath = pathString.replaceAll(WORKDAY_ID_PATTERN, WORKDAY_GENERIC_ID);
 
         if (!this.workdayValidEndpointSet.contains(genericPath)) {
diff --git a/components/camel-xmlsecurity/src/main/java/org/apache/camel/component/xmlsecurity/processor/XmlVerifierProcessor.java b/components/camel-xmlsecurity/src/main/java/org/apache/camel/component/xmlsecurity/processor/XmlVerifierProcessor.java
index 8da4f28..2dd1328 100644
--- a/components/camel-xmlsecurity/src/main/java/org/apache/camel/component/xmlsecurity/processor/XmlVerifierProcessor.java
+++ b/components/camel-xmlsecurity/src/main/java/org/apache/camel/component/xmlsecurity/processor/XmlVerifierProcessor.java
@@ -118,7 +118,7 @@ public class XmlVerifierProcessor extends XmlSignatureProcessor {
         valContext.setProperty("javax.xml.crypto.dsig.cacheReference", Boolean.TRUE);
         valContext.setProperty("org.jcp.xml.dsig.validateManifests", Boolean.TRUE);
 
-        if (getConfiguration().getSecureValidation() == Boolean.TRUE) {
+        if (getConfiguration().getSecureValidation().equals(Boolean.TRUE)) {
             valContext.setProperty("org.apache.jcp.xml.dsig.secureValidation", Boolean.TRUE);
             valContext.setProperty("org.jcp.xml.dsig.secureValidation", Boolean.TRUE);
         }
diff --git a/components/camel-xslt/src/main/java/org/apache/camel/component/xslt/XsltBuilder.java b/components/camel-xslt/src/main/java/org/apache/camel/component/xslt/XsltBuilder.java
index 4656094..af7556e 100644
--- a/components/camel-xslt/src/main/java/org/apache/camel/component/xslt/XsltBuilder.java
+++ b/components/camel-xslt/src/main/java/org/apache/camel/component/xslt/XsltBuilder.java
@@ -413,7 +413,10 @@ public class XsltBuilder implements Processor {
     private void releaseTransformer(Transformer transformer) {
         if (transformers != null) {
             transformer.reset();
-            transformers.offer(transformer);
+            boolean result = transformers.offer(transformer);
+            if (!result) {
+                LOG.error("failed to offer() a transform");
+            }
         }
     }
 
diff --git a/components/camel-zipfile/src/main/java/org/apache/camel/dataformat/zipfile/ZipFileDataFormat.java b/components/camel-zipfile/src/main/java/org/apache/camel/dataformat/zipfile/ZipFileDataFormat.java
index 9db72bc..a2a3cde 100644
--- a/components/camel-zipfile/src/main/java/org/apache/camel/dataformat/zipfile/ZipFileDataFormat.java
+++ b/components/camel-zipfile/src/main/java/org/apache/camel/dataformat/zipfile/ZipFileDataFormat.java
@@ -64,7 +64,13 @@ public class ZipFileDataFormat extends ServiceSupport implements DataFormat, Dat
             // generate the file name as the camel file component would do
             filename = filepath = StringHelper.sanitize(exchange.getIn().getMessageId());
         } else {
-            filename = Paths.get(filepath).getFileName().toString(); // remove any path elements
+            Path filenamePath = Paths.get(filepath).getFileName();
+            if (filenamePath != null) {
+                filename = filenamePath.toString(); // remove any path elements
+            } else {
+                // TODO do some logging
+                return;
+            }
         }
 
         ZipOutputStream zos = new ZipOutputStream(stream);
diff --git a/components/camel-zipfile/src/main/java/org/apache/camel/processor/aggregate/zipfile/ZipAggregationStrategy.java b/components/camel-zipfile/src/main/java/org/apache/camel/processor/aggregate/zipfile/ZipAggregationStrategy.java
index 48774d0..e2a5880 100644
--- a/components/camel-zipfile/src/main/java/org/apache/camel/processor/aggregate/zipfile/ZipAggregationStrategy.java
+++ b/components/camel-zipfile/src/main/java/org/apache/camel/processor/aggregate/zipfile/ZipAggregationStrategy.java
@@ -234,8 +234,13 @@ public class ZipAggregationStrategy implements AggregationStrategy {
         env.put("useTempFile", this.useTempFile); //Intentionally boolean, it is implemented this way in ZipFileSystem
         try (FileSystem fs = FileSystems.newFileSystem(getZipURI(zipFile), env)) {
             Path dest = fs.getPath("/", entryName);
-            Files.createDirectories(dest.getParent());
-            Files.copy(file.toPath(), dest, StandardCopyOption.REPLACE_EXISTING);
+            Path parent = dest.getParent();
+            if (parent != null) {
+                Files.createDirectories(parent);
+                Files.copy(file.toPath(), dest, StandardCopyOption.REPLACE_EXISTING);
+            } else {
+                // TODO do some logging
+            }
         }
     }
 
@@ -246,8 +251,13 @@ public class ZipAggregationStrategy implements AggregationStrategy {
         env.put("useTempFile", this.useTempFile); //Intentionally boolean, it is implemented this way in ZipFileSystem
         try (FileSystem fs = FileSystems.newFileSystem(getZipURI(zipFile), env)) {
             Path dest = fs.getPath("/", entryName);
-            Files.createDirectories(dest.getParent());
-            Files.write(dest, buffer, StandardOpenOption.CREATE, StandardOpenOption.TRUNCATE_EXISTING);
+            Path parent = dest.getParent();
+            if (parent != null) {
+                Files.createDirectories(parent);
+                Files.write(dest, buffer, StandardOpenOption.CREATE, StandardOpenOption.TRUNCATE_EXISTING);
+            } else {
+                // TODO do some logging
+            }
         }
     }
 
@@ -258,7 +268,7 @@ public class ZipAggregationStrategy implements AggregationStrategy {
     /**
      * This callback class is used to clean up the temporary ZIP file once the exchange has completed.
      */
-    private class DeleteZipFileOnCompletion implements Synchronization {
+    private static class DeleteZipFileOnCompletion implements Synchronization {
 
         private final File fileToDelete;
 
diff --git a/components/camel-zookeeper-master/src/main/java/org/apache/camel/component/zookeepermaster/group/internal/ZooKeeperGroup.java b/components/camel-zookeeper-master/src/main/java/org/apache/camel/component/zookeepermaster/group/internal/ZooKeeperGroup.java
index 911cac5..2041a2d 100644
--- a/components/camel-zookeeper-master/src/main/java/org/apache/camel/component/zookeepermaster/group/internal/ZooKeeperGroup.java
+++ b/components/camel-zookeeper-master/src/main/java/org/apache/camel/component/zookeepermaster/group/internal/ZooKeeperGroup.java
@@ -612,7 +612,10 @@ public class ZooKeeperGroup<T extends NodeState> implements Group<T> {
 
     private void offerOperation(Operation operation) {
         if (!operations.contains(operation)) {
-            operations.offer(operation);
+            boolean result = operations.offer(operation);
+            if (!result) {
+                LOG.error("failed to offer() an operation");
+            }
         }
         // operations.remove(operation);   // avoids herding for refresh operations
     }
diff --git a/components/camel-zookeeper/src/main/java/org/apache/camel/component/zookeeper/NaturalSortComparator.java b/components/camel-zookeeper/src/main/java/org/apache/camel/component/zookeeper/NaturalSortComparator.java
index 4dc076d..6fbf306 100644
--- a/components/camel-zookeeper/src/main/java/org/apache/camel/component/zookeeper/NaturalSortComparator.java
+++ b/components/camel-zookeeper/src/main/java/org/apache/camel/component/zookeeper/NaturalSortComparator.java
@@ -68,6 +68,7 @@ public class NaturalSortComparator implements Comparator<CharSequence> {
         int compare = 0;
         int fx = 0;
         int sx = 0;
+        // TODO first can contain null and the next line causes NPE then
         while (fx < first.length() && sx < second.length() && compare == 0) {
             if (isDigit(first.charAt(fx)) && isDigit(second.charAt(sx))) {
                 int flen = getNumSequenceLength(first, fx);
diff --git a/components/camel-zookeeper/src/main/java/org/apache/camel/component/zookeeper/ZooKeeperConnectionManager.java b/components/camel-zookeeper/src/main/java/org/apache/camel/component/zookeeper/ZooKeeperConnectionManager.java
index 8f812a3..83189bc 100644
--- a/components/camel-zookeeper/src/main/java/org/apache/camel/component/zookeeper/ZooKeeperConnectionManager.java
+++ b/components/camel-zookeeper/src/main/java/org/apache/camel/component/zookeeper/ZooKeeperConnectionManager.java
@@ -43,7 +43,7 @@ public class ZooKeeperConnectionManager {
         void shutdown();
     }
 
-    private class DefaultZookeeperConnectionStrategy implements ZookeeperConnectionStrategy {
+    private static class DefaultZookeeperConnectionStrategy implements ZookeeperConnectionStrategy {
         private ConnectionHolder holder;
         private ZooKeeperConfiguration configuration;