davsclaus commented on code in PR #27488:
URL: https://github.com/apache/camel/pull/27488#discussion_r4206868918


##########
components/camel-kafka-common/src/main/java/org/apache/camel/component/kafka/KafkaClientConfiguration.java:
##########
@@ -215,16 +311,32 @@ public abstract class KafkaClientConfiguration implements 
Cloneable, HeaderFilte
               description = "OAuth scope. Used when saslAuthType is set to 
OAUTH.")
     private String oauthScope;
     // Schema registry only options
-    @UriParam(label = "schema")
+    @UriParam(label = "schema",
+              description = "URL of the schema registry servers to use. The 
format is host1:port1,host2:port2. This is known"
+                            + " as schema.registry.url in multiple Schema 
registries documentation. This option is only "
+                            + "available externally (not standard Apache 
Kafka)")
     private String schemaRegistryURL;
-    @UriParam(label = "schema,consumer")
+    @UriParam(label = "schema,consumer",
+              description = "This enables the use of a specific Avro reader 
for use with the in multiple Schema registries "
+                            + "documentation with Avro Deserializers 
implementation. This option is only available externally "
+                            + "(not standard Apache Kafka)")
     private boolean specificAvroReader;
     // Additional properties
-    @UriParam(label = "common", prefix = "additionalProperties.", multiValue = 
true)
+    @UriParam(label = "common", prefix = "additionalProperties.", multiValue = 
true,
+              description = "Sets additional properties for either kafka 
consumer or kafka producer in case they can't be "
+                            + "set directly on the camel configurations (e.g.: 
new Kafka properties that are not reflected yet"
+                            + " in Camel configurations), the properties have 
to be prefixed with additionalProperties.., "
+                            + "e.g.: 
additionalProperties.transactional.id=12345&additionalProperties.schema.registry.url=http"
+                            + "://localhost:8811/avro. If the properties are 
set in the application.properties file, they must"
+                            + " be prefixed with 
camel.component.kafka.additional-properties and the property enclosed in "
+                            + "square brackets, like this example: "
+                            + 
"camel.component.kafka.additional-propertiesdelivery.timeout.ms=15000.")
     private Map<String, Object> additionalProperties = new HashMap<>();

Review Comment:
   Nit, already in the catalog on main: the old javadoc-to-catalog conversion 
dropped the `[...]`, so the example now reads 
`additional-propertiesdelivery.timeout.ms=15000` (and `additionalProperties..` 
above has a double dot). The setter javadoc still has the correct text: 
`camel.component.kafka.additional-properties[delivery.timeout.ms]=15000`. Since 
the description is written out by hand now, this is an easy fix, but it changes 
`kafka.json`, so the generated files need regenerating. A follow-up is fine too.



##########
docs/user-manual/modules/ROOT/pages/camel-4x-upgrade-guide-4_23.adoc:
##########
@@ -4124,6 +4124,26 @@ consumed those partitions while the circuit was open; 
now they stay with this co
 it runs. A suspended consumer also keeps its fetcher thread after a failed 
poll or a reconnect, and the health check
 reports it as recoverable.
 
+=== camel-kafka - shared client code moved to camel-kafka-common
+
+The Kafka client code that the `kafka` component shares with other Kafka based 
components has been moved
+from `camel-kafka` into a new `camel-kafka-common` module. This includes 
`KafkaClientConfiguration` (the base class
+of `KafkaConfiguration`), `AbstractKafkaComponent`, `KafkaConstants`, 
`KafkaHeaderFilterStrategy`, the header
+serializers and deserializers (`org.apache.camel.component.kafka.serde`), 
`KafkaSecurityConfigurer` and
+`KafkaAuthType`, `PollExceptionStrategy` and `PollOnError`. The packages and 
class names are unchanged.

Review Comment:
   Nit: `KafkaConsumerFatalException`, `TaskHealthState`, 
`consumer.support.KafkaRecordProcessor` and 
`consumer.support.interop.JMSDeserializer` also moved. Could they be added so 
the list is complete for anyone who builds their classpath by hand?



##########
components/camel-kafka-common/src/main/java/org/apache/camel/component/kafka/AbstractKafkaComponent.java:
##########
@@ -39,13 +39,26 @@ public abstract class AbstractKafkaComponent extends 
HealthCheckComponent
 
     private final List<Runnable> pendingConsumers = new 
CopyOnWriteArrayList<>();
 
-    @Metadata(label = "security", defaultValue = "false")
+    @Metadata(label = "security", defaultValue = "false", description = 
"Enable usage of global SSL context parameters.")
     private boolean useGlobalSslContextParameters;
-    @Metadata(autowired = true, label = "consumer,advanced")
+    @Metadata(autowired = true, label = "consumer,advanced",
+              description = "To use a custom strategy with the consumer to 
control how to handle exceptions thrown from the "
+                            + "Kafka broker while pooling messages.")

Review Comment:
   Nit, already in the catalog on main: `pooling` -> `polling` (the javadoc at 
line 94 has the same typo). Optional here, since it changes the generated 
catalog.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to