Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The Plugin Context is composed of two sub-components, namely the PreProcessPluginContext and the PostProcessPluginContext.

...

PreProcessPluginContext

The PreProcessPluginContext is constructed each time rule execution is requested.  The following data components are contained within the context:

  • allFactLists
    • This object is a Map of Class to List, or more specifically, Map<Class<?>, List<?>>.  The key of each map entry may be a Class of any given type, though Plugins should restrict the types to OpenCDS-internal components of the vMR.
    • Fact Lists are the facts that Drools uses for inferencing–these contain data from the vMR.
  • namedObjects
    • This object is a Map of String to Object, or more specifically, Map<String, Object>.  The key of each map entry may be any given String, which is typically used within Drools.
    • Named objects are currently (at the University of Utah) used by Drools rules for obtaining result fact lists.
  • globals
    • This object is a Map of String to Object, or more specifically, Map<String, Object>.  The key of each map entry may be any given String, which is typically used as a Global within the Drools context.  Names are restricted to any value other than the following:
      • evalTime, clientLanguage, clientTimeZoneOffset, focalPersonId, assertions, and namedObjects.
  • cache
    • Cache is a cache of data within an OpencdsCache cache region, where plugins may store the data they support for future processing, as in the case of, e.g., SupportingData.

...

PostProcessPluginContext

The PostProcessingPluginContext PostProcessPluginContext is constructed each time rule execution has completed.  The following data components are contained within the context:

...