This package contains various implementations of the {@link org.objectweb.wildcat.ContextProvider} interface. Most are "infrastructure" providers ({@link EmptyContextProvider}, {@link ExpressionsProvider}, {@link OverlayContextProvider}) and do not provide data by themselves.

{@link BasicContextProvider} is the default configurable implementation: it uses a simple in-memory implementation of resources and attributes, and can be entirley manipulated programmatically. It is designed to serves as a basis for other providers.

{@link DynamicContextProvider} extends {@link BasicContextProvider} with two new features:

  1. the ability to attach {@link Sampler}s (simple data sources) to resources, which will update the resource's attributes automatically according to some sampling rate;
  2. the abililty to define synthetic attributes by an expression which can depend on other parts of the context. These attributes will be automatically recomputed when on of the locations they depend on changes.