This is an automated email from the ASF dual-hosted git repository.
davsclaus 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 df624a62a279 Upgrade qdrant
df624a62a279 is described below
commit df624a62a279e8deaf4a8693716ca6461c77c1be
Author: Claus Ibsen <[email protected]>
AuthorDate: Fri Nov 21 09:38:19 2025 +0100
Upgrade qdrant
---
.../qdrant/QdrantComponentConfigurer.java | 4 +--
.../qdrant/QdrantConfigurationConfigurer.java | 4 +--
.../component/qdrant/QdrantConverterLoader.java | 22 ++++++-------
.../component/qdrant/QdrantEndpointConfigurer.java | 4 +--
.../org/apache/camel/component/qdrant/qdrant.json | 36 +++++++++++-----------
.../component/qdrant/QdrantConfiguration.java | 26 +++++-----------
.../camel/component/qdrant/QdrantConverter.java | 22 ++++++-------
.../camel/component/qdrant/QdrantProducer.java | 6 ++--
.../QdrantEmbeddingsDataTypeTransformer.java | 6 ++--
.../camel/component/qdrant/QdrantDeleteTest.java | 5 ++-
.../component/qdrant/it/QdrantDeletePointsIT.java | 3 +-
parent/pom.xml | 2 +-
12 files changed, 64 insertions(+), 76 deletions(-)
diff --git
a/components/camel-ai/camel-qdrant/src/generated/java/org/apache/camel/component/qdrant/QdrantComponentConfigurer.java
b/components/camel-ai/camel-qdrant/src/generated/java/org/apache/camel/component/qdrant/QdrantComponentConfigurer.java
index 48b0a0ca50ad..8cf91c3c91dd 100644
---
a/components/camel-ai/camel-qdrant/src/generated/java/org/apache/camel/component/qdrant/QdrantComponentConfigurer.java
+++
b/components/camel-ai/camel-qdrant/src/generated/java/org/apache/camel/component/qdrant/QdrantComponentConfigurer.java
@@ -35,7 +35,7 @@ public class QdrantComponentConfigurer extends
PropertyConfigurerSupport impleme
case "autowiredenabled":
case "autowiredEnabled":
target.setAutowiredEnabled(property(camelContext, boolean.class, value));
return true;
case "configuration": target.setConfiguration(property(camelContext,
org.apache.camel.component.qdrant.QdrantConfiguration.class, value)); return
true;
- case "filter":
getOrCreateConfiguration(target).setFilter(property(camelContext,
io.qdrant.client.grpc.Points.Filter.class, value)); return true;
+ case "filter":
getOrCreateConfiguration(target).setFilter(property(camelContext,
io.qdrant.client.grpc.Common.Filter.class, value)); return true;
case "host":
getOrCreateConfiguration(target).setHost(property(camelContext,
java.lang.String.class, value)); return true;
case "lazystartproducer":
case "lazyStartProducer":
target.setLazyStartProducer(property(camelContext, boolean.class, value));
return true;
@@ -61,7 +61,7 @@ public class QdrantComponentConfigurer extends
PropertyConfigurerSupport impleme
case "autowiredenabled":
case "autowiredEnabled": return boolean.class;
case "configuration": return
org.apache.camel.component.qdrant.QdrantConfiguration.class;
- case "filter": return io.qdrant.client.grpc.Points.Filter.class;
+ case "filter": return io.qdrant.client.grpc.Common.Filter.class;
case "host": return java.lang.String.class;
case "lazystartproducer":
case "lazyStartProducer": return boolean.class;
diff --git
a/components/camel-ai/camel-qdrant/src/generated/java/org/apache/camel/component/qdrant/QdrantConfigurationConfigurer.java
b/components/camel-ai/camel-qdrant/src/generated/java/org/apache/camel/component/qdrant/QdrantConfigurationConfigurer.java
index d2340a950b6b..915d37976569 100644
---
a/components/camel-ai/camel-qdrant/src/generated/java/org/apache/camel/component/qdrant/QdrantConfigurationConfigurer.java
+++
b/components/camel-ai/camel-qdrant/src/generated/java/org/apache/camel/component/qdrant/QdrantConfigurationConfigurer.java
@@ -26,7 +26,7 @@ public class QdrantConfigurationConfigurer extends
org.apache.camel.support.comp
case "apikey":
case "apiKey": target.setApiKey(property(camelContext,
java.lang.String.class, value)); return true;
case "client": target.setClient(property(camelContext,
io.qdrant.client.QdrantClient.class, value)); return true;
- case "filter": target.setFilter(property(camelContext,
io.qdrant.client.grpc.Points.Filter.class, value)); return true;
+ case "filter": target.setFilter(property(camelContext,
io.qdrant.client.grpc.Common.Filter.class, value)); return true;
case "host": target.setHost(property(camelContext,
java.lang.String.class, value)); return true;
case "maxresults":
case "maxResults": target.setMaxResults(property(camelContext,
int.class, value)); return true;
@@ -43,7 +43,7 @@ public class QdrantConfigurationConfigurer extends
org.apache.camel.support.comp
case "apikey":
case "apiKey": return java.lang.String.class;
case "client": return io.qdrant.client.QdrantClient.class;
- case "filter": return io.qdrant.client.grpc.Points.Filter.class;
+ case "filter": return io.qdrant.client.grpc.Common.Filter.class;
case "host": return java.lang.String.class;
case "maxresults":
case "maxResults": return int.class;
diff --git
a/components/camel-ai/camel-qdrant/src/generated/java/org/apache/camel/component/qdrant/QdrantConverterLoader.java
b/components/camel-ai/camel-qdrant/src/generated/java/org/apache/camel/component/qdrant/QdrantConverterLoader.java
index 11b00c62d827..b1aabbd94967 100644
---
a/components/camel-ai/camel-qdrant/src/generated/java/org/apache/camel/component/qdrant/QdrantConverterLoader.java
+++
b/components/camel-ai/camel-qdrant/src/generated/java/org/apache/camel/component/qdrant/QdrantConverterLoader.java
@@ -44,7 +44,7 @@ public final class QdrantConverterLoader implements
TypeConverterLoader, CamelCo
}
private void registerConverters(TypeConverterRegistry registry) {
- addTypeConverter(registry, io.qdrant.client.grpc.Points.PointId.class,
java.lang.Long.class, false,
+ addTypeConverter(registry, io.qdrant.client.grpc.Common.PointId.class,
java.lang.Long.class, false,
(type, exchange, value) -> {
Object answer =
org.apache.camel.component.qdrant.QdrantConverter.toPointId((java.lang.Long)
value);
if (false && answer == null) {
@@ -52,7 +52,7 @@ public final class QdrantConverterLoader implements
TypeConverterLoader, CamelCo
}
return answer;
});
- addTypeConverter(registry, io.qdrant.client.grpc.Points.PointId.class,
java.util.UUID.class, false,
+ addTypeConverter(registry, io.qdrant.client.grpc.Common.PointId.class,
java.util.UUID.class, false,
(type, exchange, value) -> {
Object answer =
org.apache.camel.component.qdrant.QdrantConverter.toPointId((java.util.UUID)
value);
if (false && answer == null) {
@@ -60,7 +60,7 @@ public final class QdrantConverterLoader implements
TypeConverterLoader, CamelCo
}
return answer;
});
- addTypeConverter(registry, io.qdrant.client.grpc.Points.PointId.class,
long.class, false,
+ addTypeConverter(registry, io.qdrant.client.grpc.Common.PointId.class,
long.class, false,
(type, exchange, value) -> {
Object answer =
org.apache.camel.component.qdrant.QdrantConverter.toPointId((long) value);
if (false && answer == null) {
@@ -68,33 +68,33 @@ public final class QdrantConverterLoader implements
TypeConverterLoader, CamelCo
}
return answer;
});
- addTypeConverter(registry,
io.qdrant.client.grpc.Points.PointsSelector.class,
io.qdrant.client.grpc.Points.Condition.class, false,
+ addTypeConverter(registry,
io.qdrant.client.grpc.Points.PointsSelector.class,
io.qdrant.client.grpc.Common.Condition.class, false,
(type, exchange, value) -> {
- Object answer =
org.apache.camel.component.qdrant.QdrantConverter.toPointSelector((io.qdrant.client.grpc.Points.Condition)
value);
+ Object answer =
org.apache.camel.component.qdrant.QdrantConverter.toPointSelector((io.qdrant.client.grpc.Common.Condition)
value);
if (false && answer == null) {
answer = Void.class;
}
return answer;
});
- addTypeConverter(registry,
io.qdrant.client.grpc.Points.PointsSelector.class,
io.qdrant.client.grpc.Points.Filter.class, false,
+ addTypeConverter(registry,
io.qdrant.client.grpc.Points.PointsSelector.class,
io.qdrant.client.grpc.Common.Filter.class, false,
(type, exchange, value) -> {
- Object answer =
org.apache.camel.component.qdrant.QdrantConverter.toPointSelector((io.qdrant.client.grpc.Points.Filter)
value);
+ Object answer =
org.apache.camel.component.qdrant.QdrantConverter.toPointSelector((io.qdrant.client.grpc.Common.Filter)
value);
if (false && answer == null) {
answer = Void.class;
}
return answer;
});
- addTypeConverter(registry,
io.qdrant.client.grpc.Points.PointsSelector.class,
io.qdrant.client.grpc.Points.PointId.class, false,
+ addTypeConverter(registry,
io.qdrant.client.grpc.Points.PointsSelector.class,
io.qdrant.client.grpc.Common.PointId.class, false,
(type, exchange, value) -> {
- Object answer =
org.apache.camel.component.qdrant.QdrantConverter.toPointSelector((io.qdrant.client.grpc.Points.PointId)
value);
+ Object answer =
org.apache.camel.component.qdrant.QdrantConverter.toPointSelector((io.qdrant.client.grpc.Common.PointId)
value);
if (false && answer == null) {
answer = Void.class;
}
return answer;
});
- addTypeConverter(registry, java.util.List.class,
io.qdrant.client.grpc.Points.PointId.class, false,
+ addTypeConverter(registry, java.util.List.class,
io.qdrant.client.grpc.Common.PointId.class, false,
(type, exchange, value) -> {
- Object answer =
org.apache.camel.component.qdrant.QdrantConverter.toListOfPointIds((io.qdrant.client.grpc.Points.PointId)
value);
+ Object answer =
org.apache.camel.component.qdrant.QdrantConverter.toListOfPointIds((io.qdrant.client.grpc.Common.PointId)
value);
if (false && answer == null) {
answer = Void.class;
}
diff --git
a/components/camel-ai/camel-qdrant/src/generated/java/org/apache/camel/component/qdrant/QdrantEndpointConfigurer.java
b/components/camel-ai/camel-qdrant/src/generated/java/org/apache/camel/component/qdrant/QdrantEndpointConfigurer.java
index f4ea5e7deb3f..f5fff90a47a6 100644
---
a/components/camel-ai/camel-qdrant/src/generated/java/org/apache/camel/component/qdrant/QdrantEndpointConfigurer.java
+++
b/components/camel-ai/camel-qdrant/src/generated/java/org/apache/camel/component/qdrant/QdrantEndpointConfigurer.java
@@ -25,7 +25,7 @@ public class QdrantEndpointConfigurer extends
PropertyConfigurerSupport implemen
switch (ignoreCase ? name.toLowerCase() : name) {
case "apikey":
case "apiKey":
target.getConfiguration().setApiKey(property(camelContext,
java.lang.String.class, value)); return true;
- case "filter":
target.getConfiguration().setFilter(property(camelContext,
io.qdrant.client.grpc.Points.Filter.class, value)); return true;
+ case "filter":
target.getConfiguration().setFilter(property(camelContext,
io.qdrant.client.grpc.Common.Filter.class, value)); return true;
case "host": target.getConfiguration().setHost(property(camelContext,
java.lang.String.class, value)); return true;
case "lazystartproducer":
case "lazyStartProducer":
target.setLazyStartProducer(property(camelContext, boolean.class, value));
return true;
@@ -48,7 +48,7 @@ public class QdrantEndpointConfigurer extends
PropertyConfigurerSupport implemen
switch (ignoreCase ? name.toLowerCase() : name) {
case "apikey":
case "apiKey": return java.lang.String.class;
- case "filter": return io.qdrant.client.grpc.Points.Filter.class;
+ case "filter": return io.qdrant.client.grpc.Common.Filter.class;
case "host": return java.lang.String.class;
case "lazystartproducer":
case "lazyStartProducer": return boolean.class;
diff --git
a/components/camel-ai/camel-qdrant/src/generated/resources/META-INF/org/apache/camel/component/qdrant/qdrant.json
b/components/camel-ai/camel-qdrant/src/generated/resources/META-INF/org/apache/camel/component/qdrant/qdrant.json
index 98654f135713..6d079730b8a7 100644
---
a/components/camel-ai/camel-qdrant/src/generated/resources/META-INF/org/apache/camel/component/qdrant/qdrant.json
+++
b/components/camel-ai/camel-qdrant/src/generated/resources/META-INF/org/apache/camel/component/qdrant/qdrant.json
@@ -24,16 +24,16 @@
"remote": true
},
"componentProperties": {
- "apiKey": { "index": 0, "kind": "property", "displayName": "Api Key",
"group": "producer", "label": "", "required": false, "type": "string",
"javaType": "java.lang.String", "deprecated": false, "deprecationNote": "",
"autowired": false, "secret": true, "configurationClass":
"org.apache.camel.component.qdrant.QdrantConfiguration", "configurationField":
"configuration", "description": "Sets the API key to use for authentication" },
- "configuration": { "index": 1, "kind": "property", "displayName":
"Configuration", "group": "producer", "label": "", "required": false, "type":
"object", "javaType": "org.apache.camel.component.qdrant.QdrantConfiguration",
"deprecated": false, "autowired": false, "secret": false, "description": "The
configuration;" },
- "host": { "index": 2, "kind": "property", "displayName": "Host", "group":
"producer", "label": "", "required": false, "type": "string", "javaType":
"java.lang.String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "defaultValue": "localhost", "configurationClass":
"org.apache.camel.component.qdrant.QdrantConfiguration", "configurationField":
"configuration", "description": "The host to connect to." },
- "lazyStartProducer": { "index": 3, "kind": "property", "displayName":
"Lazy Start Producer", "group": "producer", "label": "producer", "required":
false, "type": "boolean", "javaType": "boolean", "deprecated": false,
"autowired": false, "secret": false, "defaultValue": false, "description":
"Whether the producer should be started lazy (on the first message). By
starting lazy you can use this to allow CamelContext and routes to startup in
situations where a producer may otherwise fail [...]
- "maxResults": { "index": 4, "kind": "property", "displayName": "Max
Results", "group": "producer", "label": "", "required": false, "type":
"integer", "javaType": "int", "deprecated": false, "autowired": false,
"secret": false, "defaultValue": 3, "configurationClass":
"org.apache.camel.component.qdrant.QdrantConfiguration", "configurationField":
"configuration", "description": "Max results for similarity search" },
- "port": { "index": 5, "kind": "property", "displayName": "Port", "group":
"producer", "label": "", "required": false, "type": "integer", "javaType":
"int", "deprecated": false, "deprecationNote": "", "autowired": false,
"secret": false, "defaultValue": 6334, "configurationClass":
"org.apache.camel.component.qdrant.QdrantConfiguration", "configurationField":
"configuration", "description": "The port to connect to." },
- "timeout": { "index": 6, "kind": "property", "displayName": "Timeout",
"group": "producer", "label": "", "required": false, "type": "duration",
"javaType": "java.time.Duration", "deprecated": false, "autowired": false,
"secret": false, "configurationClass":
"org.apache.camel.component.qdrant.QdrantConfiguration", "configurationField":
"configuration", "description": "Sets a default timeout for all requests" },
- "tls": { "index": 7, "kind": "property", "displayName": "Tls", "group":
"producer", "label": "", "required": false, "type": "boolean", "javaType":
"boolean", "deprecated": false, "deprecationNote": "", "autowired": false,
"secret": false, "defaultValue": false, "configurationClass":
"org.apache.camel.component.qdrant.QdrantConfiguration", "configurationField":
"configuration", "description": "Whether the client uses Transport Layer
Security (TLS) to secure communications" },
- "autowiredEnabled": { "index": 8, "kind": "property", "displayName":
"Autowired Enabled", "group": "advanced", "label": "advanced", "required":
false, "type": "boolean", "javaType": "boolean", "deprecated": false,
"autowired": false, "secret": false, "defaultValue": true, "description":
"Whether autowiring is enabled. This is used for automatic autowiring options
(the option must be marked as autowired) by looking up in the registry to find
if there is a single instance of matching t [...]
- "filter": { "index": 9, "kind": "property", "displayName": "Filter",
"group": "advanced", "label": "advanced", "required": false, "type": "object",
"javaType": "io.qdrant.client.grpc.Points.Filter", "deprecated": false,
"deprecationNote": "", "autowired": true, "secret": false,
"configurationClass": "org.apache.camel.component.qdrant.QdrantConfiguration",
"configurationField": "configuration", "description": "Filter of type
io.qdrant.client.grpc.Points.Points.Filter for similarity se [...]
+ "configuration": { "index": 0, "kind": "property", "displayName":
"Configuration", "group": "producer", "label": "", "required": false, "type":
"object", "javaType": "org.apache.camel.component.qdrant.QdrantConfiguration",
"deprecated": false, "autowired": false, "secret": false, "description": "The
configuration;" },
+ "host": { "index": 1, "kind": "property", "displayName": "Host", "group":
"producer", "label": "", "required": false, "type": "string", "javaType":
"java.lang.String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "defaultValue": "localhost", "configurationClass":
"org.apache.camel.component.qdrant.QdrantConfiguration", "configurationField":
"configuration", "description": "The host to connect to." },
+ "lazyStartProducer": { "index": 2, "kind": "property", "displayName":
"Lazy Start Producer", "group": "producer", "label": "producer", "required":
false, "type": "boolean", "javaType": "boolean", "deprecated": false,
"autowired": false, "secret": false, "defaultValue": false, "description":
"Whether the producer should be started lazy (on the first message). By
starting lazy you can use this to allow CamelContext and routes to startup in
situations where a producer may otherwise fail [...]
+ "maxResults": { "index": 3, "kind": "property", "displayName": "Max
Results", "group": "producer", "label": "", "required": false, "type":
"integer", "javaType": "int", "deprecated": false, "autowired": false,
"secret": false, "defaultValue": 3, "configurationClass":
"org.apache.camel.component.qdrant.QdrantConfiguration", "configurationField":
"configuration", "description": "Max results for similarity search" },
+ "port": { "index": 4, "kind": "property", "displayName": "Port", "group":
"producer", "label": "", "required": false, "type": "integer", "javaType":
"int", "deprecated": false, "deprecationNote": "", "autowired": false,
"secret": false, "defaultValue": 6334, "configurationClass":
"org.apache.camel.component.qdrant.QdrantConfiguration", "configurationField":
"configuration", "description": "The port to connect to." },
+ "timeout": { "index": 5, "kind": "property", "displayName": "Timeout",
"group": "producer", "label": "", "required": false, "type": "duration",
"javaType": "java.time.Duration", "deprecated": false, "autowired": false,
"secret": false, "configurationClass":
"org.apache.camel.component.qdrant.QdrantConfiguration", "configurationField":
"configuration", "description": "Sets a default timeout for all requests" },
+ "autowiredEnabled": { "index": 6, "kind": "property", "displayName":
"Autowired Enabled", "group": "advanced", "label": "advanced", "required":
false, "type": "boolean", "javaType": "boolean", "deprecated": false,
"autowired": false, "secret": false, "defaultValue": true, "description":
"Whether autowiring is enabled. This is used for automatic autowiring options
(the option must be marked as autowired) by looking up in the registry to find
if there is a single instance of matching t [...]
+ "filter": { "index": 7, "kind": "property", "displayName": "Filter",
"group": "advanced", "label": "advanced", "required": false, "type": "object",
"javaType": "io.qdrant.client.grpc.Common.Filter", "deprecated": false,
"deprecationNote": "", "autowired": true, "secret": false,
"configurationClass": "org.apache.camel.component.qdrant.QdrantConfiguration",
"configurationField": "configuration", "description": "Filter for similarity
search." },
+ "apiKey": { "index": 8, "kind": "property", "displayName": "Api Key",
"group": "security", "label": "security", "required": false, "type": "string",
"javaType": "java.lang.String", "deprecated": false, "autowired": false,
"secret": true, "configurationClass":
"org.apache.camel.component.qdrant.QdrantConfiguration", "configurationField":
"configuration", "description": "Sets the API key to use for authentication" },
+ "tls": { "index": 9, "kind": "property", "displayName": "Tls", "group":
"security", "label": "security", "required": false, "type": "boolean",
"javaType": "boolean", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "defaultValue": false, "configurationClass":
"org.apache.camel.component.qdrant.QdrantConfiguration", "configurationField":
"configuration", "description": "Whether the client uses Transport Layer
Security (TLS) to secure communications" }
},
"headers": {
"CamelQdrantAction": { "index": 0, "kind": "header", "displayName": "",
"group": "producer", "label": "", "required": false, "javaType": "String",
"enum": [ "CREATE_COLLECTION", "DELETE_COLLECTION", "UPSERT", "RETRIEVE",
"DELETE", "COLLECTION_INFO", "SIMILARITY_SEARCH" ], "deprecated": false,
"deprecationNote": "", "autowired": false, "secret": false, "description": "The
action to be performed.", "constantName":
"org.apache.camel.component.qdrant.Qdrant$Headers#ACTION" },
@@ -49,13 +49,13 @@
},
"properties": {
"collection": { "index": 0, "kind": "path", "displayName": "Collection",
"group": "producer", "label": "", "required": true, "type": "string",
"javaType": "java.lang.String", "deprecated": false, "deprecationNote": "",
"autowired": false, "secret": false, "description": "The collection Name" },
- "apiKey": { "index": 1, "kind": "parameter", "displayName": "Api Key",
"group": "producer", "label": "", "required": false, "type": "string",
"javaType": "java.lang.String", "deprecated": false, "deprecationNote": "",
"autowired": false, "secret": true, "configurationClass":
"org.apache.camel.component.qdrant.QdrantConfiguration", "configurationField":
"configuration", "description": "Sets the API key to use for authentication" },
- "host": { "index": 2, "kind": "parameter", "displayName": "Host", "group":
"producer", "label": "", "required": false, "type": "string", "javaType":
"java.lang.String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "defaultValue": "localhost", "configurationClass":
"org.apache.camel.component.qdrant.QdrantConfiguration", "configurationField":
"configuration", "description": "The host to connect to." },
- "maxResults": { "index": 3, "kind": "parameter", "displayName": "Max
Results", "group": "producer", "label": "", "required": false, "type":
"integer", "javaType": "int", "deprecated": false, "autowired": false,
"secret": false, "defaultValue": 3, "configurationClass":
"org.apache.camel.component.qdrant.QdrantConfiguration", "configurationField":
"configuration", "description": "Max results for similarity search" },
- "port": { "index": 4, "kind": "parameter", "displayName": "Port", "group":
"producer", "label": "", "required": false, "type": "integer", "javaType":
"int", "deprecated": false, "deprecationNote": "", "autowired": false,
"secret": false, "defaultValue": 6334, "configurationClass":
"org.apache.camel.component.qdrant.QdrantConfiguration", "configurationField":
"configuration", "description": "The port to connect to." },
- "timeout": { "index": 5, "kind": "parameter", "displayName": "Timeout",
"group": "producer", "label": "", "required": false, "type": "duration",
"javaType": "java.time.Duration", "deprecated": false, "autowired": false,
"secret": false, "configurationClass":
"org.apache.camel.component.qdrant.QdrantConfiguration", "configurationField":
"configuration", "description": "Sets a default timeout for all requests" },
- "tls": { "index": 6, "kind": "parameter", "displayName": "Tls", "group":
"producer", "label": "", "required": false, "type": "boolean", "javaType":
"boolean", "deprecated": false, "deprecationNote": "", "autowired": false,
"secret": false, "defaultValue": false, "configurationClass":
"org.apache.camel.component.qdrant.QdrantConfiguration", "configurationField":
"configuration", "description": "Whether the client uses Transport Layer
Security (TLS) to secure communications" },
- "lazyStartProducer": { "index": 7, "kind": "parameter", "displayName":
"Lazy Start Producer", "group": "producer (advanced)", "label":
"producer,advanced", "required": false, "type": "boolean", "javaType":
"boolean", "deprecated": false, "autowired": false, "secret": false,
"defaultValue": false, "description": "Whether the producer should be started
lazy (on the first message). By starting lazy you can use this to allow
CamelContext and routes to startup in situations where a produc [...]
- "filter": { "index": 8, "kind": "parameter", "displayName": "Filter",
"group": "advanced", "label": "advanced", "required": false, "type": "object",
"javaType": "io.qdrant.client.grpc.Points.Filter", "deprecated": false,
"deprecationNote": "", "autowired": true, "secret": false,
"configurationClass": "org.apache.camel.component.qdrant.QdrantConfiguration",
"configurationField": "configuration", "description": "Filter of type
io.qdrant.client.grpc.Points.Points.Filter for similarity s [...]
+ "host": { "index": 1, "kind": "parameter", "displayName": "Host", "group":
"producer", "label": "", "required": false, "type": "string", "javaType":
"java.lang.String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "defaultValue": "localhost", "configurationClass":
"org.apache.camel.component.qdrant.QdrantConfiguration", "configurationField":
"configuration", "description": "The host to connect to." },
+ "maxResults": { "index": 2, "kind": "parameter", "displayName": "Max
Results", "group": "producer", "label": "", "required": false, "type":
"integer", "javaType": "int", "deprecated": false, "autowired": false,
"secret": false, "defaultValue": 3, "configurationClass":
"org.apache.camel.component.qdrant.QdrantConfiguration", "configurationField":
"configuration", "description": "Max results for similarity search" },
+ "port": { "index": 3, "kind": "parameter", "displayName": "Port", "group":
"producer", "label": "", "required": false, "type": "integer", "javaType":
"int", "deprecated": false, "deprecationNote": "", "autowired": false,
"secret": false, "defaultValue": 6334, "configurationClass":
"org.apache.camel.component.qdrant.QdrantConfiguration", "configurationField":
"configuration", "description": "The port to connect to." },
+ "timeout": { "index": 4, "kind": "parameter", "displayName": "Timeout",
"group": "producer", "label": "", "required": false, "type": "duration",
"javaType": "java.time.Duration", "deprecated": false, "autowired": false,
"secret": false, "configurationClass":
"org.apache.camel.component.qdrant.QdrantConfiguration", "configurationField":
"configuration", "description": "Sets a default timeout for all requests" },
+ "lazyStartProducer": { "index": 5, "kind": "parameter", "displayName":
"Lazy Start Producer", "group": "producer (advanced)", "label":
"producer,advanced", "required": false, "type": "boolean", "javaType":
"boolean", "deprecated": false, "autowired": false, "secret": false,
"defaultValue": false, "description": "Whether the producer should be started
lazy (on the first message). By starting lazy you can use this to allow
CamelContext and routes to startup in situations where a produc [...]
+ "filter": { "index": 6, "kind": "parameter", "displayName": "Filter",
"group": "advanced", "label": "advanced", "required": false, "type": "object",
"javaType": "io.qdrant.client.grpc.Common.Filter", "deprecated": false,
"deprecationNote": "", "autowired": true, "secret": false,
"configurationClass": "org.apache.camel.component.qdrant.QdrantConfiguration",
"configurationField": "configuration", "description": "Filter for similarity
search." },
+ "apiKey": { "index": 7, "kind": "parameter", "displayName": "Api Key",
"group": "security", "label": "security", "required": false, "type": "string",
"javaType": "java.lang.String", "deprecated": false, "autowired": false,
"secret": true, "configurationClass":
"org.apache.camel.component.qdrant.QdrantConfiguration", "configurationField":
"configuration", "description": "Sets the API key to use for authentication" },
+ "tls": { "index": 8, "kind": "parameter", "displayName": "Tls", "group":
"security", "label": "security", "required": false, "type": "boolean",
"javaType": "boolean", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "defaultValue": false, "configurationClass":
"org.apache.camel.component.qdrant.QdrantConfiguration", "configurationField":
"configuration", "description": "Whether the client uses Transport Layer
Security (TLS) to secure communications" }
}
}
diff --git
a/components/camel-ai/camel-qdrant/src/main/java/org/apache/camel/component/qdrant/QdrantConfiguration.java
b/components/camel-ai/camel-qdrant/src/main/java/org/apache/camel/component/qdrant/QdrantConfiguration.java
index 41e5297dc045..223493eaac9b 100644
---
a/components/camel-ai/camel-qdrant/src/main/java/org/apache/camel/component/qdrant/QdrantConfiguration.java
+++
b/components/camel-ai/camel-qdrant/src/main/java/org/apache/camel/component/qdrant/QdrantConfiguration.java
@@ -19,7 +19,7 @@ package org.apache.camel.component.qdrant;
import java.time.Duration;
import io.qdrant.client.QdrantClient;
-import io.qdrant.client.grpc.Points;
+import io.qdrant.client.grpc.Common;
import org.apache.camel.RuntimeCamelException;
import org.apache.camel.spi.Configurer;
import org.apache.camel.spi.Metadata;
@@ -33,31 +33,23 @@ public class QdrantConfiguration implements Cloneable {
@Metadata(defaultValue = "localhost")
@UriParam
private String host = "localhost";
-
@Metadata(defaultValue = "6334")
@UriParam
private int port = 6334;
-
- @Metadata(defaultValue = "false")
+ @Metadata(defaultValue = "false", label = "security")
@UriParam
private boolean tls;
-
- @Metadata(secret = true)
- @UriParam
+ @UriParam(label = "security", secret = true)
private String apiKey;
-
@UriParam
private Duration timeout;
-
@Metadata(autowired = true)
private QdrantClient client;
-
@UriParam(defaultValue = "3")
private int maxResults = 3;
-
@UriParam(label = "advanced")
@Metadata(autowired = true)
- private Points.Filter filter;
+ private Common.Filter filter;
public String getHost() {
return host;
@@ -131,23 +123,19 @@ public class QdrantConfiguration implements Cloneable {
/**
* Max results for similarity search
- *
- * @param maxResults
*/
public void setMaxResults(int maxResults) {
this.maxResults = maxResults;
}
- public Points.Filter getFilter() {
+ public Common.Filter getFilter() {
return filter;
}
/**
- * Filter of type io.qdrant.client.grpc.Points.Points.Filter for
similarity search. This is for advanced usage.
- *
- * @param filter
+ * Filter for similarity search.
*/
- public void setFilter(Points.Filter filter) {
+ public void setFilter(Common.Filter filter) {
this.filter = filter;
}
diff --git
a/components/camel-ai/camel-qdrant/src/main/java/org/apache/camel/component/qdrant/QdrantConverter.java
b/components/camel-ai/camel-qdrant/src/main/java/org/apache/camel/component/qdrant/QdrantConverter.java
index c872626ea7db..9768743c0cef 100644
---
a/components/camel-ai/camel-qdrant/src/main/java/org/apache/camel/component/qdrant/QdrantConverter.java
+++
b/components/camel-ai/camel-qdrant/src/main/java/org/apache/camel/component/qdrant/QdrantConverter.java
@@ -14,7 +14,6 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-
package org.apache.camel.component.qdrant;
import java.util.ArrayList;
@@ -24,9 +23,8 @@ import java.util.List;
import java.util.UUID;
import io.qdrant.client.PointIdFactory;
+import io.qdrant.client.grpc.Common;
import io.qdrant.client.grpc.Points;
-import io.qdrant.client.grpc.Points.Filter;
-import io.qdrant.client.grpc.Points.PointId;
import io.qdrant.client.grpc.Points.PointStruct;
import io.qdrant.client.grpc.Points.PointsSelector;
import org.apache.camel.Converter;
@@ -48,17 +46,17 @@ public class QdrantConverter {
}
@Converter
- public static List<PointId> toListOfPointIds(PointId p) {
+ public static List<Common.PointId> toListOfPointIds(Common.PointId p) {
return Collections.singletonList(p);
}
@Converter
- public static List<PointId>
toListOfPointIdsFromCollection(Collection<PointId> collection) {
+ public static List<Common.PointId>
toListOfPointIdsFromCollection(Collection<Common.PointId> collection) {
return new ArrayList<>(collection);
}
@Converter
- public static PointsSelector toPointSelector(PointId id) {
+ public static PointsSelector toPointSelector(Common.PointId id) {
return Points.PointsSelector.newBuilder()
.setPoints(
Points.PointsIdsList.newBuilder()
@@ -68,34 +66,34 @@ public class QdrantConverter {
}
@Converter
- public static PointsSelector toPointSelector(Points.Condition condition) {
+ public static PointsSelector toPointSelector(Common.Condition condition) {
return Points.PointsSelector.newBuilder()
.setFilter(
- Points.Filter.newBuilder()
+ Common.Filter.newBuilder()
.addMust(condition)
.build())
.build();
}
@Converter
- public static PointsSelector toPointSelector(Filter filter) {
+ public static PointsSelector toPointSelector(Common.Filter filter) {
return Points.PointsSelector.newBuilder()
.setFilter(filter)
.build();
}
@Converter
- public static PointId toPointId(long id) {
+ public static Common.PointId toPointId(long id) {
return PointIdFactory.id(id);
}
@Converter
- public static PointId toPointId(Long id) {
+ public static Common.PointId toPointId(Long id) {
return PointIdFactory.id(id);
}
@Converter
- public static PointId toPointId(UUID id) {
+ public static Common.PointId toPointId(UUID id) {
return PointIdFactory.id(id);
}
diff --git
a/components/camel-ai/camel-qdrant/src/main/java/org/apache/camel/component/qdrant/QdrantProducer.java
b/components/camel-ai/camel-qdrant/src/main/java/org/apache/camel/component/qdrant/QdrantProducer.java
index 2d9147cb85b9..4fb87c04ec70 100644
---
a/components/camel-ai/camel-qdrant/src/main/java/org/apache/camel/component/qdrant/QdrantProducer.java
+++
b/components/camel-ai/camel-qdrant/src/main/java/org/apache/camel/component/qdrant/QdrantProducer.java
@@ -29,6 +29,7 @@ import io.qdrant.client.QdrantClient;
import io.qdrant.client.WithPayloadSelectorFactory;
import io.qdrant.client.WithVectorsSelectorFactory;
import io.qdrant.client.grpc.Collections.VectorParams;
+import io.qdrant.client.grpc.Common;
import io.qdrant.client.grpc.Points;
import org.apache.camel.AsyncCallback;
import org.apache.camel.CamelContext;
@@ -42,6 +43,7 @@ import static io.qdrant.client.QueryFactory.nearest;
import static io.qdrant.client.WithPayloadSelectorFactory.enable;
public class QdrantProducer extends DefaultAsyncProducer {
+
private QdrantClient client;
private ExecutorService executor;
@@ -143,7 +145,7 @@ public class QdrantProducer extends DefaultAsyncProducer {
private boolean retrieve(Exchange exchange, AsyncCallback callback) throws
Exception {
final String collection = getEndpoint().getCollection();
final Message in = exchange.getMessage();
- final List<Points.PointId> ids = in.getMandatoryBody(List.class);
+ final List<Common.PointId> ids = in.getMandatoryBody(List.class);
call(
this.client.retrieveAsync(
@@ -272,7 +274,7 @@ public class QdrantProducer extends DefaultAsyncProducer {
ObjectHelper.notNull(vectors, "vectors");
final int maxResults =
getEndpoint().getConfiguration().getMaxResults();
- final Points.Filter filter =
getEndpoint().getConfiguration().getFilter();
+ final Common.Filter filter =
getEndpoint().getConfiguration().getFilter();
final Duration timeout = getEndpoint().getConfiguration().getTimeout();
var queryRequestBuilder = Points.QueryPoints.newBuilder()
diff --git
a/components/camel-ai/camel-qdrant/src/main/java/org/apache/camel/component/qdrant/transform/QdrantEmbeddingsDataTypeTransformer.java
b/components/camel-ai/camel-qdrant/src/main/java/org/apache/camel/component/qdrant/transform/QdrantEmbeddingsDataTypeTransformer.java
index 255d4880137d..058c24b94e2f 100644
---
a/components/camel-ai/camel-qdrant/src/main/java/org/apache/camel/component/qdrant/transform/QdrantEmbeddingsDataTypeTransformer.java
+++
b/components/camel-ai/camel-qdrant/src/main/java/org/apache/camel/component/qdrant/transform/QdrantEmbeddingsDataTypeTransformer.java
@@ -14,7 +14,6 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-
package org.apache.camel.component.qdrant.transform;
import java.util.UUID;
@@ -25,6 +24,7 @@ import dev.langchain4j.data.segment.TextSegment;
import io.qdrant.client.PointIdFactory;
import io.qdrant.client.ValueFactory;
import io.qdrant.client.VectorsFactory;
+import io.qdrant.client.grpc.Common;
import io.qdrant.client.grpc.Points;
import org.apache.camel.Message;
import org.apache.camel.ai.CamelLangchain4jAttributes;
@@ -44,8 +44,8 @@ public class QdrantEmbeddingsDataTypeTransformer extends
Transformer {
public void transform(Message message, DataType fromType, DataType toType)
{
Embedding embedding =
message.getHeader(CamelLangchain4jAttributes.CAMEL_LANGCHAIN4J_EMBEDDING_VECTOR,
Embedding.class);
TextSegment text = message.getBody(TextSegment.class);
- Points.PointId id
- = message.getHeader(Qdrant.Headers.POINT_ID, () ->
PointIdFactory.id(UUID.randomUUID()), Points.PointId.class);
+ Common.PointId id
+ = message.getHeader(Qdrant.Headers.POINT_ID, () ->
PointIdFactory.id(UUID.randomUUID()), Common.PointId.class);
var builder = Points.PointStruct.newBuilder();
builder.setId(id);
diff --git
a/components/camel-ai/camel-qdrant/src/test/java/org/apache/camel/component/qdrant/QdrantDeleteTest.java
b/components/camel-ai/camel-qdrant/src/test/java/org/apache/camel/component/qdrant/QdrantDeleteTest.java
index bf8ce24e2544..9cdc8556f42f 100644
---
a/components/camel-ai/camel-qdrant/src/test/java/org/apache/camel/component/qdrant/QdrantDeleteTest.java
+++
b/components/camel-ai/camel-qdrant/src/test/java/org/apache/camel/component/qdrant/QdrantDeleteTest.java
@@ -14,10 +14,9 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-
package org.apache.camel.component.qdrant;
-import io.qdrant.client.grpc.Points;
+import io.qdrant.client.grpc.Common;
import org.apache.camel.Exchange;
import org.apache.camel.NoSuchHeaderException;
import org.junit.jupiter.api.DisplayName;
@@ -32,7 +31,7 @@ public class QdrantDeleteTest extends QdrantTestSupport {
@Test
public void deleteWithoutRequiredParameters() {
Exchange result = fluentTemplate.to("qdrant:delete")
- .withBody(Points.Filter.newBuilder()
+ .withBody(Common.Filter.newBuilder()
.addMust(matchKeyword("foo", "hello"))
.build())
.request(Exchange.class);
diff --git
a/components/camel-ai/camel-qdrant/src/test/java/org/apache/camel/component/qdrant/it/QdrantDeletePointsIT.java
b/components/camel-ai/camel-qdrant/src/test/java/org/apache/camel/component/qdrant/it/QdrantDeletePointsIT.java
index fc132d35a05d..b1eabae7968c 100644
---
a/components/camel-ai/camel-qdrant/src/test/java/org/apache/camel/component/qdrant/it/QdrantDeletePointsIT.java
+++
b/components/camel-ai/camel-qdrant/src/test/java/org/apache/camel/component/qdrant/it/QdrantDeletePointsIT.java
@@ -25,6 +25,7 @@ import io.qdrant.client.PointIdFactory;
import io.qdrant.client.ValueFactory;
import io.qdrant.client.VectorsFactory;
import io.qdrant.client.grpc.Collections;
+import io.qdrant.client.grpc.Common;
import io.qdrant.client.grpc.Points;
import org.apache.camel.Exchange;
import org.apache.camel.component.qdrant.QdrantAction;
@@ -114,7 +115,7 @@ public class QdrantDeletePointsIT extends QdrantTestSupport
{
Exchange deleteResult = fluentTemplate.to("qdrant:testDelete")
.withHeader(QdrantHeaders.ACTION, QdrantAction.DELETE)
.withBody(
- Points.Filter.newBuilder()
+ Common.Filter.newBuilder()
.addMust(ConditionFactory.matchKeyword("bar",
"hello2"))
.build())
.request(Exchange.class);
diff --git a/parent/pom.xml b/parent/pom.xml
index 2feb6bf1e318..edf447e114aa 100644
--- a/parent/pom.xml
+++ b/parent/pom.xml
@@ -452,7 +452,7 @@
<prowide-version>SRU2025-10.3.3</prowide-version>
<pubnub-version>12.0.0</pubnub-version>
<pulsar-version>4.1.2</pulsar-version>
- <qdrant-client-version>1.15.0</qdrant-client-version>
+ <qdrant-client-version>1.16.0</qdrant-client-version>
<qpid-broker-version>10.0.0</qpid-broker-version>
<qpid-proton-j-version>0.34.1</qpid-proton-j-version>
<qpid-jms-client-version>2.9.0</qpid-jms-client-version>