CAMEL-14263: camel-crypto should use source code generated configurer to avoid reflection configuration.
diff --git a/components/camel-crypto/src/main/java/org/apache/camel/component/crypto/DigitalSignatureComponent.java b/components/camel-crypto/src/main/java/org/apache/camel/component/crypto/DigitalSignatureComponent.java
index d7d3f71..b6d7d35 100644
--- a/components/camel-crypto/src/main/java/org/apache/camel/component/crypto/DigitalSignatureComponent.java
+++ b/components/camel-crypto/src/main/java/org/apache/camel/component/crypto/DigitalSignatureComponent.java
@@ -31,7 +31,7 @@
 public class DigitalSignatureComponent extends DefaultComponent {
 
     @Metadata(label = "advanced")
-    private DigitalSignatureConfiguration configuration;
+    private DigitalSignatureConfiguration configuration = new DigitalSignatureConfiguration();
 
     public DigitalSignatureComponent() {
     }
@@ -46,7 +46,6 @@
 
         DigitalSignatureConfiguration config = getConfiguration().copy();
 
-        setProperties(config, parameters);
         config.setCamelContext(getCamelContext());
         try {
             config.setCryptoOperation(new URI(remaining).getScheme());
@@ -54,13 +53,12 @@
             throw new MalformedURLException(String.format("An invalid crypto uri was provided '%s'."
                     + " Check the uri matches the format crypto:sign or crypto:verify", uri));
         }
-        return new DigitalSignatureEndpoint(uri, this, config);
+        Endpoint endpoint = new DigitalSignatureEndpoint(uri, this, config);
+        setProperties(endpoint, parameters);
+        return endpoint;
     }
 
     public DigitalSignatureConfiguration getConfiguration() {
-        if (configuration == null) {
-            configuration = new DigitalSignatureConfiguration();
-        }
         return configuration;
     }