Class AnalyticsIndexManager

java.lang.Object
com.couchbase.client.java.manager.analytics.AnalyticsIndexManager

public class AnalyticsIndexManager extends Object
Performs management operations on analytics indexes.
  • Constructor Details

  • Method Details

    • async

      Returns the async version of this index manager.
      Returns:
      the async version of this index manager.
    • reactive

      public ReactiveAnalyticsIndexManager reactive()
      Returns the reactive version of this index manager.
      Returns:
      the reactive version of this index manager.
    • createDataverse

      public 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.
      Throws:
      DataverseExistsException - if the dataverse already exists.
      CouchbaseException - if any other generic unhandled/unexpected errors.
    • createDataverse

      public 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.
      Throws:
      DataverseExistsException - if the dataverse already exists.
      CouchbaseException - if any other generic unhandled/unexpected errors.
    • dropDataverse

      public void dropDataverse(String dataverseName)
      Drops (deletes) a dataverse.
      Parameters:
      dataverseName - the name of the dataverse to drop.
      Throws:
      DataverseNotFoundException - if the dataverse does not exist.
      CompilationFailureException - if a dataverse that cannot be dropped (i.e. Default) is attempted.
      CouchbaseException - if any other generic unhandled/unexpected errors.
    • dropDataverse

      public 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.
      Throws:
      DataverseNotFoundException - if the dataverse does not exist.
      CompilationFailureException - if a dataverse that cannot be dropped (i.e. Default) is attempted.
      CouchbaseException - if any other generic unhandled/unexpected errors.
    • getAllDataverses

      Fetches all dataverses (analytics scopes) from the analytics service with custom options.
      Parameters:
      options - the custom options to apply.
      Returns:
      a (potentially empty) list of dataverses or failed with an error.
      Throws:
      CouchbaseException - if any other generic unhandled/unexpected errors.
    • getAllDataverses

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

      public 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.
      Throws:
      DatasetExistsException - if the dataset already exists.
      CouchbaseException - if any other generic unhandled/unexpected errors.
    • createDataset

      public 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.
      Throws:
      DatasetExistsException - if the dataset already exists.
      CouchbaseException - if any other generic unhandled/unexpected errors.
    • dropDataset

      public void dropDataset(String datasetName)
      Drops (deletes) a dataset.
      Parameters:
      datasetName - the name of the dataset to create.
      Throws:
      DatasetNotFoundException - if the dataset to drop does not exist.
      CouchbaseException - if any other generic unhandled/unexpected errors.
    • dropDataset

      public 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.
      Throws:
      DatasetNotFoundException - if the dataset to drop does not exist.
      CouchbaseException - if any other generic unhandled/unexpected errors.
    • getAllDatasets

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

      public List<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 (potentially empty) list of datasets or failed with an error.
      Throws:
      CouchbaseException - if any other generic unhandled/unexpected errors.
    • createIndex

      public 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.
      Throws:
      IndexExistsException - if the index already exists and not ignored in the options.
      DataverseNotFoundException - if a dataverse is provided in the options that does not exist.
      DatasetNotFoundException - if a dataset is provided which does not exist.
      CouchbaseException - if any other generic unhandled/unexpected errors.
    • createIndex

      public 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.
      Throws:
      IndexExistsException - if the index already exists and not ignored in the options.
      DataverseNotFoundException - if a dataverse is provided in the options that does not exist.
      DatasetNotFoundException - if a dataset is provided which does not exist.
      CouchbaseException - if any other generic unhandled/unexpected errors.
    • dropIndex

      public 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.
      Throws:
      IndexNotFoundException - if the index does not exist and not ignored via options.
      DataverseNotFoundException - if a dataverse is provided in the options that does not exist.
      DatasetNotFoundException - if a dataset is provided which does not exist.
      CouchbaseException - if any other generic unhandled/unexpected errors.
    • dropIndex

      public 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.
      Throws:
      IndexNotFoundException - if the index does not exist and not ignored via options.
      DataverseNotFoundException - if a dataverse is provided in the options that does not exist.
      DatasetNotFoundException - if a dataset is provided which does not exist.
      CouchbaseException - if any other generic unhandled/unexpected errors.
    • getAllIndexes

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

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

      public void connectLink()
      Connects the analytics link for the default dataverse (Default.Local).
      Throws:
      CouchbaseException - if any other generic unhandled/unexpected errors.
    • connectLink

      public void connectLink(ConnectLinkAnalyticsOptions options)
      Connects the analytics link for the default dataverse with custom options.
      Parameters:
      options - the custom options to apply.
      Throws:
      LinkNotFoundException - if the link does not exist.
      DataverseNotFoundException - if a dataverse is provided in the options that does not exist.
      CouchbaseException - if any other generic unhandled/unexpected errors.
    • disconnectLink

      public void disconnectLink()
      Disconnects the analytics link for the default dataverse (Default.Local).
      Throws:
      CouchbaseException - if any other generic unhandled/unexpected errors.
    • disconnectLink

      public void disconnectLink(DisconnectLinkAnalyticsOptions options)
      Disconnects the analytics link for the default dataverse with custom options.
      Parameters:
      options - the custom options to apply.
      Throws:
      LinkNotFoundException - if the link does not exist.
      DataverseNotFoundException - if a dataverse is provided in the options that does not exist.
      CouchbaseException - if any other generic unhandled/unexpected errors.
    • getPendingMutations

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

      public 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:
      the pending mutations or failed with an error.
      Throws:
      CouchbaseException - if any other generic unhandled/unexpected errors.
    • createLink

      public void createLink(AnalyticsLink link)
      Creates a new analytics link.
      Parameters:
      link - the name of the link that should be created.
      Throws:
      InvalidArgumentException - if required parameters are not supplied or are invalid.
      AuthenticationFailureException - if the remote link cannot be authenticated on creation.
      LinkExistsException - if the link with the name already exists.
      CouchbaseException - if any other generic unhandled/unexpected errors.
    • createLink

      public void createLink(AnalyticsLink link, CreateLinkAnalyticsOptions options)
      Creates a new analytics link with custom options.
      Parameters:
      link - the name of the link that should be created.
      options - the custom options to apply.
      Throws:
      InvalidArgumentException - if required parameters are not supplied or are invalid.
      AuthenticationFailureException - if the remote link cannot be authenticated on creation.
      LinkExistsException - if the link with the name already exists.
      CouchbaseException - if any other generic unhandled/unexpected errors.
    • replaceLink

      public void replaceLink(AnalyticsLink link)
      Replaces an existing analytics link.
      Parameters:
      link - the name of the link that should be replaced.
      Throws:
      InvalidArgumentException - if required parameters are not supplied or are invalid.
      AuthenticationFailureException - if the remote link cannot be authenticated on replace.
      LinkNotFoundException - if the link does not exist.
      CouchbaseException - if any other generic unhandled/unexpected errors.
    • replaceLink

      public void replaceLink(AnalyticsLink link, ReplaceLinkAnalyticsOptions options)
      Replaces an analytics link with custom options.
      Parameters:
      link - the name of the link that should be replaced.
      options - the custom options to apply.
      Throws:
      InvalidArgumentException - if required parameters are not supplied or are invalid.
      AuthenticationFailureException - if the remote link cannot be authenticated on replace.
      LinkNotFoundException - if the link does not exist.
      CouchbaseException - if any other generic unhandled/unexpected errors.
    • dropLink

      public 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.
      Throws:
      LinkNotFoundException - if the link does not exist.
      DataverseNotFoundException - if a dataverse is provided that does not exist.
      CouchbaseException - if any other generic unhandled/unexpected errors.
    • dropLink

      public 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.
      Throws:
      LinkNotFoundException - if the link does not exist.
      DataverseNotFoundException - if a dataverse is provided that does not exist.
      CouchbaseException - if any other generic unhandled/unexpected errors.
    • getLinks

      public List<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 (potentially empty) list of links or failed with an error.
      Throws:
      DataverseNotFoundException - if a dataverse is provided in the options that does not exist.
      CouchbaseException - if any other generic unhandled/unexpected errors.
    • getLinks

      public List<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 (potentially empty) list of links or failed with an error.
      Throws:
      DataverseNotFoundException - if a dataverse is provided in the options that does not exist.
      CouchbaseException - if any other generic unhandled/unexpected errors.