Package org.eclipse.handly.context

# Class GuiceContext

java.lang.Object
org.eclipse.handly.context.GuiceContext

All Implemented Interfaces:
  `IContext`

public final class GuiceContext extends Object implements IContext
Implementation of `IContext` backed by a Guice injector.

A `property` is translated into an injection `Key` in the following way:

    Key.get(property.getType(), Names.named(property.getName()))

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `GuiceContext(com.google.inject.Injector injector)`
  Constructs a context backed by the given Guice injector.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `boolean`
  `containsKey(Class<?> clazz)`
  Returns whether this context has a value associated with the given class.
  `boolean`
  `containsKey(Property<?> property)`
  Returns whether this context has a value associated with the given property.
  `<T> T`
  `get(Class<T> clazz)`
  Returns the context value associated with the given class.
  `<T> T`
  `get(Property<T> property)`
  Returns the context value associated with the given property.

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

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

  ### Methods inherited from interface org.eclipse.handly.context.IContext

  `getOrDefault`

- ## Constructor Details

  - ### GuiceContext

    @Inject public GuiceContext(com.google.inject.Injector injector)
    Constructs a context backed by the given Guice injector.
    Parameters:
      `injector` - a Guice injector (not `null`)

- ## Method Details

  - ### get

    public <T> T get(Property<T> property)
    Description copied from interface: `IContext`
    Returns the context value associated with the given property.
    Specified by:
      `get` in interface `IContext`
    Parameters:
      `property` - the property being queried (not `null`)
    Returns:
      an object corresponding to the given property, or `null`

  - ### get

    public <T> T get(Class<T> clazz)
    Description copied from interface: `IContext`
    Returns the context value associated with the given class.
    Specified by:
      `get` in interface `IContext`
    Parameters:
      `clazz` - the class being queried (not `null`)
    Returns:
      an object corresponding to the given class, or `null`

  - ### containsKey

    public boolean containsKey(Property<?> property)
    Description copied from interface: `IContext`
    Returns whether this context has a value associated with the given property.
    Specified by:
      `containsKey` in interface `IContext`
    Parameters:
      `property` - the property being queried (not `null`)
    Returns:
      `true` if this context has a value for the given property, and `false` otherwise

  - ### containsKey

    public boolean containsKey(Class<?> clazz)
    Description copied from interface: `IContext`
    Returns whether this context has a value associated with the given class.
    Specified by:
      `containsKey` in interface `IContext`
    Parameters:
      `clazz` - the class being queried (not `null`)
    Returns:
      `true` if this context has a value for the given class, and `false` otherwise