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 <anco...@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 <anco...@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) } /**