This is an automated email from the ASF dual-hosted git repository. davsclaus pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/main by this push: new 7ca1234da06 Regen 7ca1234da06 is described below commit 7ca1234da06b8b4d5e4d108d40267c9768b70abe Author: Claus Ibsen <claus.ib...@gmail.com> AuthorDate: Mon Nov 6 10:17:08 2023 +0100 Regen --- .../component/ComponentsBuilderFactory.java | 15 + .../AzureStorageBlobComponentBuilderFactory.java | 17 + .../component/dsl/SmbComponentBuilderFactory.java | 149 +++++ .../src/generated/resources/metadata.json | 22 + .../builder/endpoint/EndpointBuilderFactory.java | 1 + .../camel/builder/endpoint/EndpointBuilders.java | 1 + .../builder/endpoint/StaticEndpointBuilders.java | 67 +- .../endpoint/dsl/SmbEndpointBuilderFactory.java | 708 +++++++++++++++++++++ 8 files changed, 974 insertions(+), 6 deletions(-) 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 47dd4a65f45..2c9f842afb3 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 @@ -3667,6 +3667,21 @@ public interface ComponentsBuilderFactory { static org.apache.camel.builder.component.dsl.SlackComponentBuilderFactory.SlackComponentBuilder slack() { return org.apache.camel.builder.component.dsl.SlackComponentBuilderFactory.slack(); } + /** + * SMB (camel-smb) + * SMB component which consumes natively from file shares using the Server + * Message Block (SMB, also known as Common Internet File System - CIFS) + * protocol + * + * Category: file + * Since: 4.2.0-SNAPSHOT + * Maven coordinates: org.apache.camel:camel-smb + * + * @return the dsl builder + */ + static org.apache.camel.builder.component.dsl.SmbComponentBuilderFactory.SmbComponentBuilder smb() { + return org.apache.camel.builder.component.dsl.SmbComponentBuilderFactory.smb(); + } /** * SMPP (camel-smpp) * Send and receive SMS messages using a SMSC (Short Message Service diff --git a/dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/AzureStorageBlobComponentBuilderFactory.java b/dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/AzureStorageBlobComponentBuilderFactory.java index 247b3c18201..5cdf17c1316 100644 --- a/dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/AzureStorageBlobComponentBuilderFactory.java +++ b/dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/AzureStorageBlobComponentBuilderFactory.java @@ -265,6 +265,22 @@ public interface AzureStorageBlobComponentBuilderFactory { doSetProperty("regex", regex); return this; } + /** + * In case of usage of Shared Access Signature we'll need to set a SAS + * Token. + * + * The option is a: <code>java.lang.String</code> type. + * + * Group: common + * + * @param sasToken the value to set + * @return the dsl builder + */ + default AzureStorageBlobComponentBuilder sasToken( + java.lang.String sasToken) { + doSetProperty("sasToken", sasToken); + return this; + } /** * Client to a storage account. This client does not hold any state * about a particular storage account but is instead a convenient way of @@ -695,6 +711,7 @@ public interface AzureStorageBlobComponentBuilderFactory { case "maxRetryRequests": getOrCreateConfiguration((BlobComponent) component).setMaxRetryRequests((int) value); return true; case "prefix": getOrCreateConfiguration((BlobComponent) component).setPrefix((java.lang.String) value); return true; case "regex": getOrCreateConfiguration((BlobComponent) component).setRegex((java.lang.String) value); return true; + case "sasToken": getOrCreateConfiguration((BlobComponent) component).setSasToken((java.lang.String) value); return true; case "serviceClient": getOrCreateConfiguration((BlobComponent) component).setServiceClient((com.azure.storage.blob.BlobServiceClient) value); return true; case "timeout": getOrCreateConfiguration((BlobComponent) component).setTimeout((java.time.Duration) value); return true; case "bridgeErrorHandler": ((BlobComponent) component).setBridgeErrorHandler((boolean) value); return true; diff --git a/dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/SmbComponentBuilderFactory.java b/dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/SmbComponentBuilderFactory.java new file mode 100644 index 00000000000..c689d221e75 --- /dev/null +++ b/dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/SmbComponentBuilderFactory.java @@ -0,0 +1,149 @@ +/* + * 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.component.dsl; + +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.smb.SmbComponent; + +/** + * SMB component which consumes natively from file shares using the Server + * Message Block (SMB, also known as Common Internet File System - CIFS) + * protocol + * + * Generated by camel-package-maven-plugin - do not edit this file! + */ +@Generated("org.apache.camel.maven.packaging.ComponentDslMojo") +public interface SmbComponentBuilderFactory { + + /** + * SMB (camel-smb) + * SMB component which consumes natively from file shares using the Server + * Message Block (SMB, also known as Common Internet File System - CIFS) + * protocol + * + * Category: file + * Since: 4.2.0-SNAPSHOT + * Maven coordinates: org.apache.camel:camel-smb + * + * @return the dsl builder + */ + static SmbComponentBuilder smb() { + return new SmbComponentBuilderImpl(); + } + + /** + * Builder for the SMB component. + */ + interface SmbComponentBuilder extends ComponentBuilder<SmbComponent> { + /** + * Allows for bridging the consumer to the Camel routing Error Handler, + * which mean any exceptions (if possible) occurred while the Camel + * consumer is trying to pickup incoming messages, or the likes, will + * now be processed as a message and handled by the routing Error + * Handler. Important: This is only possible if the 3rd party component + * allows Camel to be alerted if an exception was thrown. Some + * components handle this internally only, and therefore + * bridgeErrorHandler is not possible. In other situations we may + * improve the Camel component to hook into the 3rd party component and + * make this possible for future releases. By default the consumer will + * use the org.apache.camel.spi.ExceptionHandler to deal with + * exceptions, that will be logged at WARN or ERROR level and ignored. + * + * The option is a: <code>boolean</code> type. + * + * Default: false + * Group: consumer + * + * @param bridgeErrorHandler the value to set + * @return the dsl builder + */ + default SmbComponentBuilder bridgeErrorHandler( + boolean bridgeErrorHandler) { + doSetProperty("bridgeErrorHandler", bridgeErrorHandler); + 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 is a: <code>boolean</code> type. + * + * Default: false + * Group: producer + * + * @param lazyStartProducer the value to set + * @return the dsl builder + */ + default SmbComponentBuilder lazyStartProducer(boolean lazyStartProducer) { + doSetProperty("lazyStartProducer", lazyStartProducer); + 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 + * registry to find if there is a single instance of matching type, + * which then gets configured on the component. This can be used for + * automatic configuring JDBC data sources, JMS connection factories, + * AWS Clients, etc. + * + * The option is a: <code>boolean</code> type. + * + * Default: true + * Group: advanced + * + * @param autowiredEnabled the value to set + * @return the dsl builder + */ + default SmbComponentBuilder autowiredEnabled(boolean autowiredEnabled) { + doSetProperty("autowiredEnabled", autowiredEnabled); + return this; + } + } + + class SmbComponentBuilderImpl + extends + AbstractComponentBuilder<SmbComponent> + implements + SmbComponentBuilder { + @Override + protected SmbComponent buildConcreteComponent() { + return new SmbComponent(); + } + @Override + protected boolean setPropertyOnComponent( + Component component, + String name, + Object value) { + switch (name) { + case "bridgeErrorHandler": ((SmbComponent) component).setBridgeErrorHandler((boolean) value); return true; + case "lazyStartProducer": ((SmbComponent) component).setLazyStartProducer((boolean) value); return true; + case "autowiredEnabled": ((SmbComponent) component).setAutowiredEnabled((boolean) value); return true; + default: return false; + } + } + } +} \ No newline at end of file diff --git a/dsl/camel-componentdsl/src/generated/resources/metadata.json b/dsl/camel-componentdsl/src/generated/resources/metadata.json index 0c3092bf64e..ed1ec93dc0b 100644 --- a/dsl/camel-componentdsl/src/generated/resources/metadata.json +++ b/dsl/camel-componentdsl/src/generated/resources/metadata.json @@ -6053,6 +6053,28 @@ "producerOnly": false, "lenientProperties": false }, + "SmbComponentBuilderFactory": { + "kind": "component", + "name": "smb", + "title": "SMB", + "description": "SMB component which consumes natively from file shares using the Server Message Block (SMB, also known as Common Internet File System - CIFS) protocol", + "deprecated": false, + "firstVersion": "4.2.0-SNAPSHOT", + "label": "file", + "javaType": "org.apache.camel.component.smb.SmbComponent", + "supportLevel": "Preview", + "groupId": "org.apache.camel", + "artifactId": "camel-smb", + "version": "4.2.0-SNAPSHOT", + "scheme": "smb", + "extendsScheme": "", + "syntax": "smb:hostname:port", + "async": false, + "api": false, + "consumerOnly": false, + "producerOnly": false, + "lenientProperties": false + }, "SmppComponentBuilderFactory": { "kind": "component", "name": "smpp", 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 4c905af87c1..81fd90bf00e 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 @@ -288,6 +288,7 @@ public interface EndpointBuilderFactory org.apache.camel.builder.endpoint.dsl.Sjms2EndpointBuilderFactory.Sjms2Builders, org.apache.camel.builder.endpoint.dsl.SjmsEndpointBuilderFactory.SjmsBuilders, org.apache.camel.builder.endpoint.dsl.SlackEndpointBuilderFactory.SlackBuilders, + org.apache.camel.builder.endpoint.dsl.SmbEndpointBuilderFactory.SmbBuilders, org.apache.camel.builder.endpoint.dsl.SmppEndpointBuilderFactory.SmppBuilders, org.apache.camel.builder.endpoint.dsl.SnmpEndpointBuilderFactory.SnmpBuilders, org.apache.camel.builder.endpoint.dsl.Sns2EndpointBuilderFactory.Sns2Builders, 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 fa9b03481c6..a28dcd0c3c0 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 @@ -285,6 +285,7 @@ public interface EndpointBuilders org.apache.camel.builder.endpoint.dsl.Sjms2EndpointBuilderFactory, org.apache.camel.builder.endpoint.dsl.SjmsEndpointBuilderFactory, org.apache.camel.builder.endpoint.dsl.SlackEndpointBuilderFactory, + org.apache.camel.builder.endpoint.dsl.SmbEndpointBuilderFactory, org.apache.camel.builder.endpoint.dsl.SmppEndpointBuilderFactory, org.apache.camel.builder.endpoint.dsl.SnmpEndpointBuilderFactory, org.apache.camel.builder.endpoint.dsl.Sns2EndpointBuilderFactory, 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 de1761fd65c..56e0a876b84 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 @@ -1827,9 +1827,6 @@ public class StaticEndpointBuilders { * Path parameter: containerName * The blob container name * - * Path parameter: sasToken - * In case of usage of Shared Access Signature we'll need to set a SAS Token - * * @param path accountName/containerName * @return the dsl builder */ @@ -1853,9 +1850,6 @@ public class StaticEndpointBuilders { * Path parameter: containerName * The blob container name * - * Path parameter: sasToken - * In case of usage of Shared Access Signature we'll need to set a SAS Token - * * @param componentName to use a custom component name for the endpoint * instead of the default name * @param path accountName/containerName @@ -13030,6 +13024,67 @@ public class StaticEndpointBuilders { String path) { return org.apache.camel.builder.endpoint.dsl.SlackEndpointBuilderFactory.endpointBuilder(componentName, path); } + /** + * SMB (camel-smb) + * SMB component which consumes natively from file shares using the Server + * Message Block (SMB, also known as Common Internet File System - CIFS) + * protocol + * + * Category: file + * Since: 4.2.0-SNAPSHOT + * Maven coordinates: org.apache.camel:camel-smb + * + * Syntax: <code>smb:hostname:port</code> + * + * Path parameter: hostname (required) + * The share name or IP address + * + * Path parameter: port + * The share port + * Default value: 445 + * + * Path parameter: shareName + * The share path + * + * @param path hostname:port + * @return the dsl builder + */ + public static org.apache.camel.builder.endpoint.dsl.SmbEndpointBuilderFactory.SmbEndpointBuilder smb( + String path) { + return org.apache.camel.builder.endpoint.dsl.SmbEndpointBuilderFactory.endpointBuilder("smb", path); + } + /** + * SMB (camel-smb) + * SMB component which consumes natively from file shares using the Server + * Message Block (SMB, also known as Common Internet File System - CIFS) + * protocol + * + * Category: file + * Since: 4.2.0-SNAPSHOT + * Maven coordinates: org.apache.camel:camel-smb + * + * Syntax: <code>smb:hostname:port</code> + * + * Path parameter: hostname (required) + * The share name or IP address + * + * Path parameter: port + * The share port + * Default value: 445 + * + * Path parameter: shareName + * The share path + * + * @param componentName to use a custom component name for the endpoint + * instead of the default name + * @param path hostname:port + * @return the dsl builder + */ + public static org.apache.camel.builder.endpoint.dsl.SmbEndpointBuilderFactory.SmbEndpointBuilder smb( + String componentName, + String path) { + return org.apache.camel.builder.endpoint.dsl.SmbEndpointBuilderFactory.endpointBuilder(componentName, path); + } /** * SMPP (camel-smpp) * Send and receive SMS messages using a SMSC (Short Message Service diff --git a/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/SmbEndpointBuilderFactory.java b/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/SmbEndpointBuilderFactory.java new file mode 100644 index 00000000000..848e8b99218 --- /dev/null +++ b/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/SmbEndpointBuilderFactory.java @@ -0,0 +1,708 @@ +/* + * 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; + +/** + * SMB component which consumes natively from file shares using the Server + * Message Block (SMB, also known as Common Internet File System - CIFS) + * protocol + * + * Generated by camel build tools - do NOT edit this file! + */ +@Generated("org.apache.camel.maven.packaging.EndpointDslMojo") +public interface SmbEndpointBuilderFactory { + + + /** + * Builder for endpoint consumers for the SMB component. + */ + public interface SmbEndpointConsumerBuilder + extends + EndpointConsumerBuilder { + default AdvancedSmbEndpointConsumerBuilder advanced() { + return (AdvancedSmbEndpointConsumerBuilder) this; + } + /** + * The user domain. + * + * The option is a: <code>java.lang.String</code> type. + * + * Group: common + * + * @param domain the value to set + * @return the dsl builder + */ + default SmbEndpointConsumerBuilder domain(String domain) { + doSetProperty("domain", domain); + return this; + } + /** + * The password to access the share. + * + * The option is a: <code>java.lang.String</code> type. + * + * Group: common + * + * @param password the value to set + * @return the dsl builder + */ + default SmbEndpointConsumerBuilder password(String password) { + doSetProperty("password", password); + return this; + } + /** + * The path, within the share, to consume the files from. + * + * The option is a: <code>java.lang.String</code> type. + * + * Required: true + * Group: common + * + * @param path the value to set + * @return the dsl builder + */ + default SmbEndpointConsumerBuilder path(String path) { + doSetProperty("path", path); + return this; + } + /** + * The search pattern used to list the files. + * + * The option is a: <code>java.lang.String</code> type. + * + * Default: *.txt + * Group: common + * + * @param searchPattern the value to set + * @return the dsl builder + */ + default SmbEndpointConsumerBuilder searchPattern(String searchPattern) { + doSetProperty("searchPattern", searchPattern); + return this; + } + /** + * An optional SMB I/O bean to use to setup the file access attributes + * when reading/writing a file. + * + * The option is a: + * <code>org.apache.camel.component.smb.SmbIOBean</code> + * type. + * + * Group: common + * + * @param smbIoBean the value to set + * @return the dsl builder + */ + default SmbEndpointConsumerBuilder smbIoBean( + org.apache.camel.component.smb.SmbIOBean smbIoBean) { + doSetProperty("smbIoBean", smbIoBean); + return this; + } + /** + * An optional SMB I/O bean to use to setup the file access attributes + * when reading/writing a file. + * + * The option will be converted to a + * <code>org.apache.camel.component.smb.SmbIOBean</code> + * type. + * + * Group: common + * + * @param smbIoBean the value to set + * @return the dsl builder + */ + default SmbEndpointConsumerBuilder smbIoBean(String smbIoBean) { + doSetProperty("smbIoBean", smbIoBean); + return this; + } + /** + * The username required to access the share. + * + * The option is a: <code>java.lang.String</code> type. + * + * Group: common + * + * @param username the value to set + * @return the dsl builder + */ + default SmbEndpointConsumerBuilder username(String username) { + doSetProperty("username", username); + return this; + } + /** + * A pluggable repository org.apache.camel.spi.IdempotentRepository + * which by default use MemoryIdempotentRepository if none is specified + * and idempotent is true. + * + * The option is a: + * <code>org.apache.camel.spi.IdempotentRepository</code> + * type. + * + * Group: consumer + * + * @param idempotentRepository the value to set + * @return the dsl builder + */ + default SmbEndpointConsumerBuilder idempotentRepository( + org.apache.camel.spi.IdempotentRepository idempotentRepository) { + doSetProperty("idempotentRepository", idempotentRepository); + return this; + } + /** + * A pluggable repository org.apache.camel.spi.IdempotentRepository + * which by default use MemoryIdempotentRepository if none is specified + * and idempotent is true. + * + * The option will be converted to a + * <code>org.apache.camel.spi.IdempotentRepository</code> + * type. + * + * Group: consumer + * + * @param idempotentRepository the value to set + * @return the dsl builder + */ + default SmbEndpointConsumerBuilder idempotentRepository( + String idempotentRepository) { + doSetProperty("idempotentRepository", idempotentRepository); + return this; + } + } + + /** + * Advanced builder for endpoint consumers for the SMB component. + */ + public interface AdvancedSmbEndpointConsumerBuilder + extends + EndpointConsumerBuilder { + default SmbEndpointConsumerBuilder basic() { + return (SmbEndpointConsumerBuilder) this; + } + /** + * Allows for bridging the consumer to the Camel routing Error Handler, + * which mean any exceptions (if possible) occurred while the Camel + * consumer is trying to pickup incoming messages, or the likes, will + * now be processed as a message and handled by the routing Error + * Handler. Important: This is only possible if the 3rd party component + * allows Camel to be alerted if an exception was thrown. Some + * components handle this internally only, and therefore + * bridgeErrorHandler is not possible. In other situations we may + * improve the Camel component to hook into the 3rd party component and + * make this possible for future releases. By default the consumer will + * use the org.apache.camel.spi.ExceptionHandler to deal with + * exceptions, that will be logged at WARN or ERROR level and ignored. + * + * The option is a: <code>boolean</code> type. + * + * Default: false + * Group: consumer (advanced) + * + * @param bridgeErrorHandler the value to set + * @return the dsl builder + */ + default AdvancedSmbEndpointConsumerBuilder bridgeErrorHandler( + boolean bridgeErrorHandler) { + doSetProperty("bridgeErrorHandler", bridgeErrorHandler); + return this; + } + /** + * Allows for bridging the consumer to the Camel routing Error Handler, + * which mean any exceptions (if possible) occurred while the Camel + * consumer is trying to pickup incoming messages, or the likes, will + * now be processed as a message and handled by the routing Error + * Handler. Important: This is only possible if the 3rd party component + * allows Camel to be alerted if an exception was thrown. Some + * components handle this internally only, and therefore + * bridgeErrorHandler is not possible. In other situations we may + * improve the Camel component to hook into the 3rd party component and + * make this possible for future releases. By default the consumer will + * use the org.apache.camel.spi.ExceptionHandler to deal with + * exceptions, that will be logged at WARN or ERROR level and ignored. + * + * The option will be converted to a <code>boolean</code> + * type. + * + * Default: false + * Group: consumer (advanced) + * + * @param bridgeErrorHandler the value to set + * @return the dsl builder + */ + default AdvancedSmbEndpointConsumerBuilder bridgeErrorHandler( + String bridgeErrorHandler) { + doSetProperty("bridgeErrorHandler", bridgeErrorHandler); + return this; + } + /** + * To let the consumer use a custom ExceptionHandler. Notice if the + * option bridgeErrorHandler is enabled then this option is not in use. + * By default the consumer will deal with exceptions, that will be + * logged at WARN or ERROR level and ignored. + * + * The option is a: + * <code>org.apache.camel.spi.ExceptionHandler</code> type. + * + * Group: consumer (advanced) + * + * @param exceptionHandler the value to set + * @return the dsl builder + */ + default AdvancedSmbEndpointConsumerBuilder exceptionHandler( + org.apache.camel.spi.ExceptionHandler exceptionHandler) { + doSetProperty("exceptionHandler", exceptionHandler); + return this; + } + /** + * To let the consumer use a custom ExceptionHandler. Notice if the + * option bridgeErrorHandler is enabled then this option is not in use. + * By default the consumer will deal with exceptions, that will be + * logged at WARN or ERROR level and ignored. + * + * The option will be converted to a + * <code>org.apache.camel.spi.ExceptionHandler</code> type. + * + * Group: consumer (advanced) + * + * @param exceptionHandler the value to set + * @return the dsl builder + */ + default AdvancedSmbEndpointConsumerBuilder exceptionHandler( + String exceptionHandler) { + doSetProperty("exceptionHandler", exceptionHandler); + return this; + } + /** + * Sets the exchange pattern when the consumer creates an exchange. + * + * The option is a: + * <code>org.apache.camel.ExchangePattern</code> type. + * + * Group: consumer (advanced) + * + * @param exchangePattern the value to set + * @return the dsl builder + */ + default AdvancedSmbEndpointConsumerBuilder exchangePattern( + org.apache.camel.ExchangePattern exchangePattern) { + doSetProperty("exchangePattern", exchangePattern); + return this; + } + /** + * Sets the exchange pattern when the consumer creates an exchange. + * + * The option will be converted to a + * <code>org.apache.camel.ExchangePattern</code> type. + * + * Group: consumer (advanced) + * + * @param exchangePattern the value to set + * @return the dsl builder + */ + default AdvancedSmbEndpointConsumerBuilder exchangePattern( + String exchangePattern) { + doSetProperty("exchangePattern", exchangePattern); + return this; + } + } + + /** + * Builder for endpoint producers for the SMB component. + */ + public interface SmbEndpointProducerBuilder + extends + EndpointProducerBuilder { + default AdvancedSmbEndpointProducerBuilder advanced() { + return (AdvancedSmbEndpointProducerBuilder) this; + } + /** + * The user domain. + * + * The option is a: <code>java.lang.String</code> type. + * + * Group: common + * + * @param domain the value to set + * @return the dsl builder + */ + default SmbEndpointProducerBuilder domain(String domain) { + doSetProperty("domain", domain); + return this; + } + /** + * The password to access the share. + * + * The option is a: <code>java.lang.String</code> type. + * + * Group: common + * + * @param password the value to set + * @return the dsl builder + */ + default SmbEndpointProducerBuilder password(String password) { + doSetProperty("password", password); + return this; + } + /** + * The path, within the share, to consume the files from. + * + * The option is a: <code>java.lang.String</code> type. + * + * Required: true + * Group: common + * + * @param path the value to set + * @return the dsl builder + */ + default SmbEndpointProducerBuilder path(String path) { + doSetProperty("path", path); + return this; + } + /** + * The search pattern used to list the files. + * + * The option is a: <code>java.lang.String</code> type. + * + * Default: *.txt + * Group: common + * + * @param searchPattern the value to set + * @return the dsl builder + */ + default SmbEndpointProducerBuilder searchPattern(String searchPattern) { + doSetProperty("searchPattern", searchPattern); + return this; + } + /** + * An optional SMB I/O bean to use to setup the file access attributes + * when reading/writing a file. + * + * The option is a: + * <code>org.apache.camel.component.smb.SmbIOBean</code> + * type. + * + * Group: common + * + * @param smbIoBean the value to set + * @return the dsl builder + */ + default SmbEndpointProducerBuilder smbIoBean( + org.apache.camel.component.smb.SmbIOBean smbIoBean) { + doSetProperty("smbIoBean", smbIoBean); + return this; + } + /** + * An optional SMB I/O bean to use to setup the file access attributes + * when reading/writing a file. + * + * The option will be converted to a + * <code>org.apache.camel.component.smb.SmbIOBean</code> + * type. + * + * Group: common + * + * @param smbIoBean the value to set + * @return the dsl builder + */ + default SmbEndpointProducerBuilder smbIoBean(String smbIoBean) { + doSetProperty("smbIoBean", smbIoBean); + return this; + } + /** + * The username required to access the share. + * + * The option is a: <code>java.lang.String</code> type. + * + * Group: common + * + * @param username the value to set + * @return the dsl builder + */ + default SmbEndpointProducerBuilder username(String username) { + doSetProperty("username", username); + return this; + } + } + + /** + * Advanced builder for endpoint producers for the SMB component. + */ + public interface AdvancedSmbEndpointProducerBuilder + extends + EndpointProducerBuilder { + default SmbEndpointProducerBuilder basic() { + return (SmbEndpointProducerBuilder) 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 AdvancedSmbEndpointProducerBuilder 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 AdvancedSmbEndpointProducerBuilder lazyStartProducer( + String lazyStartProducer) { + doSetProperty("lazyStartProducer", lazyStartProducer); + return this; + } + } + + /** + * Builder for endpoint for the SMB component. + */ + public interface SmbEndpointBuilder + extends + SmbEndpointConsumerBuilder, + SmbEndpointProducerBuilder { + default AdvancedSmbEndpointBuilder advanced() { + return (AdvancedSmbEndpointBuilder) this; + } + /** + * The user domain. + * + * The option is a: <code>java.lang.String</code> type. + * + * Group: common + * + * @param domain the value to set + * @return the dsl builder + */ + default SmbEndpointBuilder domain(String domain) { + doSetProperty("domain", domain); + return this; + } + /** + * The password to access the share. + * + * The option is a: <code>java.lang.String</code> type. + * + * Group: common + * + * @param password the value to set + * @return the dsl builder + */ + default SmbEndpointBuilder password(String password) { + doSetProperty("password", password); + return this; + } + /** + * The path, within the share, to consume the files from. + * + * The option is a: <code>java.lang.String</code> type. + * + * Required: true + * Group: common + * + * @param path the value to set + * @return the dsl builder + */ + default SmbEndpointBuilder path(String path) { + doSetProperty("path", path); + return this; + } + /** + * The search pattern used to list the files. + * + * The option is a: <code>java.lang.String</code> type. + * + * Default: *.txt + * Group: common + * + * @param searchPattern the value to set + * @return the dsl builder + */ + default SmbEndpointBuilder searchPattern(String searchPattern) { + doSetProperty("searchPattern", searchPattern); + return this; + } + /** + * An optional SMB I/O bean to use to setup the file access attributes + * when reading/writing a file. + * + * The option is a: + * <code>org.apache.camel.component.smb.SmbIOBean</code> + * type. + * + * Group: common + * + * @param smbIoBean the value to set + * @return the dsl builder + */ + default SmbEndpointBuilder smbIoBean( + org.apache.camel.component.smb.SmbIOBean smbIoBean) { + doSetProperty("smbIoBean", smbIoBean); + return this; + } + /** + * An optional SMB I/O bean to use to setup the file access attributes + * when reading/writing a file. + * + * The option will be converted to a + * <code>org.apache.camel.component.smb.SmbIOBean</code> + * type. + * + * Group: common + * + * @param smbIoBean the value to set + * @return the dsl builder + */ + default SmbEndpointBuilder smbIoBean(String smbIoBean) { + doSetProperty("smbIoBean", smbIoBean); + return this; + } + /** + * The username required to access the share. + * + * The option is a: <code>java.lang.String</code> type. + * + * Group: common + * + * @param username the value to set + * @return the dsl builder + */ + default SmbEndpointBuilder username(String username) { + doSetProperty("username", username); + return this; + } + } + + /** + * Advanced builder for endpoint for the SMB component. + */ + public interface AdvancedSmbEndpointBuilder + extends + AdvancedSmbEndpointConsumerBuilder, + AdvancedSmbEndpointProducerBuilder { + default SmbEndpointBuilder basic() { + return (SmbEndpointBuilder) this; + } + } + + public interface SmbBuilders { + /** + * SMB (camel-smb) + * SMB component which consumes natively from file shares using the + * Server Message Block (SMB, also known as Common Internet File System + * - CIFS) protocol + * + * Category: file + * Since: 4.2.0-SNAPSHOT + * Maven coordinates: org.apache.camel:camel-smb + * + * Syntax: <code>smb:hostname:port</code> + * + * Path parameter: hostname (required) + * The share name or IP address + * + * Path parameter: port + * The share port + * Default value: 445 + * + * Path parameter: shareName + * The share path + * + * @param path hostname:port + * @return the dsl builder + */ + default SmbEndpointBuilder smb(String path) { + return SmbEndpointBuilderFactory.endpointBuilder("smb", path); + } + /** + * SMB (camel-smb) + * SMB component which consumes natively from file shares using the + * Server Message Block (SMB, also known as Common Internet File System + * - CIFS) protocol + * + * Category: file + * Since: 4.2.0-SNAPSHOT + * Maven coordinates: org.apache.camel:camel-smb + * + * Syntax: <code>smb:hostname:port</code> + * + * Path parameter: hostname (required) + * The share name or IP address + * + * Path parameter: port + * The share port + * Default value: 445 + * + * Path parameter: shareName + * The share path + * + * @param componentName to use a custom component name for the endpoint + * instead of the default name + * @param path hostname:port + * @return the dsl builder + */ + default SmbEndpointBuilder smb(String componentName, String path) { + return SmbEndpointBuilderFactory.endpointBuilder(componentName, path); + } + } + static SmbEndpointBuilder endpointBuilder(String componentName, String path) { + class SmbEndpointBuilderImpl extends AbstractEndpointBuilder implements SmbEndpointBuilder, AdvancedSmbEndpointBuilder { + public SmbEndpointBuilderImpl(String path) { + super(componentName, path); + } + } + return new SmbEndpointBuilderImpl(path); + } +} \ No newline at end of file