## org.pentaho.reporting.libraries.formula
Interface FormulaContext

All Known Implementing Classes:
  DefaultFormulaContext

    public interface FormulaContext

The formula-context connects the formula functions with the outside world. The context can be used to resolve external references, to query the configuration or to retrieve information about the formula-evaluation system.

Author:
  Thomas Morgner

Method Summary
`Configuration` `getConfiguration()` Returns the local configuration of the formula.
`FunctionRegistry` `getFunctionRegistry()` Returns the function registry.
`LocalizationContext` `getLocalizationContext()` Returns the localization context of this formula.
`OperatorFactory` `getOperatorFactory()` Returns the operator registry.
`TypeRegistry` `getTypeRegistry()` Returns the type registry.
`boolean` `isReferenceDirty(java.lang.Object name)` Checks whether the external object referenced by `name` has changed.
`java.lang.Object` `resolveReference(java.lang.Object name)` Resolves the given reference.
`Type` `resolveReferenceType(java.lang.Object name)` Queries the type of the given reference.

Method Detail

### isReferenceDirty

    boolean isReferenceDirty(java.lang.Object name)
                             throws ContextEvaluationException

  Checks whether the external object referenced by `name` has changed.

  Parameters:
    `name` - the name that identifies the reference.
  Returns:
    true, if the reference has changed, false otherwise.
  Throws:
    `ContextEvaluationException` - if an error occurs.

### resolveReference

    java.lang.Object resolveReference(java.lang.Object name)
                                      throws ContextEvaluationException

  Resolves the given reference. How the name is interpreted by the outside system is an implementation detail.

  Parameters:
    `name` - the name that identifies the reference.
  Returns:
    the resolved object.
  Throws:
    `ContextEvaluationException` - if an error occurs.

### resolveReferenceType

    Type resolveReferenceType(java.lang.Object name)
                              throws ContextEvaluationException

  Queries the type of the given reference. How the name is interpreted by the outside system is an implementation detail. This return a LibFormula type object matching the type of the object that would be returned by resolveReference.

  Parameters:
    `name` - the name that identifies the reference.
  Returns:
    the type of the resolved object.
  Throws:
    `ContextEvaluationException` - if an error occurs.

### getLocalizationContext

    LocalizationContext getLocalizationContext()

  Returns the localization context of this formula. The localization context can be used to query locale specific configuration settings.

  Returns:
    the localization context.

### getConfiguration

    Configuration getConfiguration()

  Returns the local configuration of the formula.

  Returns:
    the local configuration.

### getFunctionRegistry

    FunctionRegistry getFunctionRegistry()

  Returns the function registry. The function registry grants access to all formula-function implementations.

  Returns:
    the function registry.

### getTypeRegistry

    TypeRegistry getTypeRegistry()

  Returns the type registry. The type registry contains all type information and allows to convert values between different types.

  Returns:
    the function registry.

### getOperatorFactory

    OperatorFactory getOperatorFactory()

  Returns the operator registry. The Operator-registry contains all operator-implementations.

  Returns:
    the operator registry.