Package org.eclipse.rdf4j.query.algebra.evaluation.util

## Class EvaluationStrategies

- java.lang.Object
- - org.eclipse.rdf4j.query.algebra.evaluation.util.EvaluationStrategies

-     public class EvaluationStrategies
      extends Object

  Registry for currently active `EvaluationStrategy` objects. The internal registry uses soft references to allow entries to be garbage-collected when no longer used. Currently, the primary purpose of this is to support (de)serialization of objects (over the lifetime of the VM) that depend on an EvaluationStrategy
  Author:
    Jeen Broekstra

- - ### Method Summary

    All Methods Static Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `static EvaluationStrategy` | `get​(UUID key)` | Retrieve the EvaluationStrategy registered with the supplied key.
    `static UUID` | `getKey​(EvaluationStrategy strategy)` | Retrieve the registry key for the given EvaluationStrategy
    `static UUID` | `register​(EvaluationStrategy strategy)` | Add a strategy to the registry and returns the registry key.

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

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

- - ### Method Detail

    - #### get

          public static final EvaluationStrategy get​(UUID key)

      Retrieve the EvaluationStrategy registered with the supplied key.
      Parameters:
        `key` - the key
      Returns:
        the registered EvaluationStrategy, or `null` if no matching EvaluationStrategy can be found.

    - #### getKey

          public static final UUID getKey​(EvaluationStrategy strategy)

      Retrieve the registry key for the given EvaluationStrategy
      Parameters:
        `strategy` - the EvaluationStrategy for which to retrieve the registry key
      Returns:
        the registry key with which the supplied strategy can be retrieved, or `null` if the supplied strategy is not in the registry.

    - #### register

          public static final UUID register​(EvaluationStrategy strategy)

      Add a strategy to the registry and returns the registry key. If the strategy is already present, the operation simply returns the key with which it is currently registered.
      Parameters:
        `strategy` - the EvaluationStrategy to register
      Returns:
        the key with which the strategy is registered.