Class QueryOptions

java.lang.Object
com.influxdb.v3.client.query.QueryOptions

@ThreadSafe public final class QueryOptions extends Object
Query API options.

Supports to specify:

  • database - specifies the database to be used for InfluxDB operations
  • queryType - specifies the type of query sent to InfluxDB. Default to 'SQL'.
  • headers - specifies the headers to be added to query request

To add custom headers to the query request, use the following code:

 QueryOptions options = new QueryOptions(Map.of("X-Tracing-Id", "123"));
 Stream<Object[]> rows = client.query("select * from cpu", queryOptions);
 
  • Field Details

    • DEFAULTS

      public static final QueryOptions DEFAULTS
      Default QueryAPI options.
    • INFLUX_QL

      public static final QueryOptions INFLUX_QL
      Default QueryAPI options for InfluxQL.
  • Constructor Details

    • QueryOptions

      public QueryOptions(@Nonnull String database)
      Construct QueryAPI options. The query type is set to SQL.
      Parameters:
      database - The database to be used for InfluxDB operations.
    • QueryOptions

      public QueryOptions(@Nonnull QueryType queryType)
      Construct QueryAPI options.
      Parameters:
      queryType - The type of query sent to InfluxDB.
    • QueryOptions

      public QueryOptions(@Nullable Map<String,String> headers)
      Construct QueryAPI options. The query type is set to SQL.
      Parameters:
      headers - The headers to be added to query request. The headers specified here are preferred over the headers specified in the client configuration.
    • QueryOptions

      public QueryOptions(@Nullable String database, @Nullable QueryType queryType)
      Construct QueryAPI options.
      Parameters:
      database - The database to be used for InfluxDB operations. If it is not specified then use ClientConfig.getDatabase().
      queryType - The type of query sent to InfluxDB. If it is not specified then use QueryType.SQL.
    • QueryOptions

      public QueryOptions(@Nullable String database, @Nullable QueryType queryType, @Nullable Map<String,String> headers)
      Construct QueryAPI options.
      Parameters:
      database - The database to be used for InfluxDB operations. If it is not specified then use ClientConfig.getDatabase().
      queryType - The type of query sent to InfluxDB. If it is not specified then use QueryType.SQL.
      headers - The headers to be added to query request. The headers specified here are preferred over the headers specified in the client configuration.
  • Method Details

    • databaseSafe

      @Nullable public String databaseSafe(@Nonnull ClientConfig config)
      Parameters:
      config - with default value
      Returns:
      The destination database for writes.
    • queryTypeSafe

      @Nonnull public QueryType queryTypeSafe()
      Returns:
      The type of query sent to InfluxDB, cannot be null.
    • headersSafe

      @Nonnull public Map<String,String> headersSafe()
      Returns:
      The headers to be added to query request, cannot be null.