couchbase 4.2.8-dev.1 → 4.2.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CMakeLists.txt +1 -1
- package/deps/couchbase-cxx-cache/mozilla-ca-bundle.crt +139 -56
- package/deps/couchbase-cxx-cache/mozilla-ca-bundle.sha256 +1 -1
- package/deps/couchbase-cxx-client/CMakeLists.txt +397 -424
- package/deps/couchbase-cxx-client/core/agent_config.hxx +1 -1
- package/deps/couchbase-cxx-client/core/agent_group.cxx +0 -1
- package/deps/couchbase-cxx-client/core/agent_group.hxx +9 -0
- package/deps/couchbase-cxx-client/core/agent_group_config.hxx +1 -1
- package/deps/couchbase-cxx-client/core/bucket.cxx +22 -8
- package/deps/couchbase-cxx-client/core/bucket.hxx +3 -1
- package/deps/couchbase-cxx-client/core/cluster.cxx +1453 -108
- package/deps/couchbase-cxx-client/core/cluster.hxx +183 -473
- package/deps/couchbase-cxx-client/core/cluster_agent_config.hxx +1 -1
- package/deps/couchbase-cxx-client/core/cluster_options.cxx +12 -2
- package/deps/couchbase-cxx-client/core/cluster_options.hxx +9 -8
- package/deps/couchbase-cxx-client/core/config_profiles.cxx +2 -2
- package/deps/couchbase-cxx-client/core/config_profiles.hxx +1 -1
- package/deps/couchbase-cxx-client/core/core_sdk_shim.cxx +1 -2
- package/deps/couchbase-cxx-client/core/core_sdk_shim.hxx +3 -2
- package/deps/couchbase-cxx-client/core/diagnostics.hxx +0 -1
- package/deps/couchbase-cxx-client/core/dispatcher.cxx +2 -2
- package/deps/couchbase-cxx-client/core/impl/analytics.cxx +38 -76
- package/deps/couchbase-cxx-client/core/impl/analytics.hxx +40 -0
- package/deps/couchbase-cxx-client/core/impl/analytics_index_manager.cxx +820 -0
- package/deps/couchbase-cxx-client/core/impl/binary_collection.cxx +403 -0
- package/deps/couchbase-cxx-client/core/impl/bucket.cxx +78 -0
- package/deps/couchbase-cxx-client/core/impl/bucket_manager.cxx +433 -0
- package/deps/couchbase-cxx-client/core/impl/cluster.cxx +226 -44
- package/deps/couchbase-cxx-client/core/impl/collection.cxx +1384 -0
- package/deps/couchbase-cxx-client/core/impl/collection_manager.cxx +306 -0
- package/deps/couchbase-cxx-client/core/impl/configuration_profiles_registry.cxx +3 -1
- package/deps/couchbase-cxx-client/core/impl/dns_srv_tracker.cxx +2 -0
- package/deps/couchbase-cxx-client/core/{operations/mcbp_noop.cxx → impl/doc_id_query.cxx} +19 -15
- package/deps/couchbase-cxx-client/core/impl/key_value_error_category.cxx +4 -2
- package/deps/couchbase-cxx-client/core/impl/lookup_in_all_replicas.hxx +0 -10
- package/deps/couchbase-cxx-client/core/impl/lookup_in_any_replica.hxx +0 -10
- package/deps/couchbase-cxx-client/core/impl/observe_poll.cxx +24 -17
- package/deps/couchbase-cxx-client/core/impl/observe_poll.hxx +1 -1
- package/deps/couchbase-cxx-client/core/impl/query.cxx +45 -68
- package/deps/couchbase-cxx-client/core/impl/query.hxx +34 -0
- package/deps/couchbase-cxx-client/core/impl/query_index_manager.cxx +628 -0
- package/deps/couchbase-cxx-client/core/impl/scope.cxx +172 -0
- package/deps/couchbase-cxx-client/core/impl/search.cxx +12 -61
- package/deps/couchbase-cxx-client/core/impl/search.hxx +37 -0
- package/deps/couchbase-cxx-client/core/impl/search_index_manager.cxx +469 -0
- package/deps/couchbase-cxx-client/core/impl/search_row_location.cxx +12 -0
- package/deps/couchbase-cxx-client/core/impl/search_sort_geo_distance.cxx +87 -0
- package/deps/couchbase-cxx-client/core/impl/with_legacy_durability.hxx +23 -25
- package/deps/couchbase-cxx-client/core/io/dns_config.cxx +28 -0
- package/deps/couchbase-cxx-client/core/io/dns_config.hxx +6 -25
- package/deps/couchbase-cxx-client/core/io/http_session_manager.hxx +9 -1
- package/deps/couchbase-cxx-client/core/io/mcbp_command.hxx +1 -1
- package/deps/couchbase-cxx-client/core/io/mcbp_message.hxx +3 -2
- package/deps/couchbase-cxx-client/core/io/mcbp_session.cxx +51 -21
- package/deps/couchbase-cxx-client/core/io/mcbp_session.hxx +2 -1
- package/deps/couchbase-cxx-client/core/logger/logger.hxx +4 -4
- package/deps/couchbase-cxx-client/core/management/bucket_settings.hxx +1 -1
- package/deps/couchbase-cxx-client/core/mcbp/packet.cxx +1 -1
- package/deps/couchbase-cxx-client/core/mcbp/queue_callback.hxx +1 -1
- package/deps/couchbase-cxx-client/core/meta/features.hxx +28 -0
- package/deps/couchbase-cxx-client/core/operations/document_query.cxx +17 -1
- package/deps/couchbase-cxx-client/core/operations/document_query.hxx +1 -1
- package/deps/couchbase-cxx-client/core/operations/management/analytics_dataset_create.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/analytics_dataset_drop.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/analytics_dataverse_create.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/analytics_dataverse_drop.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/analytics_get_pending_mutations.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/analytics_index_drop.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/analytics_link_connect.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/analytics_link_disconnect.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/analytics_link_drop.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/analytics_link_get_all.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/bucket_create.cxx +1 -1
- package/deps/couchbase-cxx-client/core/operations/management/bucket_describe.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/bucket_drop.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/bucket_flush.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/bucket_get.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/change_password.cxx +3 -1
- package/deps/couchbase-cxx-client/core/operations/management/collection_create.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/collection_drop.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/collection_update.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/error_utils.cxx +6 -5
- package/deps/couchbase-cxx-client/core/operations/management/eventing_deploy_function.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/eventing_drop_function.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/eventing_get_function.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/eventing_pause_function.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/eventing_resume_function.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/eventing_undeploy_function.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/eventing_upsert_function.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/group_drop.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/group_get.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/group_get_all.cxx +1 -1
- package/deps/couchbase-cxx-client/core/operations/management/query_index_build_deferred.hxx +2 -2
- package/deps/couchbase-cxx-client/core/operations/management/query_index_create.cxx +4 -1
- package/deps/couchbase-cxx-client/core/operations/management/query_index_drop.cxx +4 -1
- package/deps/couchbase-cxx-client/core/operations/management/query_index_get_all.cxx +1 -1
- package/deps/couchbase-cxx-client/core/operations/management/query_index_get_all.hxx +1 -1
- package/deps/couchbase-cxx-client/core/operations/management/scope_create.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/scope_drop.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/scope_get_all.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/search_get_stats.cxx +4 -4
- package/deps/couchbase-cxx-client/core/operations/management/search_get_stats.hxx +4 -4
- package/deps/couchbase-cxx-client/core/operations/management/search_index_analyze_document.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/search_index_control_ingest.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/search_index_control_plan_freeze.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/search_index_control_query.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/search_index_drop.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/search_index_get.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/search_index_get_all.cxx +1 -1
- package/deps/couchbase-cxx-client/core/operations/management/search_index_get_documents_count.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/search_index_get_stats.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/search_index_upsert.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/view_index_drop.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/view_index_get.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/view_index_get_all.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations/management/view_index_upsert.cxx +2 -0
- package/deps/couchbase-cxx-client/core/operations.hxx +0 -1
- package/deps/couchbase-cxx-client/core/operations_fwd.hxx +260 -0
- package/deps/couchbase-cxx-client/core/origin.cxx +146 -5
- package/deps/couchbase-cxx-client/core/origin.hxx +30 -140
- package/deps/couchbase-cxx-client/core/protocol/cmd_cluster_map_change_notification.hxx +3 -3
- package/deps/couchbase-cxx-client/core/protocol/cmd_hello.hxx +5 -0
- package/deps/couchbase-cxx-client/core/protocol/cmd_observe_seqno.hxx +4 -4
- package/deps/couchbase-cxx-client/core/protocol/hello_feature.hxx +6 -0
- package/deps/couchbase-cxx-client/core/protocol/hello_feature_fmt.hxx +3 -0
- package/deps/couchbase-cxx-client/core/protocol/status.cxx +6 -0
- package/deps/couchbase-cxx-client/core/protocol/status.hxx +1 -0
- package/deps/couchbase-cxx-client/core/query_context.hxx +11 -7
- package/deps/couchbase-cxx-client/core/range_scan_orchestrator.cxx +1 -1
- package/deps/couchbase-cxx-client/core/topology/configuration.cxx +23 -0
- package/deps/couchbase-cxx-client/core/topology/configuration.hxx +8 -12
- package/deps/couchbase-cxx-client/core/topology/configuration_fmt.hxx +3 -3
- package/deps/couchbase-cxx-client/core/topology/configuration_json.hxx +2 -0
- package/deps/couchbase-cxx-client/core/topology/error_map.hxx +2 -2
- package/deps/couchbase-cxx-client/core/topology/error_map_json.hxx +4 -0
- package/deps/couchbase-cxx-client/core/transactions/active_transaction_record.cxx +58 -0
- package/deps/couchbase-cxx-client/core/transactions/active_transaction_record.hxx +5 -40
- package/deps/couchbase-cxx-client/core/transactions/async_attempt_context.cxx +30 -0
- package/deps/couchbase-cxx-client/core/transactions/atr_cleanup_entry.cxx +18 -18
- package/deps/couchbase-cxx-client/core/transactions/attempt_context.cxx +36 -0
- package/deps/couchbase-cxx-client/core/transactions/attempt_context_impl.cxx +39 -41
- package/deps/couchbase-cxx-client/core/transactions/attempt_context_impl.hxx +2 -2
- package/deps/couchbase-cxx-client/core/transactions/internal/atr_cleanup_entry.hxx +3 -1
- package/deps/couchbase-cxx-client/core/transactions/internal/atr_entry.hxx +2 -0
- package/deps/couchbase-cxx-client/core/transactions/internal/doc_record.cxx +32 -0
- package/deps/couchbase-cxx-client/core/transactions/internal/doc_record.hxx +4 -30
- package/deps/couchbase-cxx-client/core/transactions/internal/doc_record_fmt.hxx +41 -0
- package/deps/couchbase-cxx-client/core/transactions/internal/logging.hxx +17 -15
- package/deps/couchbase-cxx-client/core/transactions/internal/transaction_context.hxx +1 -1
- package/deps/couchbase-cxx-client/core/transactions/internal/transactions_cleanup.hxx +4 -4
- package/deps/couchbase-cxx-client/core/transactions/internal/utils.hxx +1 -13
- package/deps/couchbase-cxx-client/core/transactions/result.hxx +0 -26
- package/deps/couchbase-cxx-client/core/transactions/result_fmt.hxx +46 -0
- package/deps/couchbase-cxx-client/core/transactions/staged_mutation.cxx +16 -14
- package/deps/couchbase-cxx-client/core/transactions/transaction_context.cxx +6 -6
- package/deps/couchbase-cxx-client/core/transactions/transaction_keyspace.cxx +48 -0
- package/deps/couchbase-cxx-client/core/transactions/transaction_links.hxx +1 -0
- package/deps/couchbase-cxx-client/core/transactions/transaction_options.cxx +61 -4
- package/deps/couchbase-cxx-client/core/transactions/transactions.cxx +9 -8
- package/deps/couchbase-cxx-client/core/transactions/transactions_cleanup.cxx +9 -16
- package/deps/couchbase-cxx-client/core/transactions/transactions_config.cxx +7 -6
- package/deps/couchbase-cxx-client/core/transactions.hxx +6 -5
- package/deps/couchbase-cxx-client/core/utils/join_strings.hxx +4 -3
- package/deps/couchbase-cxx-client/core/utils/keyspace.hxx +4 -4
- package/deps/couchbase-cxx-client/couchbase/allow_querying_search_index_options.hxx +44 -0
- package/deps/couchbase-cxx-client/couchbase/analytics_index_manager.hxx +463 -0
- package/deps/couchbase-cxx-client/couchbase/analyze_document_options.hxx +44 -0
- package/deps/couchbase-cxx-client/couchbase/append_options.hxx +0 -24
- package/deps/couchbase-cxx-client/couchbase/behavior_options.hxx +1 -1
- package/deps/couchbase-cxx-client/couchbase/binary_collection.hxx +19 -115
- package/deps/couchbase-cxx-client/couchbase/bucket.hxx +13 -30
- package/deps/couchbase-cxx-client/couchbase/bucket_manager.hxx +8 -7
- package/deps/couchbase-cxx-client/couchbase/build_query_index_options.hxx +0 -1
- package/deps/couchbase-cxx-client/couchbase/cluster.hxx +41 -73
- package/deps/couchbase-cxx-client/couchbase/cluster_options.hxx +1 -27
- package/deps/couchbase-cxx-client/couchbase/collection.hxx +176 -386
- package/deps/couchbase-cxx-client/couchbase/collection_manager.hxx +8 -9
- package/deps/couchbase-cxx-client/couchbase/collection_query_index_manager.hxx +21 -24
- package/deps/couchbase-cxx-client/couchbase/connect_link_analytics_options.hxx +116 -0
- package/deps/couchbase-cxx-client/couchbase/create_bucket_options.hxx +3 -3
- package/deps/couchbase-cxx-client/couchbase/create_collection_options.hxx +3 -2
- package/deps/couchbase-cxx-client/couchbase/create_dataset_analytics_options.hxx +120 -0
- package/deps/couchbase-cxx-client/couchbase/create_dataverse_analytics_options.hxx +85 -0
- package/deps/couchbase-cxx-client/couchbase/create_index_analytics_options.hxx +103 -0
- package/deps/couchbase-cxx-client/couchbase/create_link_analytics_options.hxx +63 -0
- package/deps/couchbase-cxx-client/couchbase/decrement_options.hxx +0 -23
- package/deps/couchbase-cxx-client/couchbase/disallow_querying_search_index_options.hxx +43 -0
- package/deps/couchbase-cxx-client/couchbase/disconnect_link_analytics_options.hxx +105 -0
- package/deps/couchbase-cxx-client/couchbase/drop_dataset_analytics_options.hxx +103 -0
- package/deps/couchbase-cxx-client/couchbase/drop_dataverse_analytics_options.hxx +84 -0
- package/deps/couchbase-cxx-client/couchbase/drop_index_analytics_options.hxx +103 -0
- package/deps/couchbase-cxx-client/couchbase/drop_link_analytics_options.hxx +63 -0
- package/deps/couchbase-cxx-client/couchbase/drop_search_index_options.hxx +43 -0
- package/deps/couchbase-cxx-client/couchbase/error_codes.hxx +22 -1
- package/deps/couchbase-cxx-client/couchbase/exists_options.hxx +0 -23
- package/deps/couchbase-cxx-client/couchbase/fmt/key_value_error_map_attribute.hxx +6 -0
- package/deps/couchbase-cxx-client/couchbase/fmt/key_value_status_code.hxx +3 -0
- package/deps/couchbase-cxx-client/couchbase/fmt/transaction_keyspace.hxx +37 -0
- package/deps/couchbase-cxx-client/couchbase/freeze_plan_search_index_options.hxx +43 -0
- package/deps/couchbase-cxx-client/couchbase/get_all_datasets_analytics_options.hxx +66 -0
- package/deps/couchbase-cxx-client/couchbase/get_all_indexes_analytics_options.hxx +65 -0
- package/deps/couchbase-cxx-client/couchbase/get_all_query_indexes_options.hxx +1 -4
- package/deps/couchbase-cxx-client/couchbase/get_all_replicas_options.hxx +0 -23
- package/deps/couchbase-cxx-client/couchbase/get_all_search_indexes_options.hxx +45 -0
- package/deps/couchbase-cxx-client/couchbase/get_and_lock_options.hxx +0 -24
- package/deps/couchbase-cxx-client/couchbase/get_and_touch_options.hxx +0 -24
- package/deps/couchbase-cxx-client/couchbase/get_any_replica_options.hxx +0 -23
- package/deps/couchbase-cxx-client/couchbase/get_indexed_search_index_options.hxx +43 -0
- package/deps/couchbase-cxx-client/couchbase/get_links_analytics_options.hxx +121 -0
- package/deps/couchbase-cxx-client/couchbase/get_options.hxx +0 -23
- package/deps/couchbase-cxx-client/couchbase/get_pending_mutations_analytics_options.hxx +67 -0
- package/deps/couchbase-cxx-client/couchbase/get_search_index_options.hxx +44 -0
- package/deps/couchbase-cxx-client/couchbase/increment_options.hxx +0 -23
- package/deps/couchbase-cxx-client/couchbase/insert_options.hxx +0 -24
- package/deps/couchbase-cxx-client/couchbase/key_value_error_map_attribute.hxx +12 -0
- package/deps/couchbase-cxx-client/couchbase/key_value_status_code.hxx +1 -0
- package/deps/couchbase-cxx-client/couchbase/lookup_in_options.hxx +0 -24
- package/deps/couchbase-cxx-client/couchbase/management/analytics_dataset.hxx +48 -0
- package/deps/couchbase-cxx-client/couchbase/management/analytics_index.hxx +48 -0
- package/deps/couchbase-cxx-client/couchbase/management/analytics_link.hxx +239 -0
- package/deps/couchbase-cxx-client/couchbase/management/query_index.hxx +3 -3
- package/deps/couchbase-cxx-client/couchbase/management/search_index.hxx +40 -0
- package/deps/couchbase-cxx-client/couchbase/manager_error_context.hxx +0 -1
- package/deps/couchbase-cxx-client/couchbase/mutate_in_options.hxx +0 -24
- package/deps/couchbase-cxx-client/couchbase/network_options.hxx +1 -1
- package/deps/couchbase-cxx-client/couchbase/pause_ingest_search_index_options.hxx +43 -0
- package/deps/couchbase-cxx-client/couchbase/phrase_query.hxx +19 -0
- package/deps/couchbase-cxx-client/couchbase/prepend_options.hxx +0 -24
- package/deps/couchbase-cxx-client/couchbase/query_index_manager.hxx +99 -20
- package/deps/couchbase-cxx-client/couchbase/query_options.hxx +0 -21
- package/deps/couchbase-cxx-client/couchbase/remove_options.hxx +0 -23
- package/deps/couchbase-cxx-client/couchbase/replace_link_analytics_options.hxx +63 -0
- package/deps/couchbase-cxx-client/couchbase/replace_options.hxx +0 -24
- package/deps/couchbase-cxx-client/couchbase/resume_ingest_search_index_options.hxx +43 -0
- package/deps/couchbase-cxx-client/couchbase/scope.hxx +13 -45
- package/deps/couchbase-cxx-client/couchbase/search_facet_result.hxx +1 -7
- package/deps/couchbase-cxx-client/couchbase/search_geo_distance_units.hxx +26 -0
- package/deps/couchbase-cxx-client/couchbase/search_index_manager.hxx +292 -0
- package/deps/couchbase-cxx-client/couchbase/search_row_location.hxx +10 -0
- package/deps/couchbase-cxx-client/couchbase/search_sort_geo_distance.hxx +84 -0
- package/deps/couchbase-cxx-client/couchbase/security_options.hxx +1 -1
- package/deps/couchbase-cxx-client/couchbase/touch_options.hxx +0 -24
- package/deps/couchbase-cxx-client/couchbase/tracing/request_tracer.hxx +1 -1
- package/deps/couchbase-cxx-client/couchbase/transactions/async_attempt_context.hxx +10 -7
- package/deps/couchbase-cxx-client/couchbase/transactions/attempt_context.hxx +10 -10
- package/deps/couchbase-cxx-client/couchbase/transactions/transaction_keyspace.hxx +8 -58
- package/deps/couchbase-cxx-client/couchbase/transactions/transaction_options.hxx +28 -70
- package/deps/couchbase-cxx-client/couchbase/transactions/transaction_query_options.hxx +7 -2
- package/deps/couchbase-cxx-client/couchbase/transactions/transactions_cleanup_config.hxx +2 -1
- package/deps/couchbase-cxx-client/couchbase/transactions/transactions_config.hxx +11 -38
- package/deps/couchbase-cxx-client/couchbase/unfreeze_plan_search_index_options.hxx +43 -0
- package/deps/couchbase-cxx-client/couchbase/unlock_options.hxx +0 -24
- package/deps/couchbase-cxx-client/couchbase/upsert_options.hxx +0 -24
- package/deps/couchbase-cxx-client/couchbase/upsert_search_index_options.hxx +41 -0
- package/dist/binding.d.ts +7 -9
- package/dist/bindingutilities.js +2 -0
- package/dist/collection.js +3 -3
- package/dist/errors.d.ts +9 -0
- package/dist/errors.js +14 -2
- package/dist/transactions.d.ts +2 -0
- package/dist/transactions.js +2 -3
- package/dist/usermanager.js +1 -1
- package/package.json +7 -7
- package/src/binding.cpp +1 -0
- package/src/connection.cpp +12 -9
- package/src/connection.hpp +3 -3
- package/src/connection_autogen.cpp +7 -5
- package/src/constants.cpp +3 -0
- package/src/instance.cpp +2 -2
- package/src/instance.hpp +1 -1
- package/src/jstocbpp_autogen.hpp +21 -38
- package/src/jstocbpp_basic.hpp +2 -0
- package/src/jstocbpp_errors.hpp +1 -0
- package/src/jstocbpp_transactions.hpp +6 -22
- package/src/mutationtoken.hpp +1 -0
- package/tools/gen-bindings-json.py +39 -16
- package/deps/couchbase-cxx-cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/example/CMakeLists.txt +0 -23
- package/deps/couchbase-cxx-cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/example/example.cpp +0 -398
- package/deps/couchbase-cxx-client/core/impl/append.cxx +0 -87
- package/deps/couchbase-cxx-client/core/impl/build_deferred_query_indexes.cxx +0 -157
- package/deps/couchbase-cxx-client/core/impl/create_bucket.cxx +0 -158
- package/deps/couchbase-cxx-client/core/impl/create_collection.cxx +0 -83
- package/deps/couchbase-cxx-client/core/impl/create_query_index.cxx +0 -232
- package/deps/couchbase-cxx-client/core/impl/create_scope.cxx +0 -69
- package/deps/couchbase-cxx-client/core/impl/decrement.cxx +0 -96
- package/deps/couchbase-cxx-client/core/impl/drop_bucket.cxx +0 -66
- package/deps/couchbase-cxx-client/core/impl/drop_collection.cxx +0 -76
- package/deps/couchbase-cxx-client/core/impl/drop_query_index.cxx +0 -187
- package/deps/couchbase-cxx-client/core/impl/drop_scope.cxx +0 -68
- package/deps/couchbase-cxx-client/core/impl/exists.cxx +0 -47
- package/deps/couchbase-cxx-client/core/impl/flush_bucket.cxx +0 -66
- package/deps/couchbase-cxx-client/core/impl/get.cxx +0 -68
- package/deps/couchbase-cxx-client/core/impl/get_all_buckets.cxx +0 -178
- package/deps/couchbase-cxx-client/core/impl/get_all_query_indexes.cxx +0 -106
- package/deps/couchbase-cxx-client/core/impl/get_all_replicas.cxx +0 -145
- package/deps/couchbase-cxx-client/core/impl/get_all_scopes.cxx +0 -94
- package/deps/couchbase-cxx-client/core/impl/get_and_lock.cxx +0 -49
- package/deps/couchbase-cxx-client/core/impl/get_and_touch.cxx +0 -49
- package/deps/couchbase-cxx-client/core/impl/get_any_replica.cxx +0 -134
- package/deps/couchbase-cxx-client/core/impl/get_bucket.cxx +0 -168
- package/deps/couchbase-cxx-client/core/impl/increment.cxx +0 -96
- package/deps/couchbase-cxx-client/core/impl/insert.cxx +0 -90
- package/deps/couchbase-cxx-client/core/impl/lookup_in.cxx +0 -69
- package/deps/couchbase-cxx-client/core/impl/lookup_in_all_replicas.cxx +0 -178
- package/deps/couchbase-cxx-client/core/impl/lookup_in_any_replica.cxx +0 -169
- package/deps/couchbase-cxx-client/core/impl/mutate_in.cxx +0 -125
- package/deps/couchbase-cxx-client/core/impl/prepend.cxx +0 -87
- package/deps/couchbase-cxx-client/core/impl/remove.cxx +0 -86
- package/deps/couchbase-cxx-client/core/impl/replace.cxx +0 -102
- package/deps/couchbase-cxx-client/core/impl/touch.cxx +0 -49
- package/deps/couchbase-cxx-client/core/impl/unlock.cxx +0 -47
- package/deps/couchbase-cxx-client/core/impl/update_bucket.cxx +0 -133
- package/deps/couchbase-cxx-client/core/impl/update_collection.cxx +0 -83
- package/deps/couchbase-cxx-client/core/impl/upsert.cxx +0 -100
- package/deps/couchbase-cxx-client/core/impl/watch_query_indexes.cxx +0 -196
- package/deps/couchbase-cxx-client/core/operations/mcbp_noop.hxx +0 -49
- /package/deps/couchbase-cxx-client/core/impl/{streaming_json_lexter_error_category.cxx → streaming_json_lexer_error_category.cxx} +0 -0
|
@@ -109,28 +109,4 @@ struct insert_options : public common_durability_options<insert_options> {
|
|
|
109
109
|
* @uncommitted
|
|
110
110
|
*/
|
|
111
111
|
using insert_handler = std::function<void(couchbase::key_value_error_context, mutation_result)>;
|
|
112
|
-
|
|
113
|
-
#ifndef COUCHBASE_CXX_CLIENT_DOXYGEN
|
|
114
|
-
namespace core
|
|
115
|
-
{
|
|
116
|
-
class cluster;
|
|
117
|
-
namespace impl
|
|
118
|
-
{
|
|
119
|
-
|
|
120
|
-
/**
|
|
121
|
-
* @since 1.0.0
|
|
122
|
-
* @internal
|
|
123
|
-
*/
|
|
124
|
-
void
|
|
125
|
-
initiate_insert_operation(std::shared_ptr<couchbase::core::cluster> core,
|
|
126
|
-
std::string bucket_name,
|
|
127
|
-
std::string scope_name,
|
|
128
|
-
std::string collection_name,
|
|
129
|
-
std::string document_key,
|
|
130
|
-
couchbase::codec::encoded_value encoded,
|
|
131
|
-
couchbase::insert_options::built options,
|
|
132
|
-
couchbase::insert_handler&& handler);
|
|
133
|
-
#endif
|
|
134
|
-
} // namespace impl
|
|
135
|
-
} // namespace core
|
|
136
112
|
} // namespace couchbase
|
|
@@ -120,5 +120,17 @@ enum class key_value_error_map_attribute {
|
|
|
120
120
|
* The error is related to rate limitation for the client (version 2)
|
|
121
121
|
*/
|
|
122
122
|
rate_limit,
|
|
123
|
+
|
|
124
|
+
/**
|
|
125
|
+
* The error is related to a system-defined hard limit for resource usage.
|
|
126
|
+
* Retrying the operation will most likely not succeed unless an action was
|
|
127
|
+
* taken on the server to resolve the issue (version 2)
|
|
128
|
+
*/
|
|
129
|
+
system_constraint,
|
|
130
|
+
|
|
131
|
+
/**
|
|
132
|
+
* The client should not retry the operation.
|
|
133
|
+
*/
|
|
134
|
+
no_retry,
|
|
123
135
|
};
|
|
124
136
|
} // namespace couchbase
|
|
@@ -92,28 +92,4 @@ struct lookup_in_options : public common_durability_options<lookup_in_options> {
|
|
|
92
92
|
* @uncommitted
|
|
93
93
|
*/
|
|
94
94
|
using lookup_in_handler = std::function<void(couchbase::subdocument_error_context, lookup_in_result)>;
|
|
95
|
-
|
|
96
|
-
#ifndef COUCHBASE_CXX_CLIENT_DOXYGEN
|
|
97
|
-
namespace core
|
|
98
|
-
{
|
|
99
|
-
class cluster;
|
|
100
|
-
namespace impl
|
|
101
|
-
{
|
|
102
|
-
|
|
103
|
-
/**
|
|
104
|
-
* @since 1.0.0
|
|
105
|
-
* @internal
|
|
106
|
-
*/
|
|
107
|
-
void
|
|
108
|
-
initiate_lookup_in_operation(std::shared_ptr<couchbase::core::cluster> core,
|
|
109
|
-
std::string bucket_name,
|
|
110
|
-
std::string scope_name,
|
|
111
|
-
std::string collection_name,
|
|
112
|
-
std::string document_key,
|
|
113
|
-
const std::vector<couchbase::core::impl::subdoc::command>& specs,
|
|
114
|
-
couchbase::lookup_in_options::built options,
|
|
115
|
-
couchbase::lookup_in_handler&& handler);
|
|
116
|
-
#endif
|
|
117
|
-
} // namespace impl
|
|
118
|
-
} // namespace core
|
|
119
95
|
} // namespace couchbase
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/* -*- Mode: C++; tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- */
|
|
2
|
+
/*
|
|
3
|
+
* Copyright 2023-present Couchbase, Inc.
|
|
4
|
+
*
|
|
5
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
+
* you may not use this file except in compliance with the License.
|
|
7
|
+
* You may obtain a copy of the License at
|
|
8
|
+
*
|
|
9
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
*
|
|
11
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
* See the License for the specific language governing permissions and
|
|
15
|
+
* limitations under the License.
|
|
16
|
+
*/
|
|
17
|
+
|
|
18
|
+
#pragma once
|
|
19
|
+
|
|
20
|
+
#include <string>
|
|
21
|
+
|
|
22
|
+
namespace couchbase::management
|
|
23
|
+
{
|
|
24
|
+
/**
|
|
25
|
+
* Represents a dataset (collection) in the analytics service
|
|
26
|
+
*/
|
|
27
|
+
struct analytics_dataset {
|
|
28
|
+
/**
|
|
29
|
+
* The name of the dataset (collection)
|
|
30
|
+
*/
|
|
31
|
+
std::string name;
|
|
32
|
+
|
|
33
|
+
/**
|
|
34
|
+
* The name of the dataverse (scope) the dataset is stored in
|
|
35
|
+
*/
|
|
36
|
+
std::string dataverse_name;
|
|
37
|
+
|
|
38
|
+
/**
|
|
39
|
+
* The name of the analytics link that is associated with the dataset
|
|
40
|
+
*/
|
|
41
|
+
std::string link_name;
|
|
42
|
+
|
|
43
|
+
/**
|
|
44
|
+
* The name of the bucket that the dataset includes
|
|
45
|
+
*/
|
|
46
|
+
std::string bucket_name;
|
|
47
|
+
};
|
|
48
|
+
} // namespace couchbase::management
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/* -*- Mode: C++; tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- */
|
|
2
|
+
/*
|
|
3
|
+
* Copyright 2023-present Couchbase, Inc.
|
|
4
|
+
*
|
|
5
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
+
* you may not use this file except in compliance with the License.
|
|
7
|
+
* You may obtain a copy of the License at
|
|
8
|
+
*
|
|
9
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
*
|
|
11
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
* See the License for the specific language governing permissions and
|
|
15
|
+
* limitations under the License.
|
|
16
|
+
*/
|
|
17
|
+
|
|
18
|
+
#pragma once
|
|
19
|
+
|
|
20
|
+
#include <string>
|
|
21
|
+
|
|
22
|
+
namespace couchbase::management
|
|
23
|
+
{
|
|
24
|
+
/**
|
|
25
|
+
* Represents an index in the analytics service.
|
|
26
|
+
*/
|
|
27
|
+
struct analytics_index {
|
|
28
|
+
/**
|
|
29
|
+
* The name of the analytics index
|
|
30
|
+
*/
|
|
31
|
+
std::string name;
|
|
32
|
+
|
|
33
|
+
/**
|
|
34
|
+
* The name of the dataset (collection) this index is part of
|
|
35
|
+
*/
|
|
36
|
+
std::string dataset_name;
|
|
37
|
+
|
|
38
|
+
/**
|
|
39
|
+
* The name of the dataverse (scope) this index is part of
|
|
40
|
+
*/
|
|
41
|
+
std::string dataverse_name;
|
|
42
|
+
|
|
43
|
+
/**
|
|
44
|
+
* Whether this index is a primary index
|
|
45
|
+
*/
|
|
46
|
+
bool is_primary;
|
|
47
|
+
};
|
|
48
|
+
} // namespace couchbase::management
|
|
@@ -0,0 +1,239 @@
|
|
|
1
|
+
/* -*- Mode: C++; tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- */
|
|
2
|
+
/*
|
|
3
|
+
* Copyright 2023-present Couchbase, Inc.
|
|
4
|
+
*
|
|
5
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
+
* you may not use this file except in compliance with the License.
|
|
7
|
+
* You may obtain a copy of the License at
|
|
8
|
+
*
|
|
9
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
*
|
|
11
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
* See the License for the specific language governing permissions and
|
|
15
|
+
* limitations under the License.
|
|
16
|
+
*/
|
|
17
|
+
|
|
18
|
+
#pragma once
|
|
19
|
+
|
|
20
|
+
#include <optional>
|
|
21
|
+
#include <string>
|
|
22
|
+
|
|
23
|
+
namespace couchbase::management
|
|
24
|
+
{
|
|
25
|
+
|
|
26
|
+
enum analytics_link_type {
|
|
27
|
+
/**
|
|
28
|
+
* S3 external analytics link. Corresponds to a @ref s3_external_analytics_link
|
|
29
|
+
*/
|
|
30
|
+
s3_external,
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* Azure external analytics link. Corresponds to a @ref azure_blob_external_analytics_link
|
|
34
|
+
*/
|
|
35
|
+
azure_external,
|
|
36
|
+
|
|
37
|
+
/**
|
|
38
|
+
* A remote analytics link that uses a Couchbase data service that is not part of the same cluster as the Analytics service.
|
|
39
|
+
* Corresponds to a @ref couchbase_remote_analytics_link
|
|
40
|
+
*/
|
|
41
|
+
couchbase_remote,
|
|
42
|
+
};
|
|
43
|
+
|
|
44
|
+
enum analytics_encryption_level {
|
|
45
|
+
/**
|
|
46
|
+
* Connect to the remote Couchbase cluster using an unsecured channel. Send the password in plaintext.
|
|
47
|
+
*/
|
|
48
|
+
none,
|
|
49
|
+
|
|
50
|
+
/**
|
|
51
|
+
* Connect to the remote Couchbase cluster using an unsecured channel. Send the password securely using SASL.
|
|
52
|
+
*/
|
|
53
|
+
half,
|
|
54
|
+
|
|
55
|
+
/**
|
|
56
|
+
* Connect to the remote Couchbase cluster using a channel secured by TLS. If a password is used, it is sent over the secure channel.
|
|
57
|
+
*
|
|
58
|
+
* Requires specifying the certificate to trust.
|
|
59
|
+
*/
|
|
60
|
+
full
|
|
61
|
+
};
|
|
62
|
+
|
|
63
|
+
struct analytics_link {
|
|
64
|
+
std::string name;
|
|
65
|
+
std::string dataverse_name;
|
|
66
|
+
|
|
67
|
+
virtual ~analytics_link() = default;
|
|
68
|
+
|
|
69
|
+
/**
|
|
70
|
+
* Returns the type of this analytics link
|
|
71
|
+
*
|
|
72
|
+
* @return the link type
|
|
73
|
+
*/
|
|
74
|
+
[[nodiscard]] virtual analytics_link_type link_type() const = 0;
|
|
75
|
+
|
|
76
|
+
analytics_link() = default;
|
|
77
|
+
analytics_link(std::string name, std::string dataverse_name);
|
|
78
|
+
};
|
|
79
|
+
|
|
80
|
+
struct couchbase_analytics_encryption_settings {
|
|
81
|
+
/**
|
|
82
|
+
* Specifies what level of encryption should be applied
|
|
83
|
+
*/
|
|
84
|
+
analytics_encryption_level encryption_level{ analytics_encryption_level::none };
|
|
85
|
+
|
|
86
|
+
/**
|
|
87
|
+
* The certificate to use for encryption when the encryption level is set to 'full'.
|
|
88
|
+
*/
|
|
89
|
+
std::optional<std::string> certificate{};
|
|
90
|
+
|
|
91
|
+
/**
|
|
92
|
+
* The certificate to use for authenticating when the encryption level is set to 'full'. Cannot be set if a username and password are
|
|
93
|
+
* provided
|
|
94
|
+
*/
|
|
95
|
+
std::optional<std::string> client_certificate{};
|
|
96
|
+
|
|
97
|
+
/**
|
|
98
|
+
* The client key to use for authenticating when the encryption level is set to 'full'. Cannot be set if a username and password are
|
|
99
|
+
* provided
|
|
100
|
+
*/
|
|
101
|
+
std::optional<std::string> client_key{};
|
|
102
|
+
};
|
|
103
|
+
|
|
104
|
+
struct couchbase_remote_analytics_link : analytics_link {
|
|
105
|
+
std::string hostname;
|
|
106
|
+
couchbase_analytics_encryption_settings encryption{};
|
|
107
|
+
std::optional<std::string> username{};
|
|
108
|
+
std::optional<std::string> password{};
|
|
109
|
+
|
|
110
|
+
[[nodiscard]] analytics_link_type link_type() const override
|
|
111
|
+
{
|
|
112
|
+
return analytics_link_type::couchbase_remote;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
/**
|
|
116
|
+
* Constructs an empty remote Couchbase analytics link.
|
|
117
|
+
*
|
|
118
|
+
* @since 1.0.0
|
|
119
|
+
* @committed
|
|
120
|
+
*/
|
|
121
|
+
couchbase_remote_analytics_link() = default;
|
|
122
|
+
|
|
123
|
+
/**
|
|
124
|
+
* Constructs and initializes a remote Couchbase analytics link with the given parameters. A remote analytics link uses a Couchbase data
|
|
125
|
+
* service that is not part of the same cluster as the Analytics service.
|
|
126
|
+
*
|
|
127
|
+
* @param name the name of the link
|
|
128
|
+
* @param dataverse_name the dataverse that the link belongs to. Its format can be one part `dataversename` or two parts
|
|
129
|
+
* `bucket_name/scope_name`
|
|
130
|
+
* @param hostname the hostname of the target Couchbase cluster
|
|
131
|
+
* @param encryption the encryption settings for the link
|
|
132
|
+
* @param username the username to use for authentication with the remote cluster. Optional if client certificate authentication is
|
|
133
|
+
* being used
|
|
134
|
+
* @param password the password to use for authentication with the remote cluster. Optional if client-certificate authentication is
|
|
135
|
+
* being used
|
|
136
|
+
*
|
|
137
|
+
* @since 1.0.0
|
|
138
|
+
* @committed
|
|
139
|
+
*/
|
|
140
|
+
couchbase_remote_analytics_link(std::string name,
|
|
141
|
+
std::string dataverse_name,
|
|
142
|
+
std::string hostname,
|
|
143
|
+
couchbase_analytics_encryption_settings encryption = {},
|
|
144
|
+
std::optional<std::string> username = {},
|
|
145
|
+
std::optional<std::string> password = {});
|
|
146
|
+
};
|
|
147
|
+
|
|
148
|
+
struct s3_external_analytics_link : analytics_link {
|
|
149
|
+
std::string access_key_id;
|
|
150
|
+
std::string secret_access_key;
|
|
151
|
+
std::string region;
|
|
152
|
+
std::optional<std::string> session_token{};
|
|
153
|
+
std::optional<std::string> service_endpoint{};
|
|
154
|
+
|
|
155
|
+
[[nodiscard]] analytics_link_type link_type() const override
|
|
156
|
+
{
|
|
157
|
+
return analytics_link_type::s3_external;
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
/**
|
|
161
|
+
* Constructs an empty external S3 analytics link
|
|
162
|
+
*
|
|
163
|
+
* @committed
|
|
164
|
+
* @since 1.0.0
|
|
165
|
+
*/
|
|
166
|
+
s3_external_analytics_link() = default;
|
|
167
|
+
|
|
168
|
+
/**
|
|
169
|
+
* Constructs and initializes an external S3 analytics link with the given parameters.
|
|
170
|
+
*
|
|
171
|
+
* @param name the name of the link
|
|
172
|
+
* @param dataverse_name the name of the dataverse the link belongs to
|
|
173
|
+
* @param access_key_id the AWS S3 access key
|
|
174
|
+
* @param secret_access_key the AWS S3 secret key
|
|
175
|
+
* @param region the AWS S3 region
|
|
176
|
+
* @param session_token the AWS S3 token if temporary credentials are provided
|
|
177
|
+
* @param service_endpoint the AWS S3 service endpoint
|
|
178
|
+
*
|
|
179
|
+
* @committed
|
|
180
|
+
* @since 1.0.0
|
|
181
|
+
*/
|
|
182
|
+
s3_external_analytics_link(std::string name,
|
|
183
|
+
std::string dataverse_name,
|
|
184
|
+
std::string access_key_id,
|
|
185
|
+
std::string secret_access_key,
|
|
186
|
+
std::string region,
|
|
187
|
+
std::optional<std::string> session_token = {},
|
|
188
|
+
std::optional<std::string> service_endpoint = {});
|
|
189
|
+
};
|
|
190
|
+
|
|
191
|
+
struct azure_blob_external_analytics_link : analytics_link {
|
|
192
|
+
std::optional<std::string> connection_string{};
|
|
193
|
+
std::optional<std::string> account_name{};
|
|
194
|
+
std::optional<std::string> account_key{};
|
|
195
|
+
std::optional<std::string> shared_access_signature{};
|
|
196
|
+
std::optional<std::string> blob_endpoint{};
|
|
197
|
+
std::optional<std::string> endpoint_suffix{};
|
|
198
|
+
|
|
199
|
+
[[nodiscard]] analytics_link_type link_type() const override
|
|
200
|
+
{
|
|
201
|
+
return analytics_link_type::azure_external;
|
|
202
|
+
}
|
|
203
|
+
|
|
204
|
+
/**
|
|
205
|
+
* Constructs an empty external Azure blob analytics link.
|
|
206
|
+
*
|
|
207
|
+
* @committed
|
|
208
|
+
* @since 1.0.0
|
|
209
|
+
*/
|
|
210
|
+
azure_blob_external_analytics_link() = default;
|
|
211
|
+
|
|
212
|
+
/**
|
|
213
|
+
* Constructs and initializes an external Azure blob analytics link.
|
|
214
|
+
*
|
|
215
|
+
* @param name the name of the link
|
|
216
|
+
* @param dataverse_name the name of the dataverse the link belongs to
|
|
217
|
+
* @param connection_string the connection string that can be used as an authentication method. It contains other authentication methods
|
|
218
|
+
* embedded inside the string. Only a single authentication method can be used (e.g.
|
|
219
|
+
* "AccountName=myAccountName;AccountKey=myAccountKey").
|
|
220
|
+
* @param account_name the Azure blob storage account name
|
|
221
|
+
* @param account_key the Azure blob storage account key
|
|
222
|
+
* @param shared_access_signature token that can be used for authentication
|
|
223
|
+
* @param blob_endpoint the Azure blob storage endpoint
|
|
224
|
+
* @param endpoint_suffix the Azure blob endpoint suffix
|
|
225
|
+
*
|
|
226
|
+
* @committed
|
|
227
|
+
* @since 1.0.0
|
|
228
|
+
*/
|
|
229
|
+
azure_blob_external_analytics_link(std::string name,
|
|
230
|
+
std::string dataverse_name,
|
|
231
|
+
std::optional<std::string> connection_string = {},
|
|
232
|
+
std::optional<std::string> account_name = {},
|
|
233
|
+
std::optional<std::string> account_key = {},
|
|
234
|
+
std::optional<std::string> shared_access_signature = {},
|
|
235
|
+
std::optional<std::string> blob_endpoint = {},
|
|
236
|
+
std::optional<std::string> endpoint_suffix = {});
|
|
237
|
+
};
|
|
238
|
+
|
|
239
|
+
} // namespace couchbase::management
|
|
@@ -21,9 +21,9 @@
|
|
|
21
21
|
#include <string>
|
|
22
22
|
#include <vector>
|
|
23
23
|
|
|
24
|
-
namespace couchbase::management
|
|
24
|
+
namespace couchbase::management
|
|
25
25
|
{
|
|
26
|
-
struct
|
|
26
|
+
struct query_index {
|
|
27
27
|
bool is_primary{ false };
|
|
28
28
|
std::string name;
|
|
29
29
|
std::string state;
|
|
@@ -36,4 +36,4 @@ struct index {
|
|
|
36
36
|
std::optional<std::string> collection_name{};
|
|
37
37
|
};
|
|
38
38
|
|
|
39
|
-
} // namespace couchbase::management
|
|
39
|
+
} // namespace couchbase::management
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/* -*- Mode: C++; tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- */
|
|
2
|
+
/*
|
|
3
|
+
* Copyright 2020-2021 Couchbase, Inc.
|
|
4
|
+
*
|
|
5
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
+
* you may not use this file except in compliance with the License.
|
|
7
|
+
* You may obtain a copy of the License at
|
|
8
|
+
*
|
|
9
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
*
|
|
11
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
* See the License for the specific language governing permissions and
|
|
15
|
+
* limitations under the License.
|
|
16
|
+
*/
|
|
17
|
+
|
|
18
|
+
#pragma once
|
|
19
|
+
|
|
20
|
+
#include <map>
|
|
21
|
+
#include <optional>
|
|
22
|
+
#include <string>
|
|
23
|
+
#include <vector>
|
|
24
|
+
|
|
25
|
+
namespace couchbase::management::search
|
|
26
|
+
{
|
|
27
|
+
struct index {
|
|
28
|
+
|
|
29
|
+
std::string name;
|
|
30
|
+
std::string type = "fulltext-index";
|
|
31
|
+
std::string source_name;
|
|
32
|
+
std::string source_type = "couchbase";
|
|
33
|
+
|
|
34
|
+
std::optional<std::string> uuid; // Must be empty on create, set on update
|
|
35
|
+
std::optional<std::string> params_json;
|
|
36
|
+
std::optional<std::string> source_uuid;
|
|
37
|
+
std::optional<std::string> source_params_json;
|
|
38
|
+
std::optional<std::string> plan_params_json;
|
|
39
|
+
};
|
|
40
|
+
} // namespace couchbase::management::search
|
|
@@ -206,28 +206,4 @@ struct mutate_in_options : public common_durability_options<mutate_in_options> {
|
|
|
206
206
|
* @uncommitted
|
|
207
207
|
*/
|
|
208
208
|
using mutate_in_handler = std::function<void(couchbase::subdocument_error_context, mutate_in_result)>;
|
|
209
|
-
|
|
210
|
-
#ifndef COUCHBASE_CXX_CLIENT_DOXYGEN
|
|
211
|
-
namespace core
|
|
212
|
-
{
|
|
213
|
-
class cluster;
|
|
214
|
-
namespace impl
|
|
215
|
-
{
|
|
216
|
-
|
|
217
|
-
/**
|
|
218
|
-
* @since 1.0.0
|
|
219
|
-
* @internal
|
|
220
|
-
*/
|
|
221
|
-
void
|
|
222
|
-
initiate_mutate_in_operation(std::shared_ptr<couchbase::core::cluster> core,
|
|
223
|
-
std::string bucket_name,
|
|
224
|
-
std::string scope_name,
|
|
225
|
-
std::string collection_name,
|
|
226
|
-
std::string document_key,
|
|
227
|
-
const std::vector<couchbase::core::impl::subdoc::command>& specs,
|
|
228
|
-
couchbase::mutate_in_options::built options,
|
|
229
|
-
couchbase::mutate_in_handler&& handler);
|
|
230
|
-
#endif
|
|
231
|
-
} // namespace impl
|
|
232
|
-
} // namespace core
|
|
233
209
|
} // namespace couchbase
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/* -*- Mode: C++; tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- */
|
|
2
|
+
/*
|
|
3
|
+
* Copyright 2020-Present Couchbase, Inc.
|
|
4
|
+
*
|
|
5
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
+
* you may not use this file except in compliance with the License.
|
|
7
|
+
* You may obtain a copy of the License at
|
|
8
|
+
*
|
|
9
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
*
|
|
11
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
* See the License for the specific language governing permissions and
|
|
15
|
+
* limitations under the License.
|
|
16
|
+
*/
|
|
17
|
+
|
|
18
|
+
#pragma once
|
|
19
|
+
|
|
20
|
+
#include <couchbase/common_options.hxx>
|
|
21
|
+
|
|
22
|
+
#include <functional>
|
|
23
|
+
#include <memory>
|
|
24
|
+
#include <optional>
|
|
25
|
+
#include <string>
|
|
26
|
+
|
|
27
|
+
namespace couchbase
|
|
28
|
+
{
|
|
29
|
+
struct pause_ingest_search_index_options : public common_options<pause_ingest_search_index_options> {
|
|
30
|
+
public:
|
|
31
|
+
struct built : public common_options<pause_ingest_search_index_options>::built {
|
|
32
|
+
};
|
|
33
|
+
|
|
34
|
+
[[nodiscard]] auto build() const -> built
|
|
35
|
+
{
|
|
36
|
+
return { build_common_options() };
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
private:
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
using pause_ingest_search_index_handler = std::function<void(couchbase::manager_error_context)>;
|
|
43
|
+
} // namespace couchbase
|
|
@@ -62,6 +62,25 @@ class phrase_query : public search_query
|
|
|
62
62
|
}
|
|
63
63
|
}
|
|
64
64
|
|
|
65
|
+
/**
|
|
66
|
+
* Create a new phrase query.
|
|
67
|
+
*
|
|
68
|
+
* The mandatory list of terms that must exactly match in the index. Note that the index can (and usually will) contain terms that are
|
|
69
|
+
* derived from the text in documents, as analyzers can apply process like stemming.
|
|
70
|
+
*
|
|
71
|
+
* @param terms non-empty vector of terms.
|
|
72
|
+
*
|
|
73
|
+
* @since 1.0.0
|
|
74
|
+
* @committed
|
|
75
|
+
*/
|
|
76
|
+
explicit phrase_query(std::vector<std::string> terms)
|
|
77
|
+
: terms_{ std::move(terms) }
|
|
78
|
+
{
|
|
79
|
+
if (terms_.empty()) {
|
|
80
|
+
throw std::invalid_argument("terms must not be empty in phrase_query");
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
|
|
65
84
|
/**
|
|
66
85
|
* If a field is specified, only terms in that field will be matched.
|
|
67
86
|
*
|
|
@@ -97,28 +97,4 @@ struct prepend_options : public common_durability_options<prepend_options> {
|
|
|
97
97
|
* @uncommitted
|
|
98
98
|
*/
|
|
99
99
|
using prepend_handler = std::function<void(couchbase::key_value_error_context, mutation_result)>;
|
|
100
|
-
|
|
101
|
-
#ifndef COUCHBASE_CXX_CLIENT_DOXYGEN
|
|
102
|
-
namespace core
|
|
103
|
-
{
|
|
104
|
-
class cluster;
|
|
105
|
-
namespace impl
|
|
106
|
-
{
|
|
107
|
-
|
|
108
|
-
/**
|
|
109
|
-
* @since 1.0.0
|
|
110
|
-
* @internal
|
|
111
|
-
*/
|
|
112
|
-
void
|
|
113
|
-
initiate_prepend_operation(std::shared_ptr<couchbase::core::cluster> core,
|
|
114
|
-
std::string bucket_name,
|
|
115
|
-
std::string scope_name,
|
|
116
|
-
std::string collection_name,
|
|
117
|
-
std::string document_key,
|
|
118
|
-
std::vector<std::byte> data,
|
|
119
|
-
prepend_options::built options,
|
|
120
|
-
prepend_handler&& handler);
|
|
121
|
-
#endif
|
|
122
|
-
} // namespace impl
|
|
123
|
-
} // namespace core
|
|
124
100
|
} // namespace couchbase
|