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-spring-boot.git
The following commit(s) were added to refs/heads/main by this push:
new 1ee2a9ea358 Regen
1ee2a9ea358 is described below
commit 1ee2a9ea3587d76d6445e77ad4e4083adb1aad65
Author: Claus Ibsen <[email protected]>
AuthorDate: Wed Jan 8 16:20:59 2025 +0100
Regen
---
.../springboot/catalog/components/qdrant.json | 20 +++++++++-------
.../camel-qdrant-starter/src/main/docs/qdrant.json | 13 +++++++++++
.../springboot/QdrantComponentConfiguration.java | 27 ++++++++++++++++++++++
.../springboot/QdrantComponentConverter.java | 2 ++
4 files changed, 54 insertions(+), 8 deletions(-)
diff --git
a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/qdrant.json
b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/qdrant.json
index cabcc134085..7d288199f1e 100644
---
a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/qdrant.json
+++
b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/qdrant.json
@@ -28,10 +28,12 @@
"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 [...]
- "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": "object",
"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": "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": 7, "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 [...]
+ "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": "object",
"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 [...]
},
"headers": {
"CamelQdrantAction": { "index": 0, "kind": "header", "displayName": "",
"group": "producer", "label": "", "required": false, "javaType": "String",
"enum": [ "CREATE_COLLECTION", "DELETE_COLLECTION", "UPSERT", "RETRIEVE",
"DELETE", "COLLECTION_INFO" ], "deprecated": false, "deprecationNote": "",
"autowired": false, "secret": false, "description": "The action to be
performed.", "constantName":
"org.apache.camel.component.qdrant.Qdrant$Headers#ACTION" },
@@ -49,9 +51,11 @@
"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." },
- "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": "object",
"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": 5, "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": 6, "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 [...]
+ "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": "object",
"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 [...]
}
}
diff --git a/components-starter/camel-qdrant-starter/src/main/docs/qdrant.json
b/components-starter/camel-qdrant-starter/src/main/docs/qdrant.json
index dbaf7c98f30..b889408e26d 100644
--- a/components-starter/camel-qdrant-starter/src/main/docs/qdrant.json
+++ b/components-starter/camel-qdrant-starter/src/main/docs/qdrant.json
@@ -43,6 +43,12 @@
"description": "Whether to enable auto configuration of the qdrant
component. This is enabled by default.",
"sourceType":
"org.apache.camel.component.qdrant.springboot.QdrantComponentConfiguration"
},
+ {
+ "name": "camel.component.qdrant.filter",
+ "type": "io.qdrant.client.grpc.Points$Filter",
+ "description": "Filter of type
io.qdrant.client.grpc.Points.Points.Filter for similarity search. This is for
advanced usage. The option is a io.qdrant.client.grpc.Points.Filter type.",
+ "sourceType":
"org.apache.camel.component.qdrant.springboot.QdrantComponentConfiguration"
+ },
{
"name": "camel.component.qdrant.host",
"type": "java.lang.String",
@@ -57,6 +63,13 @@
"sourceType":
"org.apache.camel.component.qdrant.springboot.QdrantComponentConfiguration",
"defaultValue": false
},
+ {
+ "name": "camel.component.qdrant.max-results",
+ "type": "java.lang.Integer",
+ "description": "Max results for similarity search",
+ "sourceType":
"org.apache.camel.component.qdrant.springboot.QdrantComponentConfiguration",
+ "defaultValue": 3
+ },
{
"name": "camel.component.qdrant.port",
"type": "java.lang.Integer",
diff --git
a/components-starter/camel-qdrant-starter/src/main/java/org/apache/camel/component/qdrant/springboot/QdrantComponentConfiguration.java
b/components-starter/camel-qdrant-starter/src/main/java/org/apache/camel/component/qdrant/springboot/QdrantComponentConfiguration.java
index a4cc20b4c0a..a78f0cb15a7 100644
---
a/components-starter/camel-qdrant-starter/src/main/java/org/apache/camel/component/qdrant/springboot/QdrantComponentConfiguration.java
+++
b/components-starter/camel-qdrant-starter/src/main/java/org/apache/camel/component/qdrant/springboot/QdrantComponentConfiguration.java
@@ -17,6 +17,7 @@
package org.apache.camel.component.qdrant.springboot;
import java.time.Duration;
+import io.qdrant.client.grpc.Points.Filter;
import org.apache.camel.component.qdrant.QdrantConfiguration;
import org.apache.camel.spring.boot.ComponentConfigurationPropertiesCommon;
import org.springframework.boot.context.properties.ConfigurationProperties;
@@ -60,6 +61,10 @@ public class QdrantComponentConfiguration
* and prolong the total processing time of the processing.
*/
private Boolean lazyStartProducer = false;
+ /**
+ * Max results for similarity search
+ */
+ private Integer maxResults = 3;
/**
* The port to connect to.
*/
@@ -82,6 +87,12 @@ public class QdrantComponentConfiguration
* etc.
*/
private Boolean autowiredEnabled = true;
+ /**
+ * Filter of type io.qdrant.client.grpc.Points.Points.Filter for similarity
+ * search. This is for advanced usage. The option is a
+ * io.qdrant.client.grpc.Points.Filter type.
+ */
+ private Filter filter;
public String getApiKey() {
return apiKey;
@@ -115,6 +126,14 @@ public class QdrantComponentConfiguration
this.lazyStartProducer = lazyStartProducer;
}
+ public Integer getMaxResults() {
+ return maxResults;
+ }
+
+ public void setMaxResults(Integer maxResults) {
+ this.maxResults = maxResults;
+ }
+
public Integer getPort() {
return port;
}
@@ -146,4 +165,12 @@ public class QdrantComponentConfiguration
public void setAutowiredEnabled(Boolean autowiredEnabled) {
this.autowiredEnabled = autowiredEnabled;
}
+
+ public Filter getFilter() {
+ return filter;
+ }
+
+ public void setFilter(Filter filter) {
+ this.filter = filter;
+ }
}
\ No newline at end of file
diff --git
a/components-starter/camel-qdrant-starter/src/main/java/org/apache/camel/component/qdrant/springboot/QdrantComponentConverter.java
b/components-starter/camel-qdrant-starter/src/main/java/org/apache/camel/component/qdrant/springboot/QdrantComponentConverter.java
index 699348b2355..83926eabc4f 100644
---
a/components-starter/camel-qdrant-starter/src/main/java/org/apache/camel/component/qdrant/springboot/QdrantComponentConverter.java
+++
b/components-starter/camel-qdrant-starter/src/main/java/org/apache/camel/component/qdrant/springboot/QdrantComponentConverter.java
@@ -40,6 +40,7 @@ public class QdrantComponentConverter implements
GenericConverter {
public Set<ConvertiblePair> getConvertibleTypes() {
Set<ConvertiblePair> answer = new LinkedHashSet<>();
answer.add(new ConvertiblePair(String.class,
org.apache.camel.component.qdrant.QdrantConfiguration.class));
+ answer.add(new ConvertiblePair(String.class,
io.qdrant.client.grpc.Points.Filter.class));
return answer;
}
@@ -57,6 +58,7 @@ public class QdrantComponentConverter implements
GenericConverter {
ref = ref.startsWith("#bean:") ? ref.substring(6) : ref.substring(1);
switch (targetType.getName()) {
case "org.apache.camel.component.qdrant.QdrantConfiguration":
return applicationContext.getBean(ref,
org.apache.camel.component.qdrant.QdrantConfiguration.class);
+ case "io.qdrant.client.grpc.Points.Filter": return
applicationContext.getBean(ref, io.qdrant.client.grpc.Points.Filter.class);
}
return null;
}