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
|
@@ -23,22 +23,22 @@
|
|
|
23
23
|
#include <couchbase/drop_primary_query_index_options.hxx>
|
|
24
24
|
#include <couchbase/drop_query_index_options.hxx>
|
|
25
25
|
#include <couchbase/get_all_query_indexes_options.hxx>
|
|
26
|
+
#include <couchbase/management/query_index.hxx>
|
|
26
27
|
#include <couchbase/watch_query_indexes_options.hxx>
|
|
27
28
|
|
|
28
29
|
#include <future>
|
|
29
30
|
#include <memory>
|
|
30
31
|
|
|
32
|
+
namespace couchbase
|
|
33
|
+
{
|
|
31
34
|
#ifndef COUCHBASE_CXX_CLIENT_DOXYGEN
|
|
32
|
-
namespace
|
|
35
|
+
namespace core
|
|
33
36
|
{
|
|
34
37
|
class cluster;
|
|
35
|
-
} // namespace
|
|
38
|
+
} // namespace core
|
|
39
|
+
class query_index_manager_impl;
|
|
36
40
|
#endif
|
|
37
41
|
|
|
38
|
-
namespace couchbase
|
|
39
|
-
{
|
|
40
|
-
class cluster;
|
|
41
|
-
|
|
42
42
|
/**
|
|
43
43
|
* The Query Index Manager interface contains the means for managing indexes used for queries.
|
|
44
44
|
*
|
|
@@ -63,8 +63,19 @@ class query_index_manager
|
|
|
63
63
|
const get_all_query_indexes_options& options,
|
|
64
64
|
get_all_query_indexes_handler&& handler) const;
|
|
65
65
|
|
|
66
|
+
/**
|
|
67
|
+
* Get all indexes within a bucket.
|
|
68
|
+
*
|
|
69
|
+
*
|
|
70
|
+
* @param bucket_name specifies the bucket in which we look for the indexes
|
|
71
|
+
* @param options optional parameters
|
|
72
|
+
* @return future object that carries result of the operation
|
|
73
|
+
*
|
|
74
|
+
* @since 1.0.0
|
|
75
|
+
* @committed
|
|
76
|
+
*/
|
|
66
77
|
[[nodiscard]] auto get_all_indexes(std::string bucket_name, const get_all_query_indexes_options& options) const
|
|
67
|
-
-> std::future<std::pair<manager_error_context, std::vector<
|
|
78
|
+
-> std::future<std::pair<manager_error_context, std::vector<management::query_index>>>;
|
|
68
79
|
|
|
69
80
|
/**
|
|
70
81
|
* Create an index on a bucket.
|
|
@@ -84,6 +95,18 @@ class query_index_manager
|
|
|
84
95
|
const create_query_index_options& options,
|
|
85
96
|
create_query_index_handler&& handler) const;
|
|
86
97
|
|
|
98
|
+
/**
|
|
99
|
+
* Create an index on a bucket.
|
|
100
|
+
*
|
|
101
|
+
* @param bucket_name specifies the bucket in which to create the index
|
|
102
|
+
* @param index_name name of the index
|
|
103
|
+
* @param fields the fields to create the index over
|
|
104
|
+
* @param options optional parameters
|
|
105
|
+
* @return future object that carries result of the operation
|
|
106
|
+
*
|
|
107
|
+
* @since 1.0.0
|
|
108
|
+
* @committed
|
|
109
|
+
*/
|
|
87
110
|
[[nodiscard]] auto create_index(std::string bucket_name,
|
|
88
111
|
std::string index_name,
|
|
89
112
|
std::vector<std::string> fields,
|
|
@@ -101,10 +124,21 @@ class query_index_manager
|
|
|
101
124
|
*/
|
|
102
125
|
void create_primary_index(std::string bucket_name,
|
|
103
126
|
const create_primary_query_index_options& options,
|
|
104
|
-
create_query_index_handler&& handler);
|
|
127
|
+
create_query_index_handler&& handler) const;
|
|
105
128
|
|
|
106
|
-
|
|
129
|
+
/**
|
|
130
|
+
* Create a primary index on a bucket.
|
|
131
|
+
*
|
|
132
|
+
* @param bucket_name specifies the bucket in which to create the index
|
|
133
|
+
* @param options optional parameters
|
|
134
|
+
* @return future object that carries result of the operation
|
|
135
|
+
*
|
|
136
|
+
* @since 1.0.0
|
|
137
|
+
* @committed
|
|
138
|
+
*/
|
|
139
|
+
[[nodiscard]] auto create_primary_index(std::string bucket_name, const create_primary_query_index_options& options) const
|
|
107
140
|
-> std::future<manager_error_context>;
|
|
141
|
+
|
|
108
142
|
/**
|
|
109
143
|
* Drop primary index on a bucket.
|
|
110
144
|
*
|
|
@@ -115,12 +149,25 @@ class query_index_manager
|
|
|
115
149
|
* @since 1.0.0
|
|
116
150
|
* @committed
|
|
117
151
|
*/
|
|
118
|
-
void drop_primary_index(std::string bucket_name,
|
|
152
|
+
void drop_primary_index(std::string bucket_name,
|
|
153
|
+
const drop_primary_query_index_options& options,
|
|
154
|
+
drop_query_index_handler&& handler) const;
|
|
119
155
|
|
|
120
|
-
|
|
156
|
+
/**
|
|
157
|
+
* Drop primary index on a bucket.
|
|
158
|
+
*
|
|
159
|
+
* @param bucket_name name of the bucket in which to drop the primary index
|
|
160
|
+
* @param options optional parameters
|
|
161
|
+
* @return future object that carries result of the operation
|
|
162
|
+
*
|
|
163
|
+
* @since 1.0.0
|
|
164
|
+
* @committed
|
|
165
|
+
*/
|
|
166
|
+
[[nodiscard]] auto drop_primary_index(std::string bucket_name, const drop_primary_query_index_options& options) const
|
|
121
167
|
-> std::future<manager_error_context>;
|
|
122
168
|
|
|
123
169
|
/**
|
|
170
|
+
* Drop specified query index.
|
|
124
171
|
*
|
|
125
172
|
* @param bucket_name name of the bucket in which to drop the index
|
|
126
173
|
* @param index_name name of the index to drop
|
|
@@ -133,10 +180,22 @@ class query_index_manager
|
|
|
133
180
|
void drop_index(std::string bucket_name,
|
|
134
181
|
std::string index_name,
|
|
135
182
|
const drop_query_index_options& options,
|
|
136
|
-
drop_query_index_handler&& handler);
|
|
183
|
+
drop_query_index_handler&& handler) const;
|
|
137
184
|
|
|
138
|
-
|
|
185
|
+
/**
|
|
186
|
+
* Drop specified query index.
|
|
187
|
+
*
|
|
188
|
+
* @param bucket_name name of the bucket in which to drop the index
|
|
189
|
+
* @param index_name name of the index to drop
|
|
190
|
+
* @param options optional parameters
|
|
191
|
+
* @return future object that carries result of the operation
|
|
192
|
+
*
|
|
193
|
+
* @since 1.0.0
|
|
194
|
+
* @committed
|
|
195
|
+
*/
|
|
196
|
+
[[nodiscard]] auto drop_index(std::string bucket_name, std::string index_name, const drop_query_index_options& options) const
|
|
139
197
|
-> std::future<manager_error_context>;
|
|
198
|
+
|
|
140
199
|
/**
|
|
141
200
|
* Builds all currently deferred indexes.
|
|
142
201
|
*
|
|
@@ -153,6 +212,18 @@ class query_index_manager
|
|
|
153
212
|
const build_query_index_options& options,
|
|
154
213
|
build_deferred_query_indexes_handler&& handler) const;
|
|
155
214
|
|
|
215
|
+
/**
|
|
216
|
+
* Builds all currently deferred indexes.
|
|
217
|
+
*
|
|
218
|
+
* By default, this method will build the indexes on the bucket.
|
|
219
|
+
*
|
|
220
|
+
* @param bucket_name name of the bucket
|
|
221
|
+
* @param options the custom options
|
|
222
|
+
* @return future object that carries result of the operation
|
|
223
|
+
*
|
|
224
|
+
* @since 1.0.0
|
|
225
|
+
* @committed
|
|
226
|
+
*/
|
|
156
227
|
[[nodiscard]] auto build_deferred_indexes(std::string bucket_name, const build_query_index_options& options) const
|
|
157
228
|
-> std::future<manager_error_context>;
|
|
158
229
|
|
|
@@ -170,20 +241,28 @@ class query_index_manager
|
|
|
170
241
|
void watch_indexes(std::string bucket_name,
|
|
171
242
|
std::vector<std::string> index_names,
|
|
172
243
|
const watch_query_indexes_options& options,
|
|
173
|
-
watch_query_indexes_handler&& handler);
|
|
244
|
+
watch_query_indexes_handler&& handler) const;
|
|
174
245
|
|
|
246
|
+
/**
|
|
247
|
+
* Polls the state of a set of indexes, until they all are online.
|
|
248
|
+
*
|
|
249
|
+
* @param bucket_name name of the bucket in which to look for the indexes
|
|
250
|
+
* @param index_names names of the indexes to watch
|
|
251
|
+
* @param options optional parameters
|
|
252
|
+
* @return future object that carries result of the operation
|
|
253
|
+
*
|
|
254
|
+
* @since 1.0.0
|
|
255
|
+
* @committed
|
|
256
|
+
*/
|
|
175
257
|
[[nodiscard]] auto watch_indexes(std::string bucket_name,
|
|
176
258
|
std::vector<std::string> index_names,
|
|
177
|
-
const watch_query_indexes_options& options) -> std::future<manager_error_context>;
|
|
259
|
+
const watch_query_indexes_options& options) const -> std::future<manager_error_context>;
|
|
178
260
|
|
|
179
261
|
private:
|
|
180
262
|
friend class cluster;
|
|
181
263
|
|
|
182
|
-
explicit query_index_manager(
|
|
183
|
-
: core_(std::move(core))
|
|
184
|
-
{
|
|
185
|
-
}
|
|
264
|
+
explicit query_index_manager(core::cluster core);
|
|
186
265
|
|
|
187
|
-
std::shared_ptr<
|
|
266
|
+
std::shared_ptr<query_index_manager_impl> impl_;
|
|
188
267
|
};
|
|
189
268
|
} // namespace couchbase
|
|
@@ -568,25 +568,4 @@ struct query_options : public common_options<query_options> {
|
|
|
568
568
|
* @uncommitted
|
|
569
569
|
*/
|
|
570
570
|
using query_handler = std::function<void(couchbase::query_error_context, query_result)>;
|
|
571
|
-
|
|
572
|
-
#ifndef COUCHBASE_CXX_CLIENT_DOXYGEN
|
|
573
|
-
namespace core
|
|
574
|
-
{
|
|
575
|
-
class cluster;
|
|
576
|
-
namespace impl
|
|
577
|
-
{
|
|
578
|
-
|
|
579
|
-
/**
|
|
580
|
-
* @since 1.0.0
|
|
581
|
-
* @internal
|
|
582
|
-
*/
|
|
583
|
-
void
|
|
584
|
-
initiate_query_operation(std::shared_ptr<couchbase::core::cluster> core,
|
|
585
|
-
std::string statement,
|
|
586
|
-
std::optional<std::string> query_context,
|
|
587
|
-
query_options::built options,
|
|
588
|
-
query_handler&& handler);
|
|
589
|
-
#endif
|
|
590
|
-
} // namespace impl
|
|
591
|
-
} // namespace core
|
|
592
571
|
} // namespace couchbase
|
|
@@ -97,27 +97,4 @@ struct remove_options : public common_durability_options<remove_options> {
|
|
|
97
97
|
* @uncommitted
|
|
98
98
|
*/
|
|
99
99
|
using remove_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_remove_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
|
-
couchbase::remove_options::built options,
|
|
119
|
-
couchbase::remove_handler&& handler);
|
|
120
|
-
#endif
|
|
121
|
-
} // namespace impl
|
|
122
|
-
} // namespace core
|
|
123
100
|
} // namespace couchbase
|
|
@@ -0,0 +1,63 @@
|
|
|
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 <couchbase/common_options.hxx>
|
|
21
|
+
#include <couchbase/error_codes.hxx>
|
|
22
|
+
#include <couchbase/manager_error_context.hxx>
|
|
23
|
+
|
|
24
|
+
#include <functional>
|
|
25
|
+
|
|
26
|
+
namespace couchbase
|
|
27
|
+
{
|
|
28
|
+
class replace_link_analytics_options : public common_options<replace_link_analytics_options>
|
|
29
|
+
{
|
|
30
|
+
public:
|
|
31
|
+
/**
|
|
32
|
+
* Immutable value object representing consistent options.
|
|
33
|
+
*
|
|
34
|
+
* @since 1.0.0
|
|
35
|
+
* @internal
|
|
36
|
+
*/
|
|
37
|
+
struct built : public common_options<replace_link_analytics_options>::built {
|
|
38
|
+
};
|
|
39
|
+
|
|
40
|
+
/**
|
|
41
|
+
* Validates options and returns them as an immutable value.
|
|
42
|
+
*
|
|
43
|
+
* @return consistent options as an immutable value
|
|
44
|
+
*
|
|
45
|
+
* @exception std::system_error with code errc::common::invalid_argument if the options are not valid
|
|
46
|
+
*
|
|
47
|
+
* @since 1.0.0
|
|
48
|
+
* @internal
|
|
49
|
+
*/
|
|
50
|
+
[[nodiscard]] auto build() const -> built
|
|
51
|
+
{
|
|
52
|
+
return { build_common_options() };
|
|
53
|
+
}
|
|
54
|
+
};
|
|
55
|
+
|
|
56
|
+
/**
|
|
57
|
+
* The signature for the handler of the @ref analytics_index_manager#replace_link() operation
|
|
58
|
+
*
|
|
59
|
+
* @since 1.0.0
|
|
60
|
+
* @uncommitted
|
|
61
|
+
*/
|
|
62
|
+
using replace_link_analytics_handler = std::function<void(couchbase::manager_error_context)>;
|
|
63
|
+
} // namespace couchbase
|
|
@@ -157,28 +157,4 @@ struct replace_options : public common_durability_options<replace_options> {
|
|
|
157
157
|
* @uncommitted
|
|
158
158
|
*/
|
|
159
159
|
using replace_handler = std::function<void(couchbase::key_value_error_context, mutation_result)>;
|
|
160
|
-
|
|
161
|
-
#ifndef COUCHBASE_CXX_CLIENT_DOXYGEN
|
|
162
|
-
namespace core
|
|
163
|
-
{
|
|
164
|
-
class cluster;
|
|
165
|
-
namespace impl
|
|
166
|
-
{
|
|
167
|
-
|
|
168
|
-
/**
|
|
169
|
-
* @since 1.0.0
|
|
170
|
-
* @internal
|
|
171
|
-
*/
|
|
172
|
-
void
|
|
173
|
-
initiate_replace_operation(std::shared_ptr<couchbase::core::cluster> core,
|
|
174
|
-
std::string bucket_name,
|
|
175
|
-
std::string scope_name,
|
|
176
|
-
std::string collection_name,
|
|
177
|
-
std::string document_key,
|
|
178
|
-
couchbase::codec::encoded_value encoded,
|
|
179
|
-
couchbase::replace_options::built options,
|
|
180
|
-
couchbase::replace_handler&& handler);
|
|
181
|
-
#endif
|
|
182
|
-
} // namespace impl
|
|
183
|
-
} // namespace core
|
|
184
160
|
} // 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 resume_ingest_search_index_options : public common_options<resume_ingest_search_index_options> {
|
|
30
|
+
public:
|
|
31
|
+
struct built : public common_options<resume_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 resume_ingest_search_index_handler = std::function<void(couchbase::manager_error_context)>;
|
|
43
|
+
} // namespace couchbase
|
|
@@ -25,15 +25,17 @@
|
|
|
25
25
|
|
|
26
26
|
#include <memory>
|
|
27
27
|
|
|
28
|
-
#ifndef COUCHBASE_CXX_CLIENT_DOXYGEN
|
|
29
28
|
namespace couchbase
|
|
30
29
|
{
|
|
30
|
+
#ifndef COUCHBASE_CXX_CLIENT_DOXYGEN
|
|
31
|
+
namespace core
|
|
32
|
+
{
|
|
31
33
|
class cluster;
|
|
32
|
-
} // namespace
|
|
34
|
+
} // namespace core
|
|
35
|
+
class bucket;
|
|
36
|
+
class scope_impl;
|
|
33
37
|
#endif
|
|
34
38
|
|
|
35
|
-
namespace couchbase
|
|
36
|
-
{
|
|
37
39
|
/**
|
|
38
40
|
* The scope identifies a group of collections and allows high application density as a result.
|
|
39
41
|
*
|
|
@@ -58,10 +60,7 @@ class scope
|
|
|
58
60
|
* @since 1.0.0
|
|
59
61
|
* @committed
|
|
60
62
|
*/
|
|
61
|
-
[[nodiscard]] auto bucket_name() const -> const std::string
|
|
62
|
-
{
|
|
63
|
-
return bucket_name_;
|
|
64
|
-
}
|
|
63
|
+
[[nodiscard]] auto bucket_name() const -> const std::string&;
|
|
65
64
|
|
|
66
65
|
/**
|
|
67
66
|
* Returns name of the scope.
|
|
@@ -71,10 +70,7 @@ class scope
|
|
|
71
70
|
* @since 1.0.0
|
|
72
71
|
* @committed
|
|
73
72
|
*/
|
|
74
|
-
[[nodiscard]] auto name() const -> const std::string
|
|
75
|
-
{
|
|
76
|
-
return name_;
|
|
77
|
-
}
|
|
73
|
+
[[nodiscard]] auto name() const -> const std::string&;
|
|
78
74
|
|
|
79
75
|
/**
|
|
80
76
|
* Opens a collection for this scope with an explicit name.
|
|
@@ -85,16 +81,11 @@ class scope
|
|
|
85
81
|
* @since 1.0.0
|
|
86
82
|
* @committed
|
|
87
83
|
*/
|
|
88
|
-
[[nodiscard]] auto collection(std::string_view collection_name) const -> collection
|
|
89
|
-
{
|
|
90
|
-
return { core_, bucket_name_, name_, collection_name };
|
|
91
|
-
}
|
|
84
|
+
[[nodiscard]] auto collection(std::string_view collection_name) const -> collection;
|
|
92
85
|
|
|
93
86
|
/**
|
|
94
87
|
* Performs a query against the query (N1QL) services.
|
|
95
88
|
*
|
|
96
|
-
* @tparam Handler callable type that implements @ref query_handler signature
|
|
97
|
-
*
|
|
98
89
|
* @param statement the N1QL query statement.
|
|
99
90
|
* @param options options to customize the query request.
|
|
100
91
|
* @param handler the handler that implements @ref query_handler
|
|
@@ -105,15 +96,7 @@ class scope
|
|
|
105
96
|
* @since 1.0.0
|
|
106
97
|
* @committed
|
|
107
98
|
*/
|
|
108
|
-
|
|
109
|
-
void query(std::string statement, const query_options& options, Handler&& handler) const
|
|
110
|
-
{
|
|
111
|
-
return core::impl::initiate_query_operation(core_,
|
|
112
|
-
std::move(statement),
|
|
113
|
-
fmt::format("default:`{}`.`{}`", bucket_name_, name_),
|
|
114
|
-
options.build(),
|
|
115
|
-
std::forward<Handler>(handler));
|
|
116
|
-
}
|
|
99
|
+
void query(std::string statement, const query_options& options, query_handler&& handler) const;
|
|
117
100
|
|
|
118
101
|
/**
|
|
119
102
|
* Performs a query against the query (N1QL) services.
|
|
@@ -126,15 +109,7 @@ class scope
|
|
|
126
109
|
* @committed
|
|
127
110
|
*/
|
|
128
111
|
[[nodiscard]] auto query(std::string statement, const query_options& options = {}) const
|
|
129
|
-
-> std::future<std::pair<query_error_context, query_result
|
|
130
|
-
{
|
|
131
|
-
auto barrier = std::make_shared<std::promise<std::pair<query_error_context, query_result>>>();
|
|
132
|
-
auto future = barrier->get_future();
|
|
133
|
-
query(std::move(statement), options, [barrier](auto ctx, auto result) {
|
|
134
|
-
barrier->set_value({ std::move(ctx), std::move(result) });
|
|
135
|
-
});
|
|
136
|
-
return future;
|
|
137
|
-
}
|
|
112
|
+
-> std::future<std::pair<query_error_context, query_result>>;
|
|
138
113
|
|
|
139
114
|
/**
|
|
140
115
|
* Performs a query against the full text search services.
|
|
@@ -208,15 +183,8 @@ class scope
|
|
|
208
183
|
private:
|
|
209
184
|
friend class bucket;
|
|
210
185
|
|
|
211
|
-
scope(
|
|
212
|
-
: core_(std::move(core))
|
|
213
|
-
, bucket_name_(bucket_name)
|
|
214
|
-
, name_(name)
|
|
215
|
-
{
|
|
216
|
-
}
|
|
186
|
+
scope(core::cluster core, std::string_view bucket_name, std::string_view name);
|
|
217
187
|
|
|
218
|
-
std::shared_ptr<
|
|
219
|
-
std::string bucket_name_;
|
|
220
|
-
std::string name_;
|
|
188
|
+
std::shared_ptr<scope_impl> impl_;
|
|
221
189
|
};
|
|
222
190
|
} // namespace couchbase
|
|
@@ -17,14 +17,8 @@
|
|
|
17
17
|
|
|
18
18
|
#pragma once
|
|
19
19
|
|
|
20
|
-
#include <couchbase/codec/tao_json_serializer.hxx>
|
|
21
|
-
#include <couchbase/search_meta_data.hxx>
|
|
22
|
-
|
|
23
|
-
#include "search_row.hxx"
|
|
24
|
-
#include <chrono>
|
|
25
20
|
#include <cinttypes>
|
|
26
|
-
#include <
|
|
27
|
-
#include <vector>
|
|
21
|
+
#include <string>
|
|
28
22
|
|
|
29
23
|
namespace couchbase
|
|
30
24
|
{
|
|
@@ -0,0 +1,26 @@
|
|
|
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
|
+
namespace couchbase
|
|
21
|
+
{
|
|
22
|
+
/**
|
|
23
|
+
* Enumeration of units for geo_distance sorting
|
|
24
|
+
*/
|
|
25
|
+
enum class search_geo_distance_units { meters, miles, centimeters, millimeters, nautical_miles, kilometers, feet, yards, inch };
|
|
26
|
+
} // namespace couchbase
|