Package oracle.nosql.driver.ops

# Class GetIndexesRequest

java.lang.Object
oracle.nosql.driver.ops.Request
oracle.nosql.driver.ops.GetIndexesRequest

public class GetIndexesRequest extends Request
Represents the argument of a `NoSQLHandle.getIndexes(oracle.nosql.driver.ops.GetIndexesRequest)` operation which returns the information of a specific index or all indexes of the specified table, as returned in `GetIndexesResult`.

The table name is a required parameter.

See Also:
  - `NoSQLHandle.getIndexes(oracle.nosql.driver.ops.GetIndexesRequest)`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `GetIndexesRequest()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `String`
  `getIndexName()`
  Gets the index name to use for the request
  `String`
  `getTypeName()`
  Returns the type name of the request.
  `GetIndexesRequest`
  `setCompartment(String compartment)`
  Cloud service only.
  `GetIndexesRequest`
  `setIndexName(String indexName)`
  Sets the index name to use for the request.
  `GetIndexesRequest`
  `setNamespace(String namespace)`
  Sets the optional namespace.
  `GetIndexesRequest`
  `setTableName(String tableName)`
  Sets the table name to use for the request
  `GetIndexesRequest`
  `setTimeout(int timeoutMs)`
  Sets the request timeout value, in milliseconds.

  ### Methods inherited from class oracle.nosql.driver.ops.Request

  `getCompartment, getNamespace, getRateLimitDelayedMs, getReadRateLimiter, getRetryStats, getTableName, getWriteRateLimiter, setReadRateLimiter, setWriteRateLimiter`

  ### Methods inherited from class java.lang.Object

  `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### GetIndexesRequest

    public GetIndexesRequest()

- ## Method Details

  - ### setTableName

    public GetIndexesRequest setTableName(String tableName)
    Sets the table name to use for the request
    Parameters:
      `tableName` - the table name. This is a required parameter.
    Returns:
      this

  - ### setCompartment

    public GetIndexesRequest setCompartment(String compartment)
    Cloud service only.

    Sets the name or id of a compartment to be used for this operation.

    The compartment may be specified as either a name (or path for nested compartments) or as an id (OCID). A name (vs id) can only be used when authenticated using a specific user identity. It is not available if authenticated as an Instance Principal which can be done when calling the service from a compute instance in the Oracle Cloud Infrastructure. See `SignatureProvider.createWithInstancePrincipal()`

    Parameters:
      `compartment` - the name or id. If using a nested compartment, specify the full compartment path `compartmentA.compartmentB`, but exclude the name of the root compartment (tenant).
    Returns:
      this

  - ### setIndexName

    public GetIndexesRequest setIndexName(String indexName)
    Sets the index name to use for the request. If not set, this request will return all indexes of the table.
    Parameters:
      `indexName` - the index name.
    Returns:
      this

  - ### getIndexName

    public String getIndexName()
    Gets the index name to use for the request
    Returns:
      the index name

  - ### setTimeout

    public GetIndexesRequest setTimeout(int timeoutMs)
    Sets the request timeout value, in milliseconds. This overrides any default value set with `NoSQLHandleConfig.setRequestTimeout(int)`. The value must be positive.
    Parameters:
      `timeoutMs` - the timeout value, in milliseconds
    Returns:
      this
    Throws:
      `IllegalArgumentException` - if the timeout value is less than or equal to 0

  - ### setNamespace

    public GetIndexesRequest setNamespace(String namespace)
    Sets the optional namespace. On-premises only. This overrides any default value set with `NoSQLHandleConfig.setDefaultNamespace(java.lang.String)`. Note: if a namespace is specified in the table name for the request (using the namespace:tablename format), that value will override this setting.
    Parameters:
      `namespace` - the namespace to use for the operation
    Returns:
      this
    Since:
      5.4.10

  - ### getTypeName

    public String getTypeName()
    Description copied from class: `Request`
    Returns the type name of the request. This is used for stats.
    Specified by:
      `getTypeName` in class `Request`
    Returns:
      the type name of the request