Class ReactiveAnalyticsIndexManager


  • public class ReactiveAnalyticsIndexManager
    extends Object
    Performs management operations on analytics indexes.
    • Method Detail

      • async

        public AsyncAnalyticsIndexManager async()
        Returns the async version of this index manager.
        Returns:
        the async version of this index manager.
      • createDataverse

        public Mono<Void> createDataverse​(String dataverseName)
        Creates a new dataverse (analytics scope) if it does not already exist.
        Parameters:
        dataverseName - the name of the dataverse to create.
        Returns:
        a Mono completing when the operation is applied or failed with an error.
        Throws:
        DataverseExistsException - (async) if the dataverse already exists.
        CouchbaseException - (async) if any other generic unhandled/unexpected errors.
      • createDataverse

        public Mono<Void> createDataverse​(String dataverseName,
                                          CreateDataverseAnalyticsOptions options)
        Creates a new dataverse (analytics scope) if it does not already exist with custom options.
        Parameters:
        dataverseName - the name of the dataverse to create.
        options - the custom options to apply.
        Returns:
        a Mono completing when the operation is applied or failed with an error.
        Throws:
        DataverseExistsException - (async) if the dataverse already exists.
        CouchbaseException - (async) if any other generic unhandled/unexpected errors.
      • dropDataverse

        public Mono<Void> dropDataverse​(String dataverseName)
        Drops (deletes) a dataverse.
        Parameters:
        dataverseName - the name of the dataverse to drop.
        Returns:
        a Mono completing when the operation is applied or failed with an error.
        Throws:
        DataverseNotFoundException - (async) if the dataverse does not exist.
        CompilationFailureException - (async) if a dataverse that cannot be dropped (i.e. Default) is attempted.
        CouchbaseException - (async) if any other generic unhandled/unexpected errors.
      • dropDataverse

        public Mono<Void> dropDataverse​(String dataverseName,
                                        DropDataverseAnalyticsOptions options)
        Drops (deletes) a dataverse with custom options.
        Parameters:
        dataverseName - the name of the dataverse to drop.
        options - the custom options to apply.
        Returns:
        a Mono completing when the operation is applied or failed with an error.
        Throws:
        DataverseNotFoundException - (async) if the dataverse does not exist.
        CompilationFailureException - (async) if a dataverse that cannot be dropped (i.e. Default) is attempted.
        CouchbaseException - (async) if any other generic unhandled/unexpected errors.
      • getAllDataverses

        @Uncommitted
        public Flux<AnalyticsDataverse> getAllDataverses()
        Fetches all dataverses (analytics scopes) from the analytics service.
        Returns:
        a Flux completing with a (potentially empty) list of dataverses or failed with an error.
        Throws:
        CouchbaseException - (async) if any other generic unhandled/unexpected errors.
      • getAllDataverses

        @Uncommitted
        public Flux<AnalyticsDataverse> getAllDataverses​(GetAllDataversesAnalyticsOptions options)
        Fetches all dataverses (analytics scopes) from the analytics service with custom options.
        Parameters:
        options - the custom options to apply.
        Returns:
        a Flux completing with a (potentially empty) list of dataverses or failed with an error.
        Throws:
        CouchbaseException - (async) if any other generic unhandled/unexpected errors.
      • createDataset

        public Mono<Void> createDataset​(String datasetName,
                                        String bucketName)
        Creates a new dataset (analytics collection) if it does not already exist.
        Parameters:
        datasetName - the name of the dataset to create.
        bucketName - the name of the bucket where the dataset is stored inside.
        Returns:
        a Mono completing when the operation is applied or failed with an error.
        Throws:
        DatasetExistsException - (async) if the dataset already exists.
        CouchbaseException - (async) if any other generic unhandled/unexpected errors.
      • createDataset

        public Mono<Void> createDataset​(String datasetName,
                                        String bucketName,
                                        CreateDatasetAnalyticsOptions options)
        Creates a new dataset (analytics collection) if it does not already exist with custom options.
        Parameters:
        datasetName - the name of the dataset to create.
        bucketName - the name of the bucket where the dataset is stored inside.
        options - the custom options to apply.
        Returns:
        a Mono completing when the operation is applied or failed with an error.
        Throws:
        DatasetExistsException - (async) if the dataset already exists.
        CouchbaseException - (async) if any other generic unhandled/unexpected errors.
      • dropDataset

        public Mono<Void> dropDataset​(String datasetName)
        Drops (deletes) a dataset.
        Parameters:
        datasetName - the name of the dataset to create.
        Returns:
        a Mono completing when the operation is applied or failed with an error.
        Throws:
        DatasetNotFoundException - (async) if the dataset to drop does not exist.
        CouchbaseException - (async) if any other generic unhandled/unexpected errors.
      • dropDataset

        public Mono<Void> dropDataset​(String datasetName,
                                      DropDatasetAnalyticsOptions options)
        Drops (deletes) a dataset with custom options.
        Parameters:
        datasetName - the name of the dataset to create.
        options - the custom options to apply.
        Returns:
        a Mono completing when the operation is applied or failed with an error.
        Throws:
        DatasetNotFoundException - (async) if the dataset to drop does not exist.
        CouchbaseException - (async) if any other generic unhandled/unexpected errors.
      • getAllDatasets

        public Flux<AnalyticsDataset> getAllDatasets()
        Fetches all datasets (analytics collections) from the analytics service.
        Returns:
        a Flux completing with a (potentially empty) list of datasets or failed with an error.
        Throws:
        CouchbaseException - (async) if any other generic unhandled/unexpected errors.
      • getAllDatasets

        public Flux<AnalyticsDataset> getAllDatasets​(GetAllDatasetsAnalyticsOptions options)
        Fetches all datasets (analytics collections) from the analytics service with custom options.
        Parameters:
        options - the custom options to apply.
        Returns:
        a Flux completing with a (potentially empty) list of datasets or failed with an error.
        Throws:
        CouchbaseException - (async) if any other generic unhandled/unexpected errors.
      • createIndex

        public Mono<Void> createIndex​(String indexName,
                                      String datasetName,
                                      Map<String,​AnalyticsDataType> fields)
        Creates a new analytics index if it does not exist.
        Parameters:
        indexName - the name of the index to create.
        datasetName - the name of the dataset in which the index should be created.
        fields - the fields that should be indexed.
        Returns:
        a Mono completing when the operation is applied or failed with an error.
        Throws:
        IndexExistsException - (async) if the index already exists and not ignored in the options.
        DataverseNotFoundException - (async) if a dataverse is provided in the options that does not exist.
        DatasetNotFoundException - (async) if a dataset is provided which does not exist.
        CouchbaseException - (async) if any other generic unhandled/unexpected errors.
      • createIndex

        public Mono<Void> createIndex​(String indexName,
                                      String datasetName,
                                      Map<String,​AnalyticsDataType> fields,
                                      CreateIndexAnalyticsOptions options)
        Creates a new analytics index if it does not exist with custom options.
        Parameters:
        indexName - the name of the index to create.
        datasetName - the name of the dataset in which the index should be created.
        fields - the fields that should be indexed.
        options - the custom options to apply.
        Returns:
        a Mono completing when the operation is applied or failed with an error.
        Throws:
        IndexExistsException - (async) if the index already exists and not ignored in the options.
        DataverseNotFoundException - (async) if a dataverse is provided in the options that does not exist.
        DatasetNotFoundException - (async) if a dataset is provided which does not exist.
        CouchbaseException - (async) if any other generic unhandled/unexpected errors.
      • dropIndex

        public Mono<Void> dropIndex​(String indexName,
                                    String datasetName)
        Drops (removes) an index if it exists.
        Parameters:
        indexName - the name of the index to drop.
        datasetName - the dataset in which the index exists.
        Returns:
        a Mono completing when the operation is applied or failed with an error.
        Throws:
        IndexNotFoundException - (async) if the index does not exist and not ignored via options.
        DataverseNotFoundException - (async) if a dataverse is provided in the options that does not exist.
        DatasetNotFoundException - (async) if a dataset is provided which does not exist.
        CouchbaseException - (async) if any other generic unhandled/unexpected errors.
      • dropIndex

        public Mono<Void> dropIndex​(String indexName,
                                    String datasetName,
                                    DropIndexAnalyticsOptions options)
        Drops (removes) an index if it exists with custom options.
        Parameters:
        indexName - the name of the index to drop.
        datasetName - the dataset in which the index exists.
        options - the custom options to apply.
        Returns:
        a Mono completing when the operation is applied or failed with an error.
        Throws:
        IndexNotFoundException - (async) if the index does not exist and not ignored via options.
        DataverseNotFoundException - (async) if a dataverse is provided in the options that does not exist.
        DatasetNotFoundException - (async) if a dataset is provided which does not exist.
        CouchbaseException - (async) if any other generic unhandled/unexpected errors.
      • getAllIndexes

        public Flux<AnalyticsIndex> getAllIndexes()
        Lists all analytics indexes.
        Returns:
        a Flux completing with a list of indexes or failed with an error.
        Throws:
        CouchbaseException - (async) if any other generic unhandled/unexpected errors.
      • getAllIndexes

        public Flux<AnalyticsIndex> getAllIndexes​(GetAllIndexesAnalyticsOptions options)
        Lists all analytics indexes with custom options.
        Parameters:
        options - the custom options to apply.
        Returns:
        a Flux completing with a (potentially empty) list of indexes or failed with an error.
        Throws:
        CouchbaseException - (async) if any other generic unhandled/unexpected errors.
      • connectLink

        public Mono<Void> connectLink()
        Connects the analytics link for the default dataverse (Default.Local).
        Returns:
        a Mono completing when the operation is applied or failed with an error.
        Throws:
        CouchbaseException - (async) if any other generic unhandled/unexpected errors.
      • connectLink

        public Mono<Void> connectLink​(ConnectLinkAnalyticsOptions options)
        Connects the analytics link for the default dataverse with custom options.
        Parameters:
        options - the custom options to apply.
        Returns:
        a Mono completing when the operation is applied or failed with an error.
        Throws:
        LinkNotFoundException - (async) if the link does not exist.
        DataverseNotFoundException - (async) if a dataverse is provided in the options that does not exist.
        CouchbaseException - (async) if any other generic unhandled/unexpected errors.
      • disconnectLink

        public Mono<Void> disconnectLink()
        Disconnects the analytics link for the default dataverse (Default.Local).
        Returns:
        a Mono completing when the operation is applied or failed with an error.
        Throws:
        CouchbaseException - (async) if any other generic unhandled/unexpected errors.
      • disconnectLink

        public Mono<Void> disconnectLink​(DisconnectLinkAnalyticsOptions options)
        Disconnects the analytics link for the default dataverse with custom options.
        Parameters:
        options - the custom options to apply.
        Returns:
        a Mono completing when the operation is applied or failed with an error.
        Throws:
        LinkNotFoundException - (async) if the link does not exist.
        DataverseNotFoundException - (async) if a dataverse is provided in the options that does not exist.
        CouchbaseException - (async) if any other generic unhandled/unexpected errors.
      • getPendingMutations

        public Mono<Map<String,​Map<String,​Long>>> getPendingMutations()
        Returns the pending mutations for different dataverses.
        Returns:
        a Mono completing with the pending mutations or failed with an error.
        Throws:
        CouchbaseException - (async) if any other generic unhandled/unexpected errors.
      • getPendingMutations

        public Mono<Map<String,​Map<String,​Long>>> getPendingMutations​(GetPendingMutationsAnalyticsOptions options)
        Returns the pending mutations for different dataverses with custom options.
        Parameters:
        options - the custom options to apply.
        Returns:
        a Mono completing with the pending mutations or failed with an error.
        Throws:
        CouchbaseException - (async) if any other generic unhandled/unexpected errors.
      • createLink

        public Mono<Void> createLink​(AnalyticsLink link)
        Creates a new analytics link.
        Parameters:
        link - the name of the link that should be created.
        Returns:
        a Mono completing when the operation is applied or failed with an error.
        Throws:
        InvalidArgumentException - (async) if required parameters are not supplied or are invalid.
        AuthenticationFailureException - (async) if the remote link cannot be authenticated on creation.
        LinkExistsException - (async) if the link with the name already exists.
        CouchbaseException - (async) if any other generic unhandled/unexpected errors.
      • dropLink

        public Mono<Void> dropLink​(String linkName,
                                   String dataverse)
        Drops (removes) a link if it exists.
        Parameters:
        linkName - the name of the link that should be dropped.
        dataverse - the name of the dataverse in which the link exists.
        Returns:
        a Mono completing when the operation is applied or failed with an error.
        Throws:
        LinkNotFoundException - (async) if the link does not exist.
        DataverseNotFoundException - (async) if a dataverse is provided that does not exist.
        CouchbaseException - (async) if any other generic unhandled/unexpected errors.
      • dropLink

        public Mono<Void> dropLink​(String linkName,
                                   String dataverse,
                                   DropLinkAnalyticsOptions options)
        Drops (removes) a link if it exists with custom options.
        Parameters:
        linkName - the name of the link that should be dropped.
        dataverse - the name of the dataverse in which the link exists.
        options - the custom options to apply.
        Returns:
        a Mono completing when the operation is applied or failed with an error.
        Throws:
        LinkNotFoundException - (async) if the link does not exist.
        DataverseNotFoundException - (async) if a dataverse is provided that does not exist.
        CouchbaseException - (async) if any other generic unhandled/unexpected errors.
      • getLinks

        public Flux<AnalyticsLink> getLinks()
        Returns a (potentially empty) list of current analytics links.

        Links describe connections between an external data source and the analytics engine. Note that AnalyticsLink is an abstract class and has implementations depending on the type of link configured. See and cast into S3ExternalAnalyticsLink, or CouchbaseRemoteAnalyticsLink for specific attributes. In the future, more external link types might be supported - please consult the server documentation for more information.

        Returns:
        a Flux completing with a (potentially empty) list of links or failed with an error.
        Throws:
        DataverseNotFoundException - (async) if a dataverse is provided in the options that does not exist.
        CouchbaseException - (async) if any other generic unhandled/unexpected errors.
      • getLinks

        public Flux<AnalyticsLink> getLinks​(GetLinksAnalyticsOptions options)
        Returns a (potentially empty) list of current analytics links with custom options.

        Links describe connections between an external data source and the analytics engine. Note that AnalyticsLink is an abstract class and has implementations depending on the type of link configured. See and cast into S3ExternalAnalyticsLink, or CouchbaseRemoteAnalyticsLink for specific attributes. In the future, more external link types might be supported - please consult the server documentation for more information.

        Parameters:
        options - the custom options to apply.
        Returns:
        a Flux completing with a (potentially empty) list of links or failed with an error.
        Throws:
        DataverseNotFoundException - (async) if a dataverse is provided in the options that does not exist.
        CouchbaseException - (async) if any other generic unhandled/unexpected errors.