Interface CosmosDbEndpointBuilderFactory.CosmosDbEndpointProducerBuilder

  • All Superinterfaces:
    org.apache.camel.builder.EndpointProducerBuilder, org.apache.camel.EndpointProducerResolver
    All Known Subinterfaces:
    CosmosDbEndpointBuilderFactory.CosmosDbEndpointBuilder
    Enclosing interface:
    CosmosDbEndpointBuilderFactory

    public static interface CosmosDbEndpointBuilderFactory.CosmosDbEndpointProducerBuilder
    extends org.apache.camel.builder.EndpointProducerBuilder
    Builder for endpoint producers for the Azure CosmosDB component.
    • Method Detail

      • clientTelemetryEnabled

        default CosmosDbEndpointBuilderFactory.CosmosDbEndpointProducerBuilder clientTelemetryEnabled​(boolean clientTelemetryEnabled)
        Sets the flag to enable client telemetry which will periodically collect database operations aggregation statistics, system information like cpu/memory and send it to cosmos monitoring service, which will be helpful during debugging. DEFAULT value is false indicating this is opt in feature, by default no telemetry collection. The option is a: <code>boolean</code> type. Default: false Group: common
        Parameters:
        clientTelemetryEnabled - the value to set
        Returns:
        the dsl builder
      • clientTelemetryEnabled

        default CosmosDbEndpointBuilderFactory.CosmosDbEndpointProducerBuilder clientTelemetryEnabled​(String clientTelemetryEnabled)
        Sets the flag to enable client telemetry which will periodically collect database operations aggregation statistics, system information like cpu/memory and send it to cosmos monitoring service, which will be helpful during debugging. DEFAULT value is false indicating this is opt in feature, by default no telemetry collection. The option will be converted to a <code>boolean</code> type. Default: false Group: common
        Parameters:
        clientTelemetryEnabled - the value to set
        Returns:
        the dsl builder
      • connectionSharingAcrossClientsEnabled

        default CosmosDbEndpointBuilderFactory.CosmosDbEndpointProducerBuilder connectionSharingAcrossClientsEnabled​(boolean connectionSharingAcrossClientsEnabled)
        Enables connections sharing across multiple Cosmos Clients. The default is false. When you have multiple instances of Cosmos Client in the same JVM interacting to multiple Cosmos accounts, enabling this allows connection sharing in Direct mode if possible between instances of Cosmos Client. Please note, when setting this option, the connection configuration (e.g., socket timeout config, idle timeout config) of the first instantiated client will be used for all other client instances. The option is a: <code>boolean</code> type. Default: false Group: common
        Parameters:
        connectionSharingAcrossClientsEnabled - the value to set
        Returns:
        the dsl builder
      • connectionSharingAcrossClientsEnabled

        default CosmosDbEndpointBuilderFactory.CosmosDbEndpointProducerBuilder connectionSharingAcrossClientsEnabled​(String connectionSharingAcrossClientsEnabled)
        Enables connections sharing across multiple Cosmos Clients. The default is false. When you have multiple instances of Cosmos Client in the same JVM interacting to multiple Cosmos accounts, enabling this allows connection sharing in Direct mode if possible between instances of Cosmos Client. Please note, when setting this option, the connection configuration (e.g., socket timeout config, idle timeout config) of the first instantiated client will be used for all other client instances. The option will be converted to a <code>boolean</code> type. Default: false Group: common
        Parameters:
        connectionSharingAcrossClientsEnabled - the value to set
        Returns:
        the dsl builder
      • consistencyLevel

        default CosmosDbEndpointBuilderFactory.CosmosDbEndpointProducerBuilder consistencyLevel​(CosmosDbEndpointBuilderFactory.ConsistencyLevel consistencyLevel)
        Sets the consistency levels supported for Azure Cosmos DB client operations in the Azure Cosmos DB service. The requested ConsistencyLevel must match or be weaker than that provisioned for the database account. Consistency levels by order of strength are STRONG, BOUNDED_STALENESS, SESSION and EVENTUAL. Refer to consistency level documentation for additional details: https://docs.microsoft.com/en-us/azure/cosmos-db/consistency-levels. The option is a: <code>com.azure.cosmos.ConsistencyLevel</code> type. Default: SESSION Group: common
        Parameters:
        consistencyLevel - the value to set
        Returns:
        the dsl builder
      • consistencyLevel

        default CosmosDbEndpointBuilderFactory.CosmosDbEndpointProducerBuilder consistencyLevel​(String consistencyLevel)
        Sets the consistency levels supported for Azure Cosmos DB client operations in the Azure Cosmos DB service. The requested ConsistencyLevel must match or be weaker than that provisioned for the database account. Consistency levels by order of strength are STRONG, BOUNDED_STALENESS, SESSION and EVENTUAL. Refer to consistency level documentation for additional details: https://docs.microsoft.com/en-us/azure/cosmos-db/consistency-levels. The option will be converted to a <code>com.azure.cosmos.ConsistencyLevel</code> type. Default: SESSION Group: common
        Parameters:
        consistencyLevel - the value to set
        Returns:
        the dsl builder
      • containerPartitionKeyPath

        default CosmosDbEndpointBuilderFactory.CosmosDbEndpointProducerBuilder containerPartitionKeyPath​(String containerPartitionKeyPath)
        Sets the container partition key path. The option is a: <code>java.lang.String</code> type. Group: common
        Parameters:
        containerPartitionKeyPath - the value to set
        Returns:
        the dsl builder
      • contentResponseOnWriteEnabled

        default CosmosDbEndpointBuilderFactory.CosmosDbEndpointProducerBuilder contentResponseOnWriteEnabled​(boolean contentResponseOnWriteEnabled)
        Sets the boolean to only return the headers and status code in Cosmos DB response in case of Create, Update and Delete operations on CosmosItem. In Consumer, it is enabled by default because of the ChangeFeed in the consumer that needs this flag to be enabled and thus is shouldn't be overridden. In Producer, it advised to disable it since it reduces the network overhead. The option is a: <code>boolean</code> type. Default: true Group: common
        Parameters:
        contentResponseOnWriteEnabled - the value to set
        Returns:
        the dsl builder
      • contentResponseOnWriteEnabled

        default CosmosDbEndpointBuilderFactory.CosmosDbEndpointProducerBuilder contentResponseOnWriteEnabled​(String contentResponseOnWriteEnabled)
        Sets the boolean to only return the headers and status code in Cosmos DB response in case of Create, Update and Delete operations on CosmosItem. In Consumer, it is enabled by default because of the ChangeFeed in the consumer that needs this flag to be enabled and thus is shouldn't be overridden. In Producer, it advised to disable it since it reduces the network overhead. The option will be converted to a <code>boolean</code> type. Default: true Group: common
        Parameters:
        contentResponseOnWriteEnabled - the value to set
        Returns:
        the dsl builder
      • cosmosAsyncClient

        default CosmosDbEndpointBuilderFactory.CosmosDbEndpointProducerBuilder cosmosAsyncClient​(Object cosmosAsyncClient)
        Inject an external CosmosAsyncClient into the component which provides a client-side logical representation of the Azure Cosmos DB service. This asynchronous client is used to configure and execute requests against the service. The option is a: <code>com.azure.cosmos.CosmosAsyncClient</code> type. Group: common
        Parameters:
        cosmosAsyncClient - the value to set
        Returns:
        the dsl builder
      • cosmosAsyncClient

        default CosmosDbEndpointBuilderFactory.CosmosDbEndpointProducerBuilder cosmosAsyncClient​(String cosmosAsyncClient)
        Inject an external CosmosAsyncClient into the component which provides a client-side logical representation of the Azure Cosmos DB service. This asynchronous client is used to configure and execute requests against the service. The option will be converted to a <code>com.azure.cosmos.CosmosAsyncClient</code> type. Group: common
        Parameters:
        cosmosAsyncClient - the value to set
        Returns:
        the dsl builder
      • createContainerIfNotExists

        default CosmosDbEndpointBuilderFactory.CosmosDbEndpointProducerBuilder createContainerIfNotExists​(boolean createContainerIfNotExists)
        Sets if the component should create Cosmos container automatically in case it doesn't exist in Cosmos database. The option is a: <code>boolean</code> type. Default: false Group: common
        Parameters:
        createContainerIfNotExists - the value to set
        Returns:
        the dsl builder
      • createContainerIfNotExists

        default CosmosDbEndpointBuilderFactory.CosmosDbEndpointProducerBuilder createContainerIfNotExists​(String createContainerIfNotExists)
        Sets if the component should create Cosmos container automatically in case it doesn't exist in Cosmos database. The option will be converted to a <code>boolean</code> type. Default: false Group: common
        Parameters:
        createContainerIfNotExists - the value to set
        Returns:
        the dsl builder
      • createDatabaseIfNotExists

        default CosmosDbEndpointBuilderFactory.CosmosDbEndpointProducerBuilder createDatabaseIfNotExists​(boolean createDatabaseIfNotExists)
        Sets if the component should create Cosmos database automatically in case it doesn't exist in Cosmos account. The option is a: <code>boolean</code> type. Default: false Group: common
        Parameters:
        createDatabaseIfNotExists - the value to set
        Returns:
        the dsl builder
      • createDatabaseIfNotExists

        default CosmosDbEndpointBuilderFactory.CosmosDbEndpointProducerBuilder createDatabaseIfNotExists​(String createDatabaseIfNotExists)
        Sets if the component should create Cosmos database automatically in case it doesn't exist in Cosmos account. The option will be converted to a <code>boolean</code> type. Default: false Group: common
        Parameters:
        createDatabaseIfNotExists - the value to set
        Returns:
        the dsl builder
      • databaseEndpoint

        default CosmosDbEndpointBuilderFactory.CosmosDbEndpointProducerBuilder databaseEndpoint​(String databaseEndpoint)
        Sets the Azure Cosmos database endpoint the component will connect to. The option is a: <code>java.lang.String</code> type. Required: true Group: common
        Parameters:
        databaseEndpoint - the value to set
        Returns:
        the dsl builder
      • multipleWriteRegionsEnabled

        default CosmosDbEndpointBuilderFactory.CosmosDbEndpointProducerBuilder multipleWriteRegionsEnabled​(boolean multipleWriteRegionsEnabled)
        Sets the flag to enable writes on any regions for geo-replicated database accounts in the Azure Cosmos DB service. When the value of this property is true, the SDK will direct write operations to available writable regions of geo-replicated database account. Writable regions are ordered by PreferredRegions property. Setting the property value to true has no effect until EnableMultipleWriteRegions in DatabaseAccount is also set to true. DEFAULT value is true indicating that writes are directed to available writable regions of geo-replicated database account. The option is a: <code>boolean</code> type. Default: true Group: common
        Parameters:
        multipleWriteRegionsEnabled - the value to set
        Returns:
        the dsl builder
      • multipleWriteRegionsEnabled

        default CosmosDbEndpointBuilderFactory.CosmosDbEndpointProducerBuilder multipleWriteRegionsEnabled​(String multipleWriteRegionsEnabled)
        Sets the flag to enable writes on any regions for geo-replicated database accounts in the Azure Cosmos DB service. When the value of this property is true, the SDK will direct write operations to available writable regions of geo-replicated database account. Writable regions are ordered by PreferredRegions property. Setting the property value to true has no effect until EnableMultipleWriteRegions in DatabaseAccount is also set to true. DEFAULT value is true indicating that writes are directed to available writable regions of geo-replicated database account. The option will be converted to a <code>boolean</code> type. Default: true Group: common
        Parameters:
        multipleWriteRegionsEnabled - the value to set
        Returns:
        the dsl builder
      • preferredRegions

        default CosmosDbEndpointBuilderFactory.CosmosDbEndpointProducerBuilder preferredRegions​(List<String> preferredRegions)
        Sets the preferred regions for geo-replicated database accounts. For example, East US as the preferred region. When EnableEndpointDiscovery is true and PreferredRegions is non-empty, the SDK will prefer to use the regions in the container in the order they are specified to perform operations. The option is a: <code>java.util.List&lt;java.lang.String&gt;</code> type. Group: common
        Parameters:
        preferredRegions - the value to set
        Returns:
        the dsl builder
      • preferredRegions

        default CosmosDbEndpointBuilderFactory.CosmosDbEndpointProducerBuilder preferredRegions​(String preferredRegions)
        Sets the preferred regions for geo-replicated database accounts. For example, East US as the preferred region. When EnableEndpointDiscovery is true and PreferredRegions is non-empty, the SDK will prefer to use the regions in the container in the order they are specified to perform operations. The option will be converted to a <code>java.util.List&lt;java.lang.String&gt;</code> type. Group: common
        Parameters:
        preferredRegions - the value to set
        Returns:
        the dsl builder
      • readRequestsFallbackEnabled

        default CosmosDbEndpointBuilderFactory.CosmosDbEndpointProducerBuilder readRequestsFallbackEnabled​(boolean readRequestsFallbackEnabled)
        Sets whether to allow for reads to go to multiple regions configured on an account of Azure Cosmos DB service. DEFAULT value is true. If this property is not set, the default is true for all Consistency Levels other than Bounded Staleness, The default is false for Bounded Staleness. 1. endpointDiscoveryEnabled is true 2. the Azure Cosmos DB account has more than one region. The option is a: <code>boolean</code> type. Default: true Group: common
        Parameters:
        readRequestsFallbackEnabled - the value to set
        Returns:
        the dsl builder
      • readRequestsFallbackEnabled

        default CosmosDbEndpointBuilderFactory.CosmosDbEndpointProducerBuilder readRequestsFallbackEnabled​(String readRequestsFallbackEnabled)
        Sets whether to allow for reads to go to multiple regions configured on an account of Azure Cosmos DB service. DEFAULT value is true. If this property is not set, the default is true for all Consistency Levels other than Bounded Staleness, The default is false for Bounded Staleness. 1. endpointDiscoveryEnabled is true 2. the Azure Cosmos DB account has more than one region. The option will be converted to a <code>boolean</code> type. Default: true Group: common
        Parameters:
        readRequestsFallbackEnabled - the value to set
        Returns:
        the dsl builder
      • throughputProperties

        default CosmosDbEndpointBuilderFactory.CosmosDbEndpointProducerBuilder throughputProperties​(Object throughputProperties)
        Sets throughput of the resources in the Azure Cosmos DB service. The option is a: <code>com.azure.cosmos.models.ThroughputProperties</code> type. Group: common
        Parameters:
        throughputProperties - the value to set
        Returns:
        the dsl builder
      • throughputProperties

        default CosmosDbEndpointBuilderFactory.CosmosDbEndpointProducerBuilder throughputProperties​(String throughputProperties)
        Sets throughput of the resources in the Azure Cosmos DB service. The option will be converted to a <code>com.azure.cosmos.models.ThroughputProperties</code> type. Group: common
        Parameters:
        throughputProperties - the value to set
        Returns:
        the dsl builder
      • itemPartitionKey

        default CosmosDbEndpointBuilderFactory.CosmosDbEndpointProducerBuilder itemPartitionKey​(Object itemPartitionKey)
        Sets partition key. Represents a partition key value in the Azure Cosmos DB database service. A partition key identifies the partition where the item is stored in. The option is a: <code>com.azure.cosmos.models.PartitionKey</code> type. Group: producer
        Parameters:
        itemPartitionKey - the value to set
        Returns:
        the dsl builder
      • itemPartitionKey

        default CosmosDbEndpointBuilderFactory.CosmosDbEndpointProducerBuilder itemPartitionKey​(String itemPartitionKey)
        Sets partition key. Represents a partition key value in the Azure Cosmos DB database service. A partition key identifies the partition where the item is stored in. The option will be converted to a <code>com.azure.cosmos.models.PartitionKey</code> type. Group: producer
        Parameters:
        itemPartitionKey - the value to set
        Returns:
        the dsl builder
      • lazyStartProducer

        default CosmosDbEndpointBuilderFactory.CosmosDbEndpointProducerBuilder lazyStartProducer​(boolean lazyStartProducer)
        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
        Parameters:
        lazyStartProducer - the value to set
        Returns:
        the dsl builder
      • lazyStartProducer

        default CosmosDbEndpointBuilderFactory.CosmosDbEndpointProducerBuilder lazyStartProducer​(String lazyStartProducer)
        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
        Parameters:
        lazyStartProducer - the value to set
        Returns:
        the dsl builder
      • operation

        default CosmosDbEndpointBuilderFactory.CosmosDbEndpointProducerBuilder operation​(String operation)
        The CosmosDB operation that can be used with this component on the producer. The option will be converted to a <code>org.apache.camel.component.azure.cosmosdb.CosmosDbOperationsDefinition</code> type. Default: listDatabases Group: producer
        Parameters:
        operation - the value to set
        Returns:
        the dsl builder
      • query

        default CosmosDbEndpointBuilderFactory.CosmosDbEndpointProducerBuilder query​(String query)
        An SQL query to execute on a given resources. To learn more about Cosmos SQL API, check this link {link https://docs.microsoft.com/en-us/azure/cosmos-db/sql-query-getting-started}. The option is a: <code>java.lang.String</code> type. Group: producer
        Parameters:
        query - the value to set
        Returns:
        the dsl builder
      • queryRequestOptions

        default CosmosDbEndpointBuilderFactory.CosmosDbEndpointProducerBuilder queryRequestOptions​(Object queryRequestOptions)
        Set additional QueryRequestOptions that can be used with queryItems, queryContainers, queryDatabases, listDatabases, listItems, listContainers operations. The option is a: <code>com.azure.cosmos.models.CosmosQueryRequestOptions</code> type. Group: producer
        Parameters:
        queryRequestOptions - the value to set
        Returns:
        the dsl builder
      • queryRequestOptions

        default CosmosDbEndpointBuilderFactory.CosmosDbEndpointProducerBuilder queryRequestOptions​(String queryRequestOptions)
        Set additional QueryRequestOptions that can be used with queryItems, queryContainers, queryDatabases, listDatabases, listItems, listContainers operations. The option will be converted to a <code>com.azure.cosmos.models.CosmosQueryRequestOptions</code> type. Group: producer
        Parameters:
        queryRequestOptions - the value to set
        Returns:
        the dsl builder
      • accountKey

        default CosmosDbEndpointBuilderFactory.CosmosDbEndpointProducerBuilder accountKey​(String accountKey)
        Sets either a master or readonly key used to perform authentication for accessing resource. The option is a: <code>java.lang.String</code> type. Required: true Group: security
        Parameters:
        accountKey - the value to set
        Returns:
        the dsl builder