You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ac...@apache.org on 2024/03/15 11:41:43 UTC
(camel) 04/05: CAMEL-20485 - Create a Camel-Milvus component - Full regen
This is an automated email from the ASF dual-hosted git repository.
acosentino pushed a commit to branch milvus-component
in repository https://gitbox.apache.org/repos/asf/camel.git
commit 5e5d2f9cfe084013730fc940aaa9905982eab561
Author: Andrea Cosentino <an...@gmail.com>
AuthorDate: Fri Mar 15 12:25:49 2024 +0100
CAMEL-20485 - Create a Camel-Milvus component - Full regen
Signed-off-by: Andrea Cosentino <an...@gmail.com>
---
.../org/apache/camel/catalog/components.properties | 1 +
.../catalog/components/langchain-embeddings.json | 4 +-
.../apache/camel/catalog/components/milvus.json | 53 +++
.../src/main/docs/milvus-component.adoc | 10 +-
.../camel/component/milvus/MilvusProducer.java | 5 +-
.../camel/component/milvus/MilvusTestSupport.java | 5 +-
.../camel/component/milvus/MilvusUpsertTest.java | 3 -
.../component/milvus/it/MilvusComponentIT.java | 11 +-
.../org/apache/camel/main/components.properties | 1 +
.../modules/ROOT/examples/json/milvus.json | 1 +
docs/components/modules/ROOT/nav.adoc | 1 +
.../modules/ROOT/pages/milvus-component.adoc | 1 +
.../component/ComponentsBuilderFactory.java | 15 +-
...LangchainEmbeddingsComponentBuilderFactory.java | 4 +-
...ory.java => MilvusComponentBuilderFactory.java} | 120 +++++--
.../src/generated/resources/metadata.json | 27 +-
.../builder/endpoint/EndpointBuilderFactory.java | 1 +
.../camel/builder/endpoint/EndpointBuilders.java | 1 +
.../builder/endpoint/StaticEndpointBuilders.java | 47 ++-
.../LangchainEmbeddingsEndpointBuilderFactory.java | 8 +-
.../endpoint/dsl/MilvusEndpointBuilderFactory.java | 390 +++++++++++++++++++++
.../camel-component-known-dependencies.properties | 1 +
.../kotlin/components/LangchainEmbeddingsUriDsl.kt | 2 +-
...angchainEmbeddingsUriDsl.kt => MilvusUriDsl.kt} | 62 +++-
24 files changed, 689 insertions(+), 85 deletions(-)
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components.properties b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components.properties
index 568d1cee709..3fd271c713c 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components.properties
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components.properties
@@ -216,6 +216,7 @@ mapstruct
master
metrics
micrometer
+milvus
mina
minio
mllp
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/langchain-embeddings.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/langchain-embeddings.json
index a064e3985a3..00a08f7f076 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/langchain-embeddings.json
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/langchain-embeddings.json
@@ -3,7 +3,7 @@
"kind": "component",
"name": "langchain-embeddings",
"title": "Langchain4j Embeddings",
- "description": "Langchain4j Embeddings",
+ "description": "Perform operations on the Qdrant Vector Database.",
"deprecated": false,
"firstVersion": "4.5.0",
"label": "ai",
@@ -11,7 +11,7 @@
"supportLevel": "Preview",
"groupId": "org.apache.camel",
"artifactId": "camel-langchain-embeddings",
- "version": "4.5.0-SNAPSHOT",
+ "version": "4.4.0-SNAPSHOT",
"scheme": "langchain-embeddings",
"extendsScheme": "",
"syntax": "langchain-embeddings:embeddingId",
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/milvus.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/milvus.json
new file mode 100644
index 00000000000..a27466d4406
--- /dev/null
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/milvus.json
@@ -0,0 +1,53 @@
+{
+ "component": {
+ "kind": "component",
+ "name": "milvus",
+ "title": "Milvus",
+ "description": "Perform operations on the Milvus Vector Database.",
+ "deprecated": false,
+ "firstVersion": "4.5.0",
+ "label": "database,ai",
+ "javaType": "org.apache.camel.component.milvus.MilvusComponent",
+ "supportLevel": "Preview",
+ "groupId": "org.apache.camel",
+ "artifactId": "camel-milvus",
+ "version": "4.5.0-SNAPSHOT",
+ "scheme": "milvus",
+ "extendsScheme": "",
+ "syntax": "milvus:collection",
+ "async": false,
+ "api": false,
+ "consumerOnly": false,
+ "producerOnly": true,
+ "lenientProperties": false,
+ "remote": true
+ },
+ "componentProperties": {
+ "configuration": { "index": 0, "kind": "property", "displayName": "Configuration", "group": "producer", "label": "", "required": false, "type": "object", "javaType": "org.apache.camel.component.milvus.MilvusConfiguration", "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.milvus.MilvusConfiguration", "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 [...]
+ "port": { "index": 3, "kind": "property", "displayName": "Port", "group": "producer", "label": "", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "defaultValue": 19530, "configurationClass": "org.apache.camel.component.milvus.MilvusConfiguration", "configurationField": "configuration", "description": "The port to connect to." },
+ "timeout": { "index": 4, "kind": "property", "displayName": "Timeout", "group": "producer", "label": "", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.milvus.MilvusConfiguration", "configurationField": "configuration", "description": "Sets a default timeout for all requests" },
+ "token": { "index": 5, "kind": "property", "displayName": "Token", "group": "producer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.milvus.MilvusConfiguration", "configurationField": "configuration", "description": "Sets the API key to use for authentication" },
+ "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 [...]
+ },
+ "headers": {
+ "CamelMilvusAction": { "index": 0, "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "String", "enum": [ "UPSERT", "RETRIEVE", "DELETE" ], "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The action to be performed.", "constantName": "org.apache.camel.component.milvus.Milvus$Headers#ACTION" },
+ "CamelMilvusPointsPayloadSelector": { "index": 1, "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "io.qdrant.client.grpc.Points$WithPayloadSelector", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Payload Selector.", "constantName": "org.apache.camel.component.milvus.Milvus$Headers#PAYLOAD_SELECTOR" },
+ "CamelMilvusOperationID": { "index": 2, "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "long", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Operation ID.", "constantName": "org.apache.camel.component.milvus.Milvus$Headers#OPERATION_ID" },
+ "CamelMilvusOperationStatus": { "index": 3, "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Operation Status.", "constantName": "org.apache.camel.component.milvus.Milvus$Headers#OPERATION_STATUS" },
+ "CamelMilvusOperationStatusValue": { "index": 4, "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "int", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Operation Status Value.", "constantName": "org.apache.camel.component.milvus.Milvus$Headers#OPERATION_STATUS_VALUE" },
+ "CamelMilvusReadConsistency": { "index": 5, "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "io.qdrant.client.grpc.Points$ReadConsistency", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Read Consistency.", "constantName": "org.apache.camel.component.milvus.Milvus$Headers#READ_CONSISTENCY" },
+ "CamelMilvusWithPayload": { "index": 6, "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "boolean", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "defaultValue": "true", "description": "Include Payload.", "constantName": "org.apache.camel.component.milvus.Milvus$Headers#INCLUDE_PAYLOAD" },
+ "CamelMilvusWithVectors": { "index": 7, "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "boolean", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "defaultValue": "false", "description": "Include Vectors.", "constantName": "org.apache.camel.component.milvus.Milvus$Headers#INCLUDE_VECTORS" },
+ "CamelMilvusSize": { "index": 8, "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "int", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The number of elements.", "constantName": "org.apache.camel.component.milvus.Milvus$Headers#SIZE" }
+ },
+ "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" },
+ "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.milvus.MilvusConfiguration", "configurationField": "configuration", "description": "The host to connect to." },
+ "port": { "index": 2, "kind": "parameter", "displayName": "Port", "group": "producer", "label": "", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "defaultValue": 19530, "configurationClass": "org.apache.camel.component.milvus.MilvusConfiguration", "configurationField": "configuration", "description": "The port to connect to." },
+ "timeout": { "index": 3, "kind": "parameter", "displayName": "Timeout", "group": "producer", "label": "", "required": false, "type": "integer", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.milvus.MilvusConfiguration", "configurationField": "configuration", "description": "Sets a default timeout for all requests" },
+ "token": { "index": 4, "kind": "parameter", "displayName": "Token", "group": "producer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.milvus.MilvusConfiguration", "configurationField": "configuration", "description": "Sets the API key to use for authentication" },
+ "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 [...]
+ }
+}
diff --git a/components/camel-milvus/src/main/docs/milvus-component.adoc b/components/camel-milvus/src/main/docs/milvus-component.adoc
index 3cf3040b498..6cb4d2e2c5d 100644
--- a/components/camel-milvus/src/main/docs/milvus-component.adoc
+++ b/components/camel-milvus/src/main/docs/milvus-component.adoc
@@ -1,8 +1,8 @@
-= Qdrant Component
-:doctitle: Qdrant
-:shortname: qdrant
-:artifactid: camel-qdrant
-:description: Perform operations on the Qdrant Vector Database.
+= Milvus Component
+:doctitle: Milvus
+:shortname: milvus
+:artifactid: camel-milvus
+:description: Perform operations on the Milvus Vector Database.
:since: 4.5
:supportlevel: Preview
:tabs-sync-option:
diff --git a/components/camel-milvus/src/main/java/org/apache/camel/component/milvus/MilvusProducer.java b/components/camel-milvus/src/main/java/org/apache/camel/component/milvus/MilvusProducer.java
index 8a3e2a8b78b..c6f23fcc687 100644
--- a/components/camel-milvus/src/main/java/org/apache/camel/component/milvus/MilvusProducer.java
+++ b/components/camel-milvus/src/main/java/org/apache/camel/component/milvus/MilvusProducer.java
@@ -16,7 +16,6 @@
*/
package org.apache.camel.component.milvus;
-import java.util.List;
import java.util.concurrent.ExecutorService;
import io.milvus.client.MilvusClient;
@@ -133,7 +132,6 @@ public class MilvusProducer extends DefaultProducer {
}
-
private void createIndex(Exchange exchange) throws Exception {
final Message in = exchange.getMessage();
final CreateIndexParam body = in.getMandatoryBody(CreateIndexParam.class);
@@ -149,7 +147,8 @@ public class MilvusProducer extends DefaultProducer {
final Message in = exchange.getMessage();
final SearchSimpleParam body = in.getMandatoryBody(SearchSimpleParam.class);
- this.client.loadCollection(LoadCollectionParam.newBuilder().withCollectionName(getEndpoint().getCollection()).withSyncLoad(true).build());
+ this.client.loadCollection(
+ LoadCollectionParam.newBuilder().withCollectionName(getEndpoint().getCollection()).withSyncLoad(true).build());
R<SearchResponse> result = this.client.search(body);
handleResponseStatus(result);
diff --git a/components/camel-milvus/src/test/java/org/apache/camel/component/milvus/MilvusTestSupport.java b/components/camel-milvus/src/test/java/org/apache/camel/component/milvus/MilvusTestSupport.java
index 417354f8e1c..c2b59bc8d6a 100644
--- a/components/camel-milvus/src/test/java/org/apache/camel/component/milvus/MilvusTestSupport.java
+++ b/components/camel-milvus/src/test/java/org/apache/camel/component/milvus/MilvusTestSupport.java
@@ -16,6 +16,8 @@
*/
package org.apache.camel.component.milvus;
+import java.net.URL;
+
import org.apache.camel.CamelContext;
import org.apache.camel.test.infra.milvus.services.MilvusService;
import org.apache.camel.test.infra.milvus.services.MilvusServiceFactory;
@@ -23,9 +25,6 @@ import org.apache.camel.test.junit5.CamelTestSupport;
import org.junit.jupiter.api.TestInstance;
import org.junit.jupiter.api.extension.RegisterExtension;
-import java.net.MalformedURLException;
-import java.net.URL;
-
@TestInstance(TestInstance.Lifecycle.PER_CLASS)
public class MilvusTestSupport extends CamelTestSupport {
@RegisterExtension
diff --git a/components/camel-milvus/src/test/java/org/apache/camel/component/milvus/MilvusUpsertTest.java b/components/camel-milvus/src/test/java/org/apache/camel/component/milvus/MilvusUpsertTest.java
index f16ee8b9798..50ab4b2a2ce 100644
--- a/components/camel-milvus/src/test/java/org/apache/camel/component/milvus/MilvusUpsertTest.java
+++ b/components/camel-milvus/src/test/java/org/apache/camel/component/milvus/MilvusUpsertTest.java
@@ -22,9 +22,6 @@ import org.apache.camel.NoSuchHeaderException;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.Test;
-import java.util.List;
-import java.util.Map;
-
import static org.assertj.core.api.Assertions.assertThat;
public class MilvusUpsertTest extends MilvusTestSupport {
diff --git a/components/camel-milvus/src/test/java/org/apache/camel/component/milvus/it/MilvusComponentIT.java b/components/camel-milvus/src/test/java/org/apache/camel/component/milvus/it/MilvusComponentIT.java
index 95ee6b323e2..6220150f19c 100644
--- a/components/camel-milvus/src/test/java/org/apache/camel/component/milvus/it/MilvusComponentIT.java
+++ b/components/camel-milvus/src/test/java/org/apache/camel/component/milvus/it/MilvusComponentIT.java
@@ -16,6 +16,10 @@
*/
package org.apache.camel.component.milvus.it;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Random;
+
import io.milvus.common.clientenum.ConsistencyLevelEnum;
import io.milvus.grpc.DataType;
import io.milvus.param.IndexType;
@@ -35,10 +39,6 @@ import org.apache.camel.component.milvus.MilvusTestSupport;
import org.assertj.core.util.Lists;
import org.junit.jupiter.api.*;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Random;
-
import static org.assertj.core.api.Assertions.assertThat;
@TestMethodOrder(MethodOrderer.OrderAnnotation.class)
@@ -106,7 +106,7 @@ public class MilvusComponentIT extends MilvusTestSupport {
assertThat(result).isNotNull();
assertThat(result.getException()).isNull();
- CreateIndexParam createVectorIndexParam = CreateIndexParam.newBuilder()
+ CreateIndexParam createVectorIndexParam = CreateIndexParam.newBuilder()
.withCollectionName("test")
.withFieldName("userFace")
.withIndexName("userFaceIndex")
@@ -153,7 +153,6 @@ public class MilvusComponentIT extends MilvusTestSupport {
assertThat(result.getException()).isNull();
}
-
@Test
@Order(4)
public void upsert() {
diff --git a/core/camel-main/src/generated/resources/org/apache/camel/main/components.properties b/core/camel-main/src/generated/resources/org/apache/camel/main/components.properties
index 568d1cee709..3fd271c713c 100644
--- a/core/camel-main/src/generated/resources/org/apache/camel/main/components.properties
+++ b/core/camel-main/src/generated/resources/org/apache/camel/main/components.properties
@@ -216,6 +216,7 @@ mapstruct
master
metrics
micrometer
+milvus
mina
minio
mllp
diff --git a/docs/components/modules/ROOT/examples/json/milvus.json b/docs/components/modules/ROOT/examples/json/milvus.json
new file mode 120000
index 00000000000..57556162721
--- /dev/null
+++ b/docs/components/modules/ROOT/examples/json/milvus.json
@@ -0,0 +1 @@
+../../../../../../components/camel-milvus/src/generated/resources/META-INF/org/apache/camel/component/milvus/milvus.json
\ No newline at end of file
diff --git a/docs/components/modules/ROOT/nav.adoc b/docs/components/modules/ROOT/nav.adoc
index b48101fb036..09dfa3f13b0 100644
--- a/docs/components/modules/ROOT/nav.adoc
+++ b/docs/components/modules/ROOT/nav.adoc
@@ -223,6 +223,7 @@
** xref:master-component.adoc[Master]
** xref:metrics-component.adoc[Metrics]
** xref:micrometer-component.adoc[Micrometer]
+** xref:milvus-component.adoc[Milvus]
** xref:mina-component.adoc[Mina]
** xref:minio-component.adoc[Minio]
** xref:mllp-component.adoc[MLLP]
diff --git a/docs/components/modules/ROOT/pages/milvus-component.adoc b/docs/components/modules/ROOT/pages/milvus-component.adoc
new file mode 120000
index 00000000000..44c89744e65
--- /dev/null
+++ b/docs/components/modules/ROOT/pages/milvus-component.adoc
@@ -0,0 +1 @@
+../../../../../components/camel-milvus/src/main/docs/milvus-component.adoc
\ No newline at end of file
diff --git a/dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/ComponentsBuilderFactory.java b/dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/ComponentsBuilderFactory.java
index 8ac627aacfb..167b16cdc17 100644
--- a/dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/ComponentsBuilderFactory.java
+++ b/dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/ComponentsBuilderFactory.java
@@ -2781,7 +2781,7 @@ public interface ComponentsBuilderFactory {
}
/**
* Langchain4j Embeddings (camel-langchain-embeddings)
- * Langchain4j Embeddings
+ * Perform operations on the Qdrant Vector Database.
*
* Category: ai
* Since: 4.5
@@ -2938,6 +2938,19 @@ public interface ComponentsBuilderFactory {
static org.apache.camel.builder.component.dsl.MicrometerComponentBuilderFactory.MicrometerComponentBuilder micrometer() {
return org.apache.camel.builder.component.dsl.MicrometerComponentBuilderFactory.micrometer();
}
+ /**
+ * Milvus (camel-milvus)
+ * Perform operations on the Milvus Vector Database.
+ *
+ * Category: database,ai
+ * Since: 4.5
+ * Maven coordinates: org.apache.camel:camel-milvus
+ *
+ * @return the dsl builder
+ */
+ static org.apache.camel.builder.component.dsl.MilvusComponentBuilderFactory.MilvusComponentBuilder milvus() {
+ return org.apache.camel.builder.component.dsl.MilvusComponentBuilderFactory.milvus();
+ }
/**
* Mina (camel-mina)
* Socket level networking using TCP or UDP with Apache Mina 2.x.
diff --git a/dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/LangchainEmbeddingsComponentBuilderFactory.java b/dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/LangchainEmbeddingsComponentBuilderFactory.java
index 9ac552400b8..7e9152c0822 100644
--- a/dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/LangchainEmbeddingsComponentBuilderFactory.java
+++ b/dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/LangchainEmbeddingsComponentBuilderFactory.java
@@ -23,7 +23,7 @@ import org.apache.camel.builder.component.ComponentBuilder;
import org.apache.camel.component.langchain.embeddings.LangchainEmbeddingsComponent;
/**
- * Langchain4j Embeddings
+ * Perform operations on the Qdrant Vector Database.
*
* Generated by camel-package-maven-plugin - do not edit this file!
*/
@@ -32,7 +32,7 @@ public interface LangchainEmbeddingsComponentBuilderFactory {
/**
* Langchain4j Embeddings (camel-langchain-embeddings)
- * Langchain4j Embeddings
+ * Perform operations on the Qdrant Vector Database.
*
* Category: ai
* Since: 4.5
diff --git a/dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/LangchainEmbeddingsComponentBuilderFactory.java b/dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/MilvusComponentBuilderFactory.java
similarity index 51%
copy from dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/LangchainEmbeddingsComponentBuilderFactory.java
copy to dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/MilvusComponentBuilderFactory.java
index 9ac552400b8..0425f4ca636 100644
--- a/dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/LangchainEmbeddingsComponentBuilderFactory.java
+++ b/dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/MilvusComponentBuilderFactory.java
@@ -20,66 +20,65 @@ import javax.annotation.processing.Generated;
import org.apache.camel.Component;
import org.apache.camel.builder.component.AbstractComponentBuilder;
import org.apache.camel.builder.component.ComponentBuilder;
-import org.apache.camel.component.langchain.embeddings.LangchainEmbeddingsComponent;
+import org.apache.camel.component.milvus.MilvusComponent;
/**
- * Langchain4j Embeddings
+ * Perform operations on the Milvus Vector Database.
*
* Generated by camel-package-maven-plugin - do not edit this file!
*/
@Generated("org.apache.camel.maven.packaging.ComponentDslMojo")
-public interface LangchainEmbeddingsComponentBuilderFactory {
+public interface MilvusComponentBuilderFactory {
/**
- * Langchain4j Embeddings (camel-langchain-embeddings)
- * Langchain4j Embeddings
+ * Milvus (camel-milvus)
+ * Perform operations on the Milvus Vector Database.
*
- * Category: ai
+ * Category: database,ai
* Since: 4.5
- * Maven coordinates: org.apache.camel:camel-langchain-embeddings
+ * Maven coordinates: org.apache.camel:camel-milvus
*
* @return the dsl builder
*/
- static LangchainEmbeddingsComponentBuilder langchainEmbeddings() {
- return new LangchainEmbeddingsComponentBuilderImpl();
+ static MilvusComponentBuilder milvus() {
+ return new MilvusComponentBuilderImpl();
}
/**
- * Builder for the Langchain4j Embeddings component.
+ * Builder for the Milvus component.
*/
- interface LangchainEmbeddingsComponentBuilder
+ interface MilvusComponentBuilder
extends
- ComponentBuilder<LangchainEmbeddingsComponent> {
+ ComponentBuilder<MilvusComponent> {
/**
- * The configuration.
+ * The configuration;.
*
* The option is a:
- * <code>org.apache.camel.component.langchain.embeddings.LangchainEmbeddingsConfiguration</code> type.
+ * <code>org.apache.camel.component.milvus.MilvusConfiguration</code> type.
*
* Group: producer
*
* @param configuration the value to set
* @return the dsl builder
*/
- default LangchainEmbeddingsComponentBuilder configuration(
- org.apache.camel.component.langchain.embeddings.LangchainEmbeddingsConfiguration configuration) {
+ default MilvusComponentBuilder configuration(
+ org.apache.camel.component.milvus.MilvusConfiguration configuration) {
doSetProperty("configuration", configuration);
return this;
}
/**
- * The EmbeddingModel engine to use.
+ * The host to connect to.
*
- * The option is a:
- * <code>dev.langchain4j.model.embedding.EmbeddingModel</code> type.
+ * The option is a: <code>java.lang.String</code> type.
*
+ * Default: localhost
* Group: producer
*
- * @param embeddingModel the value to set
+ * @param host the value to set
* @return the dsl builder
*/
- default LangchainEmbeddingsComponentBuilder embeddingModel(
- dev.langchain4j.model.embedding.EmbeddingModel embeddingModel) {
- doSetProperty("embeddingModel", embeddingModel);
+ default MilvusComponentBuilder host(java.lang.String host) {
+ doSetProperty("host", host);
return this;
}
/**
@@ -101,11 +100,54 @@ public interface LangchainEmbeddingsComponentBuilderFactory {
* @param lazyStartProducer the value to set
* @return the dsl builder
*/
- default LangchainEmbeddingsComponentBuilder lazyStartProducer(
+ default MilvusComponentBuilder lazyStartProducer(
boolean lazyStartProducer) {
doSetProperty("lazyStartProducer", lazyStartProducer);
return this;
}
+ /**
+ * The port to connect to.
+ *
+ * The option is a: <code>int</code> type.
+ *
+ * Default: 19530
+ * Group: producer
+ *
+ * @param port the value to set
+ * @return the dsl builder
+ */
+ default MilvusComponentBuilder port(int port) {
+ doSetProperty("port", port);
+ return this;
+ }
+ /**
+ * Sets a default timeout for all requests.
+ *
+ * The option is a: <code>long</code> type.
+ *
+ * Group: producer
+ *
+ * @param timeout the value to set
+ * @return the dsl builder
+ */
+ default MilvusComponentBuilder timeout(long timeout) {
+ doSetProperty("timeout", timeout);
+ return this;
+ }
+ /**
+ * Sets the API key to use for authentication.
+ *
+ * The option is a: <code>java.lang.String</code> type.
+ *
+ * Group: producer
+ *
+ * @param token the value to set
+ * @return the dsl builder
+ */
+ default MilvusComponentBuilder token(java.lang.String token) {
+ doSetProperty("token", token);
+ return this;
+ }
/**
* Whether autowiring is enabled. This is used for automatic autowiring
* options (the option must be marked as autowired) by looking up in the
@@ -122,26 +164,25 @@ public interface LangchainEmbeddingsComponentBuilderFactory {
* @param autowiredEnabled the value to set
* @return the dsl builder
*/
- default LangchainEmbeddingsComponentBuilder autowiredEnabled(
- boolean autowiredEnabled) {
+ default MilvusComponentBuilder autowiredEnabled(boolean autowiredEnabled) {
doSetProperty("autowiredEnabled", autowiredEnabled);
return this;
}
}
- class LangchainEmbeddingsComponentBuilderImpl
+ class MilvusComponentBuilderImpl
extends
- AbstractComponentBuilder<LangchainEmbeddingsComponent>
+ AbstractComponentBuilder<MilvusComponent>
implements
- LangchainEmbeddingsComponentBuilder {
+ MilvusComponentBuilder {
@Override
- protected LangchainEmbeddingsComponent buildConcreteComponent() {
- return new LangchainEmbeddingsComponent();
+ protected MilvusComponent buildConcreteComponent() {
+ return new MilvusComponent();
}
- private org.apache.camel.component.langchain.embeddings.LangchainEmbeddingsConfiguration getOrCreateConfiguration(
- org.apache.camel.component.langchain.embeddings.LangchainEmbeddingsComponent component) {
+ private org.apache.camel.component.milvus.MilvusConfiguration getOrCreateConfiguration(
+ org.apache.camel.component.milvus.MilvusComponent component) {
if (component.getConfiguration() == null) {
- component.setConfiguration(new org.apache.camel.component.langchain.embeddings.LangchainEmbeddingsConfiguration());
+ component.setConfiguration(new org.apache.camel.component.milvus.MilvusConfiguration());
}
return component.getConfiguration();
}
@@ -151,10 +192,13 @@ public interface LangchainEmbeddingsComponentBuilderFactory {
String name,
Object value) {
switch (name) {
- case "configuration": ((LangchainEmbeddingsComponent) component).setConfiguration((org.apache.camel.component.langchain.embeddings.LangchainEmbeddingsConfiguration) value); return true;
- case "embeddingModel": getOrCreateConfiguration((LangchainEmbeddingsComponent) component).setEmbeddingModel((dev.langchain4j.model.embedding.EmbeddingModel) value); return true;
- case "lazyStartProducer": ((LangchainEmbeddingsComponent) component).setLazyStartProducer((boolean) value); return true;
- case "autowiredEnabled": ((LangchainEmbeddingsComponent) component).setAutowiredEnabled((boolean) value); return true;
+ case "configuration": ((MilvusComponent) component).setConfiguration((org.apache.camel.component.milvus.MilvusConfiguration) value); return true;
+ case "host": getOrCreateConfiguration((MilvusComponent) component).setHost((java.lang.String) value); return true;
+ case "lazyStartProducer": ((MilvusComponent) component).setLazyStartProducer((boolean) value); return true;
+ case "port": getOrCreateConfiguration((MilvusComponent) component).setPort((int) value); return true;
+ case "timeout": getOrCreateConfiguration((MilvusComponent) component).setTimeout((long) value); return true;
+ case "token": getOrCreateConfiguration((MilvusComponent) component).setToken((java.lang.String) value); return true;
+ case "autowiredEnabled": ((MilvusComponent) component).setAutowiredEnabled((boolean) value); return true;
default: return false;
}
}
diff --git a/dsl/camel-componentdsl/src/generated/resources/metadata.json b/dsl/camel-componentdsl/src/generated/resources/metadata.json
index ac11caed7ad..9a632937ed2 100644
--- a/dsl/camel-componentdsl/src/generated/resources/metadata.json
+++ b/dsl/camel-componentdsl/src/generated/resources/metadata.json
@@ -4780,7 +4780,7 @@
"kind": "component",
"name": "langchain-embeddings",
"title": "Langchain4j Embeddings",
- "description": "Langchain4j Embeddings",
+ "description": "Perform operations on the Qdrant Vector Database.",
"deprecated": false,
"firstVersion": "4.5.0",
"label": "ai",
@@ -4788,7 +4788,7 @@
"supportLevel": "Preview",
"groupId": "org.apache.camel",
"artifactId": "camel-langchain-embeddings",
- "version": "4.5.0-SNAPSHOT",
+ "version": "4.4.0-SNAPSHOT",
"scheme": "langchain-embeddings",
"extendsScheme": "",
"syntax": "langchain-embeddings:embeddingId",
@@ -5052,6 +5052,29 @@
"lenientProperties": false,
"remote": false
},
+ "MilvusComponentBuilderFactory": {
+ "kind": "component",
+ "name": "milvus",
+ "title": "Milvus",
+ "description": "Perform operations on the Milvus Vector Database.",
+ "deprecated": false,
+ "firstVersion": "4.5.0",
+ "label": "database,ai",
+ "javaType": "org.apache.camel.component.milvus.MilvusComponent",
+ "supportLevel": "Preview",
+ "groupId": "org.apache.camel",
+ "artifactId": "camel-milvus",
+ "version": "4.5.0-SNAPSHOT",
+ "scheme": "milvus",
+ "extendsScheme": "",
+ "syntax": "milvus:collection",
+ "async": false,
+ "api": false,
+ "consumerOnly": false,
+ "producerOnly": true,
+ "lenientProperties": false,
+ "remote": true
+ },
"MinaComponentBuilderFactory": {
"kind": "component",
"name": "mina",
diff --git a/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/EndpointBuilderFactory.java b/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/EndpointBuilderFactory.java
index f249617f366..35fa8dc067d 100644
--- a/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/EndpointBuilderFactory.java
+++ b/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/EndpointBuilderFactory.java
@@ -229,6 +229,7 @@ public interface EndpointBuilderFactory
org.apache.camel.builder.endpoint.dsl.MasterEndpointBuilderFactory.MasterBuilders,
org.apache.camel.builder.endpoint.dsl.MetricsEndpointBuilderFactory.MetricsBuilders,
org.apache.camel.builder.endpoint.dsl.MicrometerEndpointBuilderFactory.MicrometerBuilders,
+ org.apache.camel.builder.endpoint.dsl.MilvusEndpointBuilderFactory.MilvusBuilders,
org.apache.camel.builder.endpoint.dsl.MinaEndpointBuilderFactory.MinaBuilders,
org.apache.camel.builder.endpoint.dsl.MinioEndpointBuilderFactory.MinioBuilders,
org.apache.camel.builder.endpoint.dsl.MllpEndpointBuilderFactory.MllpBuilders,
diff --git a/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/EndpointBuilders.java b/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/EndpointBuilders.java
index 2ed9a9de2e0..0ecf923ba8b 100644
--- a/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/EndpointBuilders.java
+++ b/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/EndpointBuilders.java
@@ -226,6 +226,7 @@ public interface EndpointBuilders
org.apache.camel.builder.endpoint.dsl.MasterEndpointBuilderFactory,
org.apache.camel.builder.endpoint.dsl.MetricsEndpointBuilderFactory,
org.apache.camel.builder.endpoint.dsl.MicrometerEndpointBuilderFactory,
+ org.apache.camel.builder.endpoint.dsl.MilvusEndpointBuilderFactory,
org.apache.camel.builder.endpoint.dsl.MinaEndpointBuilderFactory,
org.apache.camel.builder.endpoint.dsl.MinioEndpointBuilderFactory,
org.apache.camel.builder.endpoint.dsl.MllpEndpointBuilderFactory,
diff --git a/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/StaticEndpointBuilders.java b/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/StaticEndpointBuilders.java
index 9f7e0bc25a5..3261df8cff8 100644
--- a/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/StaticEndpointBuilders.java
+++ b/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/StaticEndpointBuilders.java
@@ -9831,7 +9831,7 @@ public class StaticEndpointBuilders {
}
/**
* Langchain4j Embeddings (camel-langchain-embeddings)
- * Langchain4j Embeddings
+ * Perform operations on the Qdrant Vector Database.
*
* Category: ai
* Since: 4.5
@@ -9851,7 +9851,7 @@ public class StaticEndpointBuilders {
}
/**
* Langchain4j Embeddings (camel-langchain-embeddings)
- * Langchain4j Embeddings
+ * Perform operations on the Qdrant Vector Database.
*
* Category: ai
* Since: 4.5
@@ -10449,6 +10449,49 @@ public class StaticEndpointBuilders {
String path) {
return org.apache.camel.builder.endpoint.dsl.MicrometerEndpointBuilderFactory.endpointBuilder(componentName, path);
}
+ /**
+ * Milvus (camel-milvus)
+ * Perform operations on the Milvus Vector Database.
+ *
+ * Category: database,ai
+ * Since: 4.5
+ * Maven coordinates: org.apache.camel:camel-milvus
+ *
+ * Syntax: <code>milvus:collection</code>
+ *
+ * Path parameter: collection (required)
+ * The collection Name
+ *
+ * @param path collection
+ * @return the dsl builder
+ */
+ public static org.apache.camel.builder.endpoint.dsl.MilvusEndpointBuilderFactory.MilvusEndpointBuilder milvus(
+ String path) {
+ return org.apache.camel.builder.endpoint.dsl.MilvusEndpointBuilderFactory.endpointBuilder("milvus", path);
+ }
+ /**
+ * Milvus (camel-milvus)
+ * Perform operations on the Milvus Vector Database.
+ *
+ * Category: database,ai
+ * Since: 4.5
+ * Maven coordinates: org.apache.camel:camel-milvus
+ *
+ * Syntax: <code>milvus:collection</code>
+ *
+ * Path parameter: collection (required)
+ * The collection Name
+ *
+ * @param componentName to use a custom component name for the endpoint
+ * instead of the default name
+ * @param path collection
+ * @return the dsl builder
+ */
+ public static org.apache.camel.builder.endpoint.dsl.MilvusEndpointBuilderFactory.MilvusEndpointBuilder milvus(
+ String componentName,
+ String path) {
+ return org.apache.camel.builder.endpoint.dsl.MilvusEndpointBuilderFactory.endpointBuilder(componentName, path);
+ }
/**
* Mina (camel-mina)
* Socket level networking using TCP or UDP with Apache Mina 2.x.
diff --git a/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/LangchainEmbeddingsEndpointBuilderFactory.java b/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/LangchainEmbeddingsEndpointBuilderFactory.java
index 217ecbaf597..1ac10e080e8 100644
--- a/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/LangchainEmbeddingsEndpointBuilderFactory.java
+++ b/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/LangchainEmbeddingsEndpointBuilderFactory.java
@@ -26,7 +26,7 @@ import org.apache.camel.builder.EndpointProducerBuilder;
import org.apache.camel.builder.endpoint.AbstractEndpointBuilder;
/**
- * Langchain4j Embeddings
+ * Perform operations on the Qdrant Vector Database.
*
* Generated by camel build tools - do NOT edit this file!
*/
@@ -142,7 +142,7 @@ public interface LangchainEmbeddingsEndpointBuilderFactory {
public interface LangchainEmbeddingsBuilders {
/**
* Langchain4j Embeddings (camel-langchain-embeddings)
- * Langchain4j Embeddings
+ * Perform operations on the Qdrant Vector Database.
*
* Category: ai
* Since: 4.5
@@ -155,7 +155,7 @@ public interface LangchainEmbeddingsEndpointBuilderFactory {
}
/**
* Langchain4j Embeddings (camel-langchain-embeddings)
- * Langchain4j Embeddings
+ * Perform operations on the Qdrant Vector Database.
*
* Category: ai
* Since: 4.5
@@ -175,7 +175,7 @@ public interface LangchainEmbeddingsEndpointBuilderFactory {
}
/**
* Langchain4j Embeddings (camel-langchain-embeddings)
- * Langchain4j Embeddings
+ * Perform operations on the Qdrant Vector Database.
*
* Category: ai
* Since: 4.5
diff --git a/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/MilvusEndpointBuilderFactory.java b/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/MilvusEndpointBuilderFactory.java
new file mode 100644
index 00000000000..d4858253847
--- /dev/null
+++ b/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/MilvusEndpointBuilderFactory.java
@@ -0,0 +1,390 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.camel.builder.endpoint.dsl;
+
+import java.util.*;
+import java.util.concurrent.*;
+import java.util.function.*;
+import java.util.stream.*;
+import javax.annotation.processing.Generated;
+import org.apache.camel.builder.EndpointConsumerBuilder;
+import org.apache.camel.builder.EndpointProducerBuilder;
+import org.apache.camel.builder.endpoint.AbstractEndpointBuilder;
+
+/**
+ * Perform operations on the Milvus Vector Database.
+ *
+ * Generated by camel build tools - do NOT edit this file!
+ */
+@Generated("org.apache.camel.maven.packaging.EndpointDslMojo")
+public interface MilvusEndpointBuilderFactory {
+
+
+ /**
+ * Builder for endpoint for the Milvus component.
+ */
+ public interface MilvusEndpointBuilder extends EndpointProducerBuilder {
+ default AdvancedMilvusEndpointBuilder advanced() {
+ return (AdvancedMilvusEndpointBuilder) this;
+ }
+ /**
+ * The host to connect to.
+ *
+ * The option is a: <code>java.lang.String</code> type.
+ *
+ * Default: localhost
+ * Group: producer
+ *
+ * @param host the value to set
+ * @return the dsl builder
+ */
+ default MilvusEndpointBuilder host(String host) {
+ doSetProperty("host", host);
+ return this;
+ }
+ /**
+ * The port to connect to.
+ *
+ * The option is a: <code>int</code> type.
+ *
+ * Default: 19530
+ * Group: producer
+ *
+ * @param port the value to set
+ * @return the dsl builder
+ */
+ default MilvusEndpointBuilder port(int port) {
+ doSetProperty("port", port);
+ return this;
+ }
+ /**
+ * The port to connect to.
+ *
+ * The option will be converted to a <code>int</code> type.
+ *
+ * Default: 19530
+ * Group: producer
+ *
+ * @param port the value to set
+ * @return the dsl builder
+ */
+ default MilvusEndpointBuilder port(String port) {
+ doSetProperty("port", port);
+ return this;
+ }
+ /**
+ * Sets a default timeout for all requests.
+ *
+ * The option is a: <code>long</code> type.
+ *
+ * Group: producer
+ *
+ * @param timeout the value to set
+ * @return the dsl builder
+ */
+ default MilvusEndpointBuilder timeout(long timeout) {
+ doSetProperty("timeout", timeout);
+ return this;
+ }
+ /**
+ * Sets a default timeout for all requests.
+ *
+ * The option will be converted to a <code>long</code> type.
+ *
+ * Group: producer
+ *
+ * @param timeout the value to set
+ * @return the dsl builder
+ */
+ default MilvusEndpointBuilder timeout(String timeout) {
+ doSetProperty("timeout", timeout);
+ return this;
+ }
+ /**
+ * Sets the API key to use for authentication.
+ *
+ * The option is a: <code>java.lang.String</code> type.
+ *
+ * Group: producer
+ *
+ * @param token the value to set
+ * @return the dsl builder
+ */
+ default MilvusEndpointBuilder token(String token) {
+ doSetProperty("token", token);
+ return this;
+ }
+ }
+
+ /**
+ * Advanced builder for endpoint for the Milvus component.
+ */
+ public interface AdvancedMilvusEndpointBuilder
+ extends
+ EndpointProducerBuilder {
+ default MilvusEndpointBuilder basic() {
+ return (MilvusEndpointBuilder) this;
+ }
+ /**
+ * 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 during
+ * starting and cause the route to fail being started. By deferring this
+ * startup to be lazy then the startup failure can be handled during
+ * routing messages via Camel's routing error handlers. Beware that when
+ * the first message is processed then creating and starting the
+ * producer may take a little time and prolong the total processing time
+ * of the processing.
+ *
+ * The option is a: <code>boolean</code> type.
+ *
+ * Default: false
+ * Group: producer (advanced)
+ *
+ * @param lazyStartProducer the value to set
+ * @return the dsl builder
+ */
+ default AdvancedMilvusEndpointBuilder lazyStartProducer(
+ boolean lazyStartProducer) {
+ doSetProperty("lazyStartProducer", lazyStartProducer);
+ return this;
+ }
+ /**
+ * 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 during
+ * starting and cause the route to fail being started. By deferring this
+ * startup to be lazy then the startup failure can be handled during
+ * routing messages via Camel's routing error handlers. Beware that when
+ * the first message is processed then creating and starting the
+ * producer may take a little time and prolong the total processing time
+ * of the processing.
+ *
+ * The option will be converted to a <code>boolean</code>
+ * type.
+ *
+ * Default: false
+ * Group: producer (advanced)
+ *
+ * @param lazyStartProducer the value to set
+ * @return the dsl builder
+ */
+ default AdvancedMilvusEndpointBuilder lazyStartProducer(
+ String lazyStartProducer) {
+ doSetProperty("lazyStartProducer", lazyStartProducer);
+ return this;
+ }
+ }
+
+ public interface MilvusBuilders {
+ /**
+ * Milvus (camel-milvus)
+ * Perform operations on the Milvus Vector Database.
+ *
+ * Category: database,ai
+ * Since: 4.5
+ * Maven coordinates: org.apache.camel:camel-milvus
+ *
+ * @return the dsl builder for the headers' name.
+ */
+ default MilvusHeaderNameBuilder milvus() {
+ return MilvusHeaderNameBuilder.INSTANCE;
+ }
+ /**
+ * Milvus (camel-milvus)
+ * Perform operations on the Milvus Vector Database.
+ *
+ * Category: database,ai
+ * Since: 4.5
+ * Maven coordinates: org.apache.camel:camel-milvus
+ *
+ * Syntax: <code>milvus:collection</code>
+ *
+ * Path parameter: collection (required)
+ * The collection Name
+ *
+ * @param path collection
+ * @return the dsl builder
+ */
+ default MilvusEndpointBuilder milvus(String path) {
+ return MilvusEndpointBuilderFactory.endpointBuilder("milvus", path);
+ }
+ /**
+ * Milvus (camel-milvus)
+ * Perform operations on the Milvus Vector Database.
+ *
+ * Category: database,ai
+ * Since: 4.5
+ * Maven coordinates: org.apache.camel:camel-milvus
+ *
+ * Syntax: <code>milvus:collection</code>
+ *
+ * Path parameter: collection (required)
+ * The collection Name
+ *
+ * @param componentName to use a custom component name for the endpoint
+ * instead of the default name
+ * @param path collection
+ * @return the dsl builder
+ */
+ default MilvusEndpointBuilder milvus(String componentName, String path) {
+ return MilvusEndpointBuilderFactory.endpointBuilder(componentName, path);
+ }
+ }
+
+ /**
+ * The builder of headers' name for the Milvus component.
+ */
+ public static class MilvusHeaderNameBuilder {
+ /**
+ * The internal instance of the builder used to access to all the
+ * methods representing the name of headers.
+ */
+ private static final MilvusHeaderNameBuilder INSTANCE = new MilvusHeaderNameBuilder();
+
+ /**
+ * The action to be performed.
+ *
+ * The option is a: {@code String} type.
+ *
+ * Group: producer
+ *
+ * @return the name of the header {@code MilvusAction}.
+ */
+ public String milvusAction() {
+ return "CamelMilvusAction";
+ }
+
+ /**
+ * Payload Selector.
+ *
+ * The option is a: {@code
+ * io.qdrant.client.grpc.Points$WithPayloadSelector} type.
+ *
+ * Group: producer
+ *
+ * @return the name of the header {@code MilvusPointsPayloadSelector}.
+ */
+ public String milvusPointsPayloadSelector() {
+ return "CamelMilvusPointsPayloadSelector";
+ }
+
+ /**
+ * Operation ID.
+ *
+ * The option is a: {@code long} type.
+ *
+ * Group: producer
+ *
+ * @return the name of the header {@code MilvusOperationID}.
+ */
+ public String milvusOperationID() {
+ return "CamelMilvusOperationID";
+ }
+
+ /**
+ * Operation Status.
+ *
+ * The option is a: {@code String} type.
+ *
+ * Group: producer
+ *
+ * @return the name of the header {@code MilvusOperationStatus}.
+ */
+ public String milvusOperationStatus() {
+ return "CamelMilvusOperationStatus";
+ }
+
+ /**
+ * Operation Status Value.
+ *
+ * The option is a: {@code int} type.
+ *
+ * Group: producer
+ *
+ * @return the name of the header {@code MilvusOperationStatusValue}.
+ */
+ public String milvusOperationStatusValue() {
+ return "CamelMilvusOperationStatusValue";
+ }
+
+ /**
+ * Read Consistency.
+ *
+ * The option is a: {@code io.qdrant.client.grpc.Points$ReadConsistency}
+ * type.
+ *
+ * Group: producer
+ *
+ * @return the name of the header {@code MilvusReadConsistency}.
+ */
+ public String milvusReadConsistency() {
+ return "CamelMilvusReadConsistency";
+ }
+
+ /**
+ * Include Payload.
+ *
+ * The option is a: {@code boolean} type.
+ *
+ * Default: true
+ * Group: producer
+ *
+ * @return the name of the header {@code MilvusWithPayload}.
+ */
+ public String milvusWithPayload() {
+ return "CamelMilvusWithPayload";
+ }
+
+ /**
+ * Include Vectors.
+ *
+ * The option is a: {@code boolean} type.
+ *
+ * Default: false
+ * Group: producer
+ *
+ * @return the name of the header {@code MilvusWithVectors}.
+ */
+ public String milvusWithVectors() {
+ return "CamelMilvusWithVectors";
+ }
+
+ /**
+ * The number of elements.
+ *
+ * The option is a: {@code int} type.
+ *
+ * Group: producer
+ *
+ * @return the name of the header {@code MilvusSize}.
+ */
+ public String milvusSize() {
+ return "CamelMilvusSize";
+ }
+ }
+ static MilvusEndpointBuilder endpointBuilder(
+ String componentName,
+ String path) {
+ class MilvusEndpointBuilderImpl extends AbstractEndpointBuilder implements MilvusEndpointBuilder, AdvancedMilvusEndpointBuilder {
+ public MilvusEndpointBuilderImpl(String path) {
+ super(componentName, path);
+ }
+ }
+ return new MilvusEndpointBuilderImpl(path);
+ }
+}
\ No newline at end of file
diff --git a/dsl/camel-kamelet-main/src/generated/resources/camel-component-known-dependencies.properties b/dsl/camel-kamelet-main/src/generated/resources/camel-component-known-dependencies.properties
index 0c7fdbf2263..322e5efc6f2 100644
--- a/dsl/camel-kamelet-main/src/generated/resources/camel-component-known-dependencies.properties
+++ b/dsl/camel-kamelet-main/src/generated/resources/camel-component-known-dependencies.properties
@@ -228,6 +228,7 @@ org.apache.camel.component.mapstruct.MapstructComponent=camel:mapstruct
org.apache.camel.component.master.MasterComponent=camel:master
org.apache.camel.component.metrics.MetricsComponent=camel:metrics
org.apache.camel.component.micrometer.MicrometerComponent=camel:micrometer
+org.apache.camel.component.milvus.MilvusComponent=camel:milvus
org.apache.camel.component.mina.MinaComponent=camel:mina
org.apache.camel.component.minio.MinioComponent=camel:minio
org.apache.camel.component.mllp.MllpComponent=camel:mllp
diff --git a/dsl/camel-kotlin-api/src/generated/kotlin/org/apache/camel/kotlin/components/LangchainEmbeddingsUriDsl.kt b/dsl/camel-kotlin-api/src/generated/kotlin/org/apache/camel/kotlin/components/LangchainEmbeddingsUriDsl.kt
index b51c421f77e..696248a9249 100644
--- a/dsl/camel-kotlin-api/src/generated/kotlin/org/apache/camel/kotlin/components/LangchainEmbeddingsUriDsl.kt
+++ b/dsl/camel-kotlin-api/src/generated/kotlin/org/apache/camel/kotlin/components/LangchainEmbeddingsUriDsl.kt
@@ -23,7 +23,7 @@ import org.apache.camel.kotlin.CamelDslMarker
import org.apache.camel.kotlin.UriDsl
/**
- * Langchain4j Embeddings
+ * Perform operations on the Qdrant Vector Database.
*/
public fun UriDsl.`langchain-embeddings`(i: LangchainEmbeddingsUriDsl.() -> Unit) {
LangchainEmbeddingsUriDsl(this).apply(i)
diff --git a/dsl/camel-kotlin-api/src/generated/kotlin/org/apache/camel/kotlin/components/LangchainEmbeddingsUriDsl.kt b/dsl/camel-kotlin-api/src/generated/kotlin/org/apache/camel/kotlin/components/MilvusUriDsl.kt
similarity index 69%
copy from dsl/camel-kotlin-api/src/generated/kotlin/org/apache/camel/kotlin/components/LangchainEmbeddingsUriDsl.kt
copy to dsl/camel-kotlin-api/src/generated/kotlin/org/apache/camel/kotlin/components/MilvusUriDsl.kt
index b51c421f77e..06e52f30146 100644
--- a/dsl/camel-kotlin-api/src/generated/kotlin/org/apache/camel/kotlin/components/LangchainEmbeddingsUriDsl.kt
+++ b/dsl/camel-kotlin-api/src/generated/kotlin/org/apache/camel/kotlin/components/MilvusUriDsl.kt
@@ -17,44 +17,80 @@
package org.apache.camel.kotlin.components
import kotlin.Boolean
+import kotlin.Int
import kotlin.String
import kotlin.Unit
import org.apache.camel.kotlin.CamelDslMarker
import org.apache.camel.kotlin.UriDsl
/**
- * Langchain4j Embeddings
+ * Perform operations on the Milvus Vector Database.
*/
-public fun UriDsl.`langchain-embeddings`(i: LangchainEmbeddingsUriDsl.() -> Unit) {
- LangchainEmbeddingsUriDsl(this).apply(i)
+public fun UriDsl.milvus(i: MilvusUriDsl.() -> Unit) {
+ MilvusUriDsl(this).apply(i)
}
@CamelDslMarker
-public class LangchainEmbeddingsUriDsl(
+public class MilvusUriDsl(
it: UriDsl,
) {
private val it: UriDsl
init {
this.it = it
- this.it.component("langchain-embeddings")
+ this.it.component("milvus")
}
- private var embeddingId: String = ""
+ private var collection: String = ""
/**
- * The id
+ * The collection Name
*/
- public fun embeddingId(embeddingId: String) {
- this.embeddingId = embeddingId
- it.url("$embeddingId")
+ public fun collection(collection: String) {
+ this.collection = collection
+ it.url("$collection")
}
/**
- * The EmbeddingModel engine to use.
+ * The host to connect to.
*/
- public fun embeddingModel(embeddingModel: String) {
- it.property("embeddingModel", embeddingModel)
+ public fun host(host: String) {
+ it.property("host", host)
+ }
+
+ /**
+ * The port to connect to.
+ */
+ public fun port(port: String) {
+ it.property("port", port)
+ }
+
+ /**
+ * The port to connect to.
+ */
+ public fun port(port: Int) {
+ it.property("port", port.toString())
+ }
+
+ /**
+ * Sets a default timeout for all requests
+ */
+ public fun timeout(timeout: String) {
+ it.property("timeout", timeout)
+ }
+
+ /**
+ * Sets a default timeout for all requests
+ */
+ public fun timeout(timeout: Int) {
+ it.property("timeout", timeout.toString())
+ }
+
+ /**
+ * Sets the API key to use for authentication
+ */
+ public fun token(token: String) {
+ it.property("token", token)
}
/**