| /* |
| * 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.Map; |
| import java.util.concurrent.ScheduledExecutorService; |
| import java.util.concurrent.TimeUnit; |
| import javax.annotation.Generated; |
| import org.apache.camel.ExchangePattern; |
| import org.apache.camel.LoggingLevel; |
| import org.apache.camel.builder.EndpointConsumerBuilder; |
| import org.apache.camel.builder.EndpointProducerBuilder; |
| import org.apache.camel.builder.endpoint.AbstractEndpointBuilder; |
| import org.apache.camel.spi.ExceptionHandler; |
| import org.apache.camel.spi.PollingConsumerPollStrategy; |
| |
| /** |
| * Performs a query, poll, insert, update or delete in a relational database |
| * using MyBatis. |
| * |
| * Generated by camel-package-maven-plugin - do not edit this file! |
| */ |
| @Generated("org.apache.camel.maven.packaging.EndpointDslMojo") |
| public interface MyBatisEndpointBuilderFactory { |
| |
| |
| /** |
| * Builder for endpoint consumers for the MyBatis component. |
| */ |
| public interface MyBatisEndpointConsumerBuilder |
| extends |
| EndpointConsumerBuilder { |
| default AdvancedMyBatisEndpointConsumerBuilder advanced() { |
| return (AdvancedMyBatisEndpointConsumerBuilder) this; |
| } |
| /** |
| * Allows for bridging the consumer to the Camel routing Error Handler, |
| * which mean any exceptions occurred while the consumer is trying to |
| * pickup incoming messages, or the likes, will now be processed as a |
| * message and handled by the routing Error Handler. 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. |
| * |
| * Group: consumer |
| */ |
| default MyBatisEndpointConsumerBuilder bridgeErrorHandler( |
| boolean bridgeErrorHandler) { |
| doSetProperty("bridgeErrorHandler", bridgeErrorHandler); |
| return this; |
| } |
| /** |
| * Allows for bridging the consumer to the Camel routing Error Handler, |
| * which mean any exceptions occurred while the consumer is trying to |
| * pickup incoming messages, or the likes, will now be processed as a |
| * message and handled by the routing Error Handler. 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. |
| * |
| * Group: consumer |
| */ |
| default MyBatisEndpointConsumerBuilder bridgeErrorHandler( |
| String bridgeErrorHandler) { |
| doSetProperty("bridgeErrorHandler", bridgeErrorHandler); |
| return this; |
| } |
| /** |
| * This option is intended to split results returned by the database |
| * pool into the batches and deliver them in multiple exchanges. This |
| * integer defines the maximum messages to deliver in single exchange. |
| * By default, no maximum is set. Can be used to set a limit of e.g. |
| * 1000 to avoid when starting up the server that there are thousands of |
| * files. Set a value of 0 or negative to disable it. |
| * |
| * The option is a: <code>int</code> type. |
| * |
| * Group: consumer |
| */ |
| default MyBatisEndpointConsumerBuilder maxMessagesPerPoll( |
| int maxMessagesPerPoll) { |
| doSetProperty("maxMessagesPerPoll", maxMessagesPerPoll); |
| return this; |
| } |
| /** |
| * This option is intended to split results returned by the database |
| * pool into the batches and deliver them in multiple exchanges. This |
| * integer defines the maximum messages to deliver in single exchange. |
| * By default, no maximum is set. Can be used to set a limit of e.g. |
| * 1000 to avoid when starting up the server that there are thousands of |
| * files. Set a value of 0 or negative to disable it. |
| * |
| * The option will be converted to a <code>int</code> type. |
| * |
| * Group: consumer |
| */ |
| default MyBatisEndpointConsumerBuilder maxMessagesPerPoll( |
| String maxMessagesPerPoll) { |
| doSetProperty("maxMessagesPerPoll", maxMessagesPerPoll); |
| return this; |
| } |
| /** |
| * Statement to run after data has been processed in the route. |
| * |
| * The option is a: <code>java.lang.String</code> type. |
| * |
| * Group: consumer |
| */ |
| default MyBatisEndpointConsumerBuilder onConsume(String onConsume) { |
| doSetProperty("onConsume", onConsume); |
| return this; |
| } |
| /** |
| * Whether allow empty resultset to be routed to the next hop. |
| * |
| * The option is a: <code>boolean</code> type. |
| * |
| * Group: consumer |
| */ |
| default MyBatisEndpointConsumerBuilder routeEmptyResultSet( |
| boolean routeEmptyResultSet) { |
| doSetProperty("routeEmptyResultSet", routeEmptyResultSet); |
| return this; |
| } |
| /** |
| * Whether allow empty resultset to be routed to the next hop. |
| * |
| * The option will be converted to a <code>boolean</code> type. |
| * |
| * Group: consumer |
| */ |
| default MyBatisEndpointConsumerBuilder routeEmptyResultSet( |
| String routeEmptyResultSet) { |
| doSetProperty("routeEmptyResultSet", routeEmptyResultSet); |
| return this; |
| } |
| /** |
| * If the polling consumer did not poll any files, you can enable this |
| * option to send an empty message (no body) instead. |
| * |
| * The option is a: <code>boolean</code> type. |
| * |
| * Group: consumer |
| */ |
| default MyBatisEndpointConsumerBuilder sendEmptyMessageWhenIdle( |
| boolean sendEmptyMessageWhenIdle) { |
| doSetProperty("sendEmptyMessageWhenIdle", sendEmptyMessageWhenIdle); |
| return this; |
| } |
| /** |
| * If the polling consumer did not poll any files, you can enable this |
| * option to send an empty message (no body) instead. |
| * |
| * The option will be converted to a <code>boolean</code> type. |
| * |
| * Group: consumer |
| */ |
| default MyBatisEndpointConsumerBuilder sendEmptyMessageWhenIdle( |
| String sendEmptyMessageWhenIdle) { |
| doSetProperty("sendEmptyMessageWhenIdle", sendEmptyMessageWhenIdle); |
| return this; |
| } |
| /** |
| * Enables or disables transaction. If enabled then if processing an |
| * exchange failed then the consumer break out processing any further |
| * exchanges to cause a rollback eager. |
| * |
| * The option is a: <code>boolean</code> type. |
| * |
| * Group: consumer |
| */ |
| default MyBatisEndpointConsumerBuilder transacted(boolean transacted) { |
| doSetProperty("transacted", transacted); |
| return this; |
| } |
| /** |
| * Enables or disables transaction. If enabled then if processing an |
| * exchange failed then the consumer break out processing any further |
| * exchanges to cause a rollback eager. |
| * |
| * The option will be converted to a <code>boolean</code> type. |
| * |
| * Group: consumer |
| */ |
| default MyBatisEndpointConsumerBuilder transacted(String transacted) { |
| doSetProperty("transacted", transacted); |
| return this; |
| } |
| /** |
| * Process resultset individually or as a list. |
| * |
| * The option is a: <code>boolean</code> type. |
| * |
| * Group: consumer |
| */ |
| default MyBatisEndpointConsumerBuilder useIterator(boolean useIterator) { |
| doSetProperty("useIterator", useIterator); |
| return this; |
| } |
| /** |
| * Process resultset individually or as a list. |
| * |
| * The option will be converted to a <code>boolean</code> type. |
| * |
| * Group: consumer |
| */ |
| default MyBatisEndpointConsumerBuilder useIterator(String useIterator) { |
| doSetProperty("useIterator", useIterator); |
| return this; |
| } |
| /** |
| * The number of subsequent error polls (failed due some error) that |
| * should happen before the backoffMultipler should kick-in. |
| * |
| * The option is a: <code>int</code> type. |
| * |
| * Group: scheduler |
| */ |
| default MyBatisEndpointConsumerBuilder backoffErrorThreshold( |
| int backoffErrorThreshold) { |
| doSetProperty("backoffErrorThreshold", backoffErrorThreshold); |
| return this; |
| } |
| /** |
| * The number of subsequent error polls (failed due some error) that |
| * should happen before the backoffMultipler should kick-in. |
| * |
| * The option will be converted to a <code>int</code> type. |
| * |
| * Group: scheduler |
| */ |
| default MyBatisEndpointConsumerBuilder backoffErrorThreshold( |
| String backoffErrorThreshold) { |
| doSetProperty("backoffErrorThreshold", backoffErrorThreshold); |
| return this; |
| } |
| /** |
| * The number of subsequent idle polls that should happen before the |
| * backoffMultipler should kick-in. |
| * |
| * The option is a: <code>int</code> type. |
| * |
| * Group: scheduler |
| */ |
| default MyBatisEndpointConsumerBuilder backoffIdleThreshold( |
| int backoffIdleThreshold) { |
| doSetProperty("backoffIdleThreshold", backoffIdleThreshold); |
| return this; |
| } |
| /** |
| * The number of subsequent idle polls that should happen before the |
| * backoffMultipler should kick-in. |
| * |
| * The option will be converted to a <code>int</code> type. |
| * |
| * Group: scheduler |
| */ |
| default MyBatisEndpointConsumerBuilder backoffIdleThreshold( |
| String backoffIdleThreshold) { |
| doSetProperty("backoffIdleThreshold", backoffIdleThreshold); |
| return this; |
| } |
| /** |
| * To let the scheduled polling consumer backoff if there has been a |
| * number of subsequent idles/errors in a row. The multiplier is then |
| * the number of polls that will be skipped before the next actual |
| * attempt is happening again. When this option is in use then |
| * backoffIdleThreshold and/or backoffErrorThreshold must also be |
| * configured. |
| * |
| * The option is a: <code>int</code> type. |
| * |
| * Group: scheduler |
| */ |
| default MyBatisEndpointConsumerBuilder backoffMultiplier( |
| int backoffMultiplier) { |
| doSetProperty("backoffMultiplier", backoffMultiplier); |
| return this; |
| } |
| /** |
| * To let the scheduled polling consumer backoff if there has been a |
| * number of subsequent idles/errors in a row. The multiplier is then |
| * the number of polls that will be skipped before the next actual |
| * attempt is happening again. When this option is in use then |
| * backoffIdleThreshold and/or backoffErrorThreshold must also be |
| * configured. |
| * |
| * The option will be converted to a <code>int</code> type. |
| * |
| * Group: scheduler |
| */ |
| default MyBatisEndpointConsumerBuilder backoffMultiplier( |
| String backoffMultiplier) { |
| doSetProperty("backoffMultiplier", backoffMultiplier); |
| return this; |
| } |
| /** |
| * Milliseconds before the next poll. You can also specify time values |
| * using units, such as 60s (60 seconds), 5m30s (5 minutes and 30 |
| * seconds), and 1h (1 hour). |
| * |
| * The option is a: <code>long</code> type. |
| * |
| * Group: scheduler |
| */ |
| default MyBatisEndpointConsumerBuilder delay(long delay) { |
| doSetProperty("delay", delay); |
| return this; |
| } |
| /** |
| * Milliseconds before the next poll. You can also specify time values |
| * using units, such as 60s (60 seconds), 5m30s (5 minutes and 30 |
| * seconds), and 1h (1 hour). |
| * |
| * The option will be converted to a <code>long</code> type. |
| * |
| * Group: scheduler |
| */ |
| default MyBatisEndpointConsumerBuilder delay(String delay) { |
| doSetProperty("delay", delay); |
| return this; |
| } |
| /** |
| * If greedy is enabled, then the ScheduledPollConsumer will run |
| * immediately again, if the previous run polled 1 or more messages. |
| * |
| * The option is a: <code>boolean</code> type. |
| * |
| * Group: scheduler |
| */ |
| default MyBatisEndpointConsumerBuilder greedy(boolean greedy) { |
| doSetProperty("greedy", greedy); |
| return this; |
| } |
| /** |
| * If greedy is enabled, then the ScheduledPollConsumer will run |
| * immediately again, if the previous run polled 1 or more messages. |
| * |
| * The option will be converted to a <code>boolean</code> type. |
| * |
| * Group: scheduler |
| */ |
| default MyBatisEndpointConsumerBuilder greedy(String greedy) { |
| doSetProperty("greedy", greedy); |
| return this; |
| } |
| /** |
| * Milliseconds before the first poll starts. You can also specify time |
| * values using units, such as 60s (60 seconds), 5m30s (5 minutes and 30 |
| * seconds), and 1h (1 hour). |
| * |
| * The option is a: <code>long</code> type. |
| * |
| * Group: scheduler |
| */ |
| default MyBatisEndpointConsumerBuilder initialDelay(long initialDelay) { |
| doSetProperty("initialDelay", initialDelay); |
| return this; |
| } |
| /** |
| * Milliseconds before the first poll starts. You can also specify time |
| * values using units, such as 60s (60 seconds), 5m30s (5 minutes and 30 |
| * seconds), and 1h (1 hour). |
| * |
| * The option will be converted to a <code>long</code> type. |
| * |
| * Group: scheduler |
| */ |
| default MyBatisEndpointConsumerBuilder initialDelay(String initialDelay) { |
| doSetProperty("initialDelay", initialDelay); |
| return this; |
| } |
| /** |
| * Specifies a maximum limit of number of fires. So if you set it to 1, |
| * the scheduler will only fire once. If you set it to 5, it will only |
| * fire five times. A value of zero or negative means fire forever. |
| * |
| * The option is a: <code>long</code> type. |
| * |
| * Group: scheduler |
| */ |
| default MyBatisEndpointConsumerBuilder repeatCount(long repeatCount) { |
| doSetProperty("repeatCount", repeatCount); |
| return this; |
| } |
| /** |
| * Specifies a maximum limit of number of fires. So if you set it to 1, |
| * the scheduler will only fire once. If you set it to 5, it will only |
| * fire five times. A value of zero or negative means fire forever. |
| * |
| * The option will be converted to a <code>long</code> type. |
| * |
| * Group: scheduler |
| */ |
| default MyBatisEndpointConsumerBuilder repeatCount(String repeatCount) { |
| doSetProperty("repeatCount", repeatCount); |
| return this; |
| } |
| /** |
| * The consumer logs a start/complete log line when it polls. This |
| * option allows you to configure the logging level for that. |
| * |
| * The option is a: <code>org.apache.camel.LoggingLevel</code> type. |
| * |
| * Group: scheduler |
| */ |
| default MyBatisEndpointConsumerBuilder runLoggingLevel( |
| LoggingLevel runLoggingLevel) { |
| doSetProperty("runLoggingLevel", runLoggingLevel); |
| return this; |
| } |
| /** |
| * The consumer logs a start/complete log line when it polls. This |
| * option allows you to configure the logging level for that. |
| * |
| * The option will be converted to a |
| * <code>org.apache.camel.LoggingLevel</code> type. |
| * |
| * Group: scheduler |
| */ |
| default MyBatisEndpointConsumerBuilder runLoggingLevel( |
| String runLoggingLevel) { |
| doSetProperty("runLoggingLevel", runLoggingLevel); |
| return this; |
| } |
| /** |
| * Allows for configuring a custom/shared thread pool to use for the |
| * consumer. By default each consumer has its own single threaded thread |
| * pool. |
| * |
| * The option is a: |
| * <code>java.util.concurrent.ScheduledExecutorService</code> type. |
| * |
| * Group: scheduler |
| */ |
| default MyBatisEndpointConsumerBuilder scheduledExecutorService( |
| ScheduledExecutorService scheduledExecutorService) { |
| doSetProperty("scheduledExecutorService", scheduledExecutorService); |
| return this; |
| } |
| /** |
| * Allows for configuring a custom/shared thread pool to use for the |
| * consumer. By default each consumer has its own single threaded thread |
| * pool. |
| * |
| * The option will be converted to a |
| * <code>java.util.concurrent.ScheduledExecutorService</code> type. |
| * |
| * Group: scheduler |
| */ |
| default MyBatisEndpointConsumerBuilder scheduledExecutorService( |
| String scheduledExecutorService) { |
| doSetProperty("scheduledExecutorService", scheduledExecutorService); |
| return this; |
| } |
| /** |
| * To use a cron scheduler from either camel-spring or camel-quartz |
| * component. |
| * |
| * The option is a: <code>java.lang.String</code> type. |
| * |
| * Group: scheduler |
| */ |
| default MyBatisEndpointConsumerBuilder scheduler(String scheduler) { |
| doSetProperty("scheduler", scheduler); |
| return this; |
| } |
| /** |
| * To configure additional properties when using a custom scheduler or |
| * any of the Quartz, Spring based scheduler. |
| * |
| * The option is a: <code>java.util.Map<java.lang.String, |
| * java.lang.Object></code> type. |
| * |
| * Group: scheduler |
| */ |
| default MyBatisEndpointConsumerBuilder schedulerProperties( |
| Map<String, Object> schedulerProperties) { |
| doSetProperty("schedulerProperties", schedulerProperties); |
| return this; |
| } |
| /** |
| * To configure additional properties when using a custom scheduler or |
| * any of the Quartz, Spring based scheduler. |
| * |
| * The option will be converted to a |
| * <code>java.util.Map<java.lang.String, java.lang.Object></code> |
| * type. |
| * |
| * Group: scheduler |
| */ |
| default MyBatisEndpointConsumerBuilder schedulerProperties( |
| String schedulerProperties) { |
| doSetProperty("schedulerProperties", schedulerProperties); |
| return this; |
| } |
| /** |
| * Whether the scheduler should be auto started. |
| * |
| * The option is a: <code>boolean</code> type. |
| * |
| * Group: scheduler |
| */ |
| default MyBatisEndpointConsumerBuilder startScheduler( |
| boolean startScheduler) { |
| doSetProperty("startScheduler", startScheduler); |
| return this; |
| } |
| /** |
| * Whether the scheduler should be auto started. |
| * |
| * The option will be converted to a <code>boolean</code> type. |
| * |
| * Group: scheduler |
| */ |
| default MyBatisEndpointConsumerBuilder startScheduler( |
| String startScheduler) { |
| doSetProperty("startScheduler", startScheduler); |
| return this; |
| } |
| /** |
| * Time unit for initialDelay and delay options. |
| * |
| * The option is a: <code>java.util.concurrent.TimeUnit</code> type. |
| * |
| * Group: scheduler |
| */ |
| default MyBatisEndpointConsumerBuilder timeUnit(TimeUnit timeUnit) { |
| doSetProperty("timeUnit", timeUnit); |
| return this; |
| } |
| /** |
| * Time unit for initialDelay and delay options. |
| * |
| * The option will be converted to a |
| * <code>java.util.concurrent.TimeUnit</code> type. |
| * |
| * Group: scheduler |
| */ |
| default MyBatisEndpointConsumerBuilder timeUnit(String timeUnit) { |
| doSetProperty("timeUnit", timeUnit); |
| return this; |
| } |
| /** |
| * Controls if fixed delay or fixed rate is used. See |
| * ScheduledExecutorService in JDK for details. |
| * |
| * The option is a: <code>boolean</code> type. |
| * |
| * Group: scheduler |
| */ |
| default MyBatisEndpointConsumerBuilder useFixedDelay( |
| boolean useFixedDelay) { |
| doSetProperty("useFixedDelay", useFixedDelay); |
| return this; |
| } |
| /** |
| * Controls if fixed delay or fixed rate is used. See |
| * ScheduledExecutorService in JDK for details. |
| * |
| * The option will be converted to a <code>boolean</code> type. |
| * |
| * Group: scheduler |
| */ |
| default MyBatisEndpointConsumerBuilder useFixedDelay( |
| String useFixedDelay) { |
| doSetProperty("useFixedDelay", useFixedDelay); |
| return this; |
| } |
| } |
| |
| /** |
| * Advanced builder for endpoint consumers for the MyBatis component. |
| */ |
| public interface AdvancedMyBatisEndpointConsumerBuilder |
| extends |
| EndpointConsumerBuilder { |
| default MyBatisEndpointConsumerBuilder basic() { |
| return (MyBatisEndpointConsumerBuilder) 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) |
| */ |
| default AdvancedMyBatisEndpointConsumerBuilder exceptionHandler( |
| 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) |
| */ |
| default AdvancedMyBatisEndpointConsumerBuilder 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) |
| */ |
| default AdvancedMyBatisEndpointConsumerBuilder exchangePattern( |
| 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) |
| */ |
| default AdvancedMyBatisEndpointConsumerBuilder exchangePattern( |
| String exchangePattern) { |
| doSetProperty("exchangePattern", exchangePattern); |
| return this; |
| } |
| /** |
| * A pluggable org.apache.camel.PollingConsumerPollingStrategy allowing |
| * you to provide your custom implementation to control error handling |
| * usually occurred during the poll operation before an Exchange have |
| * been created and being routed in Camel. |
| * |
| * The option is a: |
| * <code>org.apache.camel.spi.PollingConsumerPollStrategy</code> type. |
| * |
| * Group: consumer (advanced) |
| */ |
| default AdvancedMyBatisEndpointConsumerBuilder pollStrategy( |
| PollingConsumerPollStrategy pollStrategy) { |
| doSetProperty("pollStrategy", pollStrategy); |
| return this; |
| } |
| /** |
| * A pluggable org.apache.camel.PollingConsumerPollingStrategy allowing |
| * you to provide your custom implementation to control error handling |
| * usually occurred during the poll operation before an Exchange have |
| * been created and being routed in Camel. |
| * |
| * The option will be converted to a |
| * <code>org.apache.camel.spi.PollingConsumerPollStrategy</code> type. |
| * |
| * Group: consumer (advanced) |
| */ |
| default AdvancedMyBatisEndpointConsumerBuilder pollStrategy( |
| String pollStrategy) { |
| doSetProperty("pollStrategy", pollStrategy); |
| return this; |
| } |
| /** |
| * To use a custom MyBatisProcessingStrategy. |
| * |
| * The option is a: |
| * <code>org.apache.camel.component.mybatis.MyBatisProcessingStrategy</code> type. |
| * |
| * Group: consumer (advanced) |
| */ |
| default AdvancedMyBatisEndpointConsumerBuilder processingStrategy( |
| Object processingStrategy) { |
| doSetProperty("processingStrategy", processingStrategy); |
| return this; |
| } |
| /** |
| * To use a custom MyBatisProcessingStrategy. |
| * |
| * The option will be converted to a |
| * <code>org.apache.camel.component.mybatis.MyBatisProcessingStrategy</code> type. |
| * |
| * Group: consumer (advanced) |
| */ |
| default AdvancedMyBatisEndpointConsumerBuilder processingStrategy( |
| String processingStrategy) { |
| doSetProperty("processingStrategy", processingStrategy); |
| return this; |
| } |
| /** |
| * Whether the endpoint should use basic property binding (Camel 2.x) or |
| * the newer property binding with additional capabilities. |
| * |
| * The option is a: <code>boolean</code> type. |
| * |
| * Group: advanced |
| */ |
| default AdvancedMyBatisEndpointConsumerBuilder basicPropertyBinding( |
| boolean basicPropertyBinding) { |
| doSetProperty("basicPropertyBinding", basicPropertyBinding); |
| return this; |
| } |
| /** |
| * Whether the endpoint should use basic property binding (Camel 2.x) or |
| * the newer property binding with additional capabilities. |
| * |
| * The option will be converted to a <code>boolean</code> type. |
| * |
| * Group: advanced |
| */ |
| default AdvancedMyBatisEndpointConsumerBuilder basicPropertyBinding( |
| String basicPropertyBinding) { |
| doSetProperty("basicPropertyBinding", basicPropertyBinding); |
| return this; |
| } |
| /** |
| * Sets whether synchronous processing should be strictly used, or Camel |
| * is allowed to use asynchronous processing (if supported). |
| * |
| * The option is a: <code>boolean</code> type. |
| * |
| * Group: advanced |
| */ |
| default AdvancedMyBatisEndpointConsumerBuilder synchronous( |
| boolean synchronous) { |
| doSetProperty("synchronous", synchronous); |
| return this; |
| } |
| /** |
| * Sets whether synchronous processing should be strictly used, or Camel |
| * is allowed to use asynchronous processing (if supported). |
| * |
| * The option will be converted to a <code>boolean</code> type. |
| * |
| * Group: advanced |
| */ |
| default AdvancedMyBatisEndpointConsumerBuilder synchronous( |
| String synchronous) { |
| doSetProperty("synchronous", synchronous); |
| return this; |
| } |
| } |
| |
| /** |
| * Builder for endpoint producers for the MyBatis component. |
| */ |
| public interface MyBatisEndpointProducerBuilder |
| extends |
| EndpointProducerBuilder { |
| default AdvancedMyBatisEndpointProducerBuilder advanced() { |
| return (AdvancedMyBatisEndpointProducerBuilder) this; |
| } |
| /** |
| * The executor type to be used while executing statements. simple - |
| * executor does nothing special. reuse - executor reuses prepared |
| * statements. batch - executor reuses statements and batches updates. |
| * |
| * The option is a: <code>org.apache.ibatis.session.ExecutorType</code> |
| * type. |
| * |
| * Group: producer |
| */ |
| default MyBatisEndpointProducerBuilder executorType( |
| ExecutorType executorType) { |
| doSetProperty("executorType", executorType); |
| return this; |
| } |
| /** |
| * The executor type to be used while executing statements. simple - |
| * executor does nothing special. reuse - executor reuses prepared |
| * statements. batch - executor reuses statements and batches updates. |
| * |
| * The option will be converted to a |
| * <code>org.apache.ibatis.session.ExecutorType</code> type. |
| * |
| * Group: producer |
| */ |
| default MyBatisEndpointProducerBuilder executorType(String executorType) { |
| doSetProperty("executorType", executorType); |
| return this; |
| } |
| /** |
| * User the header value for input parameters instead of the message |
| * body. By default, inputHeader == null and the input parameters are |
| * taken from the message body. If outputHeader is set, the value is |
| * used and query parameters will be taken from the header instead of |
| * the body. |
| * |
| * The option is a: <code>java.lang.String</code> type. |
| * |
| * Group: producer |
| */ |
| default MyBatisEndpointProducerBuilder inputHeader(String inputHeader) { |
| doSetProperty("inputHeader", inputHeader); |
| 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. |
| * |
| * Group: producer |
| */ |
| default MyBatisEndpointProducerBuilder 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. |
| * |
| * Group: producer |
| */ |
| default MyBatisEndpointProducerBuilder lazyStartProducer( |
| String lazyStartProducer) { |
| doSetProperty("lazyStartProducer", lazyStartProducer); |
| return this; |
| } |
| /** |
| * Store the query result in a header instead of the message body. By |
| * default, outputHeader == null and the query result is stored in the |
| * message body, any existing content in the message body is discarded. |
| * If outputHeader is set, the value is used as the name of the header |
| * to store the query result and the original message body is preserved. |
| * Setting outputHeader will also omit populating the default |
| * CamelMyBatisResult header since it would be the same as outputHeader |
| * all the time. |
| * |
| * The option is a: <code>java.lang.String</code> type. |
| * |
| * Group: producer |
| */ |
| default MyBatisEndpointProducerBuilder outputHeader(String outputHeader) { |
| doSetProperty("outputHeader", outputHeader); |
| return this; |
| } |
| /** |
| * Mandatory to specify for the producer to control which kind of |
| * operation to invoke. |
| * |
| * The option is a: |
| * <code>org.apache.camel.component.mybatis.StatementType</code> type. |
| * |
| * Group: producer |
| */ |
| default MyBatisEndpointProducerBuilder statementType( |
| StatementType statementType) { |
| doSetProperty("statementType", statementType); |
| return this; |
| } |
| /** |
| * Mandatory to specify for the producer to control which kind of |
| * operation to invoke. |
| * |
| * The option will be converted to a |
| * <code>org.apache.camel.component.mybatis.StatementType</code> type. |
| * |
| * Group: producer |
| */ |
| default MyBatisEndpointProducerBuilder statementType( |
| String statementType) { |
| doSetProperty("statementType", statementType); |
| return this; |
| } |
| } |
| |
| /** |
| * Advanced builder for endpoint producers for the MyBatis component. |
| */ |
| public interface AdvancedMyBatisEndpointProducerBuilder |
| extends |
| EndpointProducerBuilder { |
| default MyBatisEndpointProducerBuilder basic() { |
| return (MyBatisEndpointProducerBuilder) this; |
| } |
| /** |
| * Whether the endpoint should use basic property binding (Camel 2.x) or |
| * the newer property binding with additional capabilities. |
| * |
| * The option is a: <code>boolean</code> type. |
| * |
| * Group: advanced |
| */ |
| default AdvancedMyBatisEndpointProducerBuilder basicPropertyBinding( |
| boolean basicPropertyBinding) { |
| doSetProperty("basicPropertyBinding", basicPropertyBinding); |
| return this; |
| } |
| /** |
| * Whether the endpoint should use basic property binding (Camel 2.x) or |
| * the newer property binding with additional capabilities. |
| * |
| * The option will be converted to a <code>boolean</code> type. |
| * |
| * Group: advanced |
| */ |
| default AdvancedMyBatisEndpointProducerBuilder basicPropertyBinding( |
| String basicPropertyBinding) { |
| doSetProperty("basicPropertyBinding", basicPropertyBinding); |
| return this; |
| } |
| /** |
| * Sets whether synchronous processing should be strictly used, or Camel |
| * is allowed to use asynchronous processing (if supported). |
| * |
| * The option is a: <code>boolean</code> type. |
| * |
| * Group: advanced |
| */ |
| default AdvancedMyBatisEndpointProducerBuilder synchronous( |
| boolean synchronous) { |
| doSetProperty("synchronous", synchronous); |
| return this; |
| } |
| /** |
| * Sets whether synchronous processing should be strictly used, or Camel |
| * is allowed to use asynchronous processing (if supported). |
| * |
| * The option will be converted to a <code>boolean</code> type. |
| * |
| * Group: advanced |
| */ |
| default AdvancedMyBatisEndpointProducerBuilder synchronous( |
| String synchronous) { |
| doSetProperty("synchronous", synchronous); |
| return this; |
| } |
| } |
| |
| /** |
| * Builder for endpoint for the MyBatis component. |
| */ |
| public interface MyBatisEndpointBuilder |
| extends |
| MyBatisEndpointConsumerBuilder, MyBatisEndpointProducerBuilder { |
| default AdvancedMyBatisEndpointBuilder advanced() { |
| return (AdvancedMyBatisEndpointBuilder) this; |
| } |
| } |
| |
| /** |
| * Advanced builder for endpoint for the MyBatis component. |
| */ |
| public interface AdvancedMyBatisEndpointBuilder |
| extends |
| AdvancedMyBatisEndpointConsumerBuilder, AdvancedMyBatisEndpointProducerBuilder { |
| default MyBatisEndpointBuilder basic() { |
| return (MyBatisEndpointBuilder) this; |
| } |
| /** |
| * Whether the endpoint should use basic property binding (Camel 2.x) or |
| * the newer property binding with additional capabilities. |
| * |
| * The option is a: <code>boolean</code> type. |
| * |
| * Group: advanced |
| */ |
| default AdvancedMyBatisEndpointBuilder basicPropertyBinding( |
| boolean basicPropertyBinding) { |
| doSetProperty("basicPropertyBinding", basicPropertyBinding); |
| return this; |
| } |
| /** |
| * Whether the endpoint should use basic property binding (Camel 2.x) or |
| * the newer property binding with additional capabilities. |
| * |
| * The option will be converted to a <code>boolean</code> type. |
| * |
| * Group: advanced |
| */ |
| default AdvancedMyBatisEndpointBuilder basicPropertyBinding( |
| String basicPropertyBinding) { |
| doSetProperty("basicPropertyBinding", basicPropertyBinding); |
| return this; |
| } |
| /** |
| * Sets whether synchronous processing should be strictly used, or Camel |
| * is allowed to use asynchronous processing (if supported). |
| * |
| * The option is a: <code>boolean</code> type. |
| * |
| * Group: advanced |
| */ |
| default AdvancedMyBatisEndpointBuilder synchronous(boolean synchronous) { |
| doSetProperty("synchronous", synchronous); |
| return this; |
| } |
| /** |
| * Sets whether synchronous processing should be strictly used, or Camel |
| * is allowed to use asynchronous processing (if supported). |
| * |
| * The option will be converted to a <code>boolean</code> type. |
| * |
| * Group: advanced |
| */ |
| default AdvancedMyBatisEndpointBuilder synchronous(String synchronous) { |
| doSetProperty("synchronous", synchronous); |
| return this; |
| } |
| } |
| |
| /** |
| * Proxy enum for <code>org.apache.ibatis.session.ExecutorType</code> enum. |
| */ |
| enum ExecutorType { |
| SIMPLE, |
| REUSE, |
| BATCH; |
| } |
| |
| /** |
| * Proxy enum for |
| * <code>org.apache.camel.component.mybatis.StatementType</code> enum. |
| */ |
| enum StatementType { |
| SelectOne, |
| SelectList, |
| Insert, |
| InsertList, |
| Update, |
| UpdateList, |
| Delete, |
| DeleteList; |
| } |
| /** |
| * MyBatis (camel-mybatis) |
| * Performs a query, poll, insert, update or delete in a relational database |
| * using MyBatis. |
| * |
| * Category: database,sql |
| * Since: 2.7 |
| * Maven coordinates: org.apache.camel:camel-mybatis |
| * |
| * Syntax: <code>mybatis:statement</code> |
| * |
| * Path parameter: statement (required) |
| * The statement name in the MyBatis XML mapping file which maps to the |
| * query, insert, update or delete operation you wish to evaluate. |
| */ |
| default MyBatisEndpointBuilder mybatis(String path) { |
| class MyBatisEndpointBuilderImpl extends AbstractEndpointBuilder implements MyBatisEndpointBuilder, AdvancedMyBatisEndpointBuilder { |
| public MyBatisEndpointBuilderImpl(String path) { |
| super("mybatis", path); |
| } |
| } |
| return new MyBatisEndpointBuilderImpl(path); |
| } |
| } |