Class Index


  • @Experimental
    @Public
    public class Index
    extends Object
    DSL starting point for creating and managing N1QL indexes.
    Since:
    2.2
    Author:
    Simon Baslé
    • Field Detail

      • PRIMARY_NAME

        public static final String PRIMARY_NAME
        The expected name given to the primary indexes by the server.
        See Also:
        Constant Field Values
    • Method Detail

      • createIndex

        public static OnPath createIndex​(String indexName)
        Create a new secondary index.
        Parameters:
        indexName - the name of the new index (will be escaped).
      • createPrimaryIndex

        public static OnPrimaryPath createPrimaryIndex()
        Create a new primary index.
      • createNamedPrimaryIndex

        public static OnPrimaryPath createNamedPrimaryIndex​(String customPrimaryName)
        Create a new primary index with a custom name.
      • buildIndex

        public static BuildIndexPath buildIndex()
        Triggers building of indexes that have been deferred. Note that this feature is currently only supported for GSI indexes, so the final using clause should be explicit and use the GSI index type.
      • dropIndex

        public static UsingPath dropIndex​(String namespace,
                                          String keyspace,
                                          String indexName)
        Drop a secondary index in the given namespace:keyspace.
        Parameters:
        namespace - the namespace prefix (will be escaped).
        keyspace - the keyspace (bucket, will be escaped).
        indexName - the name of the index to be dropped (will be escaped).
      • dropIndex

        public static UsingPath dropIndex​(String keyspace,
                                          String indexName)
        Drop a secondary index in the given keyspace.
        Parameters:
        keyspace - the keyspace (bucket, will be escaped).
        indexName - the name of the index to be dropped (will be escaped).
      • dropNamedPrimaryIndex

        public static UsingPath dropNamedPrimaryIndex​(String namespace,
                                                      String keyspace,
                                                      String customPrimaryName)
        Drop the primary index of the given namespace:keyspace that has a custom name.
        Parameters:
        namespace - the namespace prefix (will be escaped).
        keyspace - the keyspace (bucket, will be escaped).
        customPrimaryName - the custom name for the primary index (will be escaped).
      • dropNamedPrimaryIndex

        public static UsingPath dropNamedPrimaryIndex​(String keyspace,
                                                      String customPrimaryName)
        Drop the primary index in the given keyspace that has a custom name.
        Parameters:
        keyspace - the keyspace (bucket, will be escaped).
        customPrimaryName - the custom name for the primary index (will be escaped).