org.apache.lucene.benchmark.byTask.utils

## Class Config

- java.lang.Object
- - org.apache.lucene.benchmark.byTask.utils.Config

-     public class Config
      extends Object

  Perf run configuration properties.

  Numeric property containing ":", e.g. "10:100:5" is interpreted as array of numeric values. It is extracted once, on first use, and maintain a round number to return the appropriate value.

  The config property "work.dir" tells where is the root of docs data dirs and indexes dirs. It is set to either of:

  - value supplied for it in the alg file;
  - otherwise, value of System property "benchmark.work.dir";
  - otherwise, "work".

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `Config(Properties props)` Create config without algorithm - useful for a programmatic perf test.
    `Config(Reader algReader)` Read both algorithm and config properties.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `get(String name, boolean dflt)` Return a boolean property.
    `double` | `get(String name, double dflt)` Return a double property.
    `int` | `get(String name, int dflt)` Return an int property.
    `String` | `get(String name, String dflt)` Return a string property.
    `String` | `getAlgorithmText()`
    `String` | `getColsNamesForValsByRound()`
    `String` | `getColsValuesForValsByRound(int roundNum)`
    `int` | `getRoundNumber()`
    `int` | `newRound()` Increment the round number, for config values that are extracted by round number.
    `void` | `set(String name, String value)` Set a property.

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

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

- - ### Constructor Detail

    - #### Config

          public Config(Reader algReader)
                 throws IOException

      Read both algorithm and config properties.
      Parameters:
        `algReader` - from where to read algorithm and config properties.
      Throws:
        `IOException` - If there is a low-level I/O error.

    - #### Config

          public Config(Properties props)

      Create config without algorithm - useful for a programmatic perf test.
      Parameters:
        `props` - - configuration properties.

  - ### Method Detail

    - #### get

          public String get(String name,
                            String dflt)

      Return a string property.
      Parameters:
        `name` - name of property.
        `dflt` - default value.
      Returns:
        a string property.

    - #### set

          public void set(String name,
                          String value)
                   throws Exception

      Set a property. Note: once a multiple values property is set, it can no longer be modified.
      Parameters:
        `name` - name of property.
        `value` - either single or multiple property value (multiple values are separated by ":")
      Throws:
        `Exception`

    - #### get

          public int get(String name,
                         int dflt)

      Return an int property. If the property contain ":", e.g. "10:100:5", it is interpreted as array of ints. It is extracted once, on first call to get() it, and a by-round-value is returned.
      Parameters:
        `name` - name of property
        `dflt` - default value
      Returns:
        a int property.

    - #### get

          public double get(String name,
                            double dflt)

      Return a double property. If the property contain ":", e.g. "10:100:5", it is interpreted as array of doubles. It is extracted once, on first call to get() it, and a by-round-value is returned.
      Parameters:
        `name` - name of property
        `dflt` - default value
      Returns:
        a double property.

    - #### get

          public boolean get(String name,
                             boolean dflt)

      Return a boolean property. If the property contain ":", e.g. "true.true.false", it is interpreted as array of booleans. It is extracted once, on first call to get() it, and a by-round-value is returned.
      Parameters:
        `name` - name of property
        `dflt` - default value
      Returns:
        a int property.

    - #### newRound

          public int newRound()

      Increment the round number, for config values that are extracted by round number.
      Returns:
        the new round number.

    - #### getColsNamesForValsByRound

          public String getColsNamesForValsByRound()

      Returns:
        names of params set by round, for reports title

    - #### getColsValuesForValsByRound

          public String getColsValuesForValsByRound(int roundNum)

      Returns:
        values of params set by round, for reports lines.

    - #### getRoundNumber

          public int getRoundNumber()

      Returns:
        the round number.

    - #### getAlgorithmText

          public String getAlgorithmText()

      Returns:
        Returns the algorithmText.

Copyright © 2000-2021 Apache Software Foundation. All Rights Reserved.