Mercurial > dive4elements > framework
view artifacts/src/main/java/de/intevation/artifacts/DataProvider.java @ 445:95c668fc25d6 2.9.6
Added tag 2.9.5 for changeset 76e4b9a1ef45
author | Sascha L. Teichmann <teichmann@intevation.de> |
---|---|
date | Tue, 13 Nov 2012 19:10:09 +0100 |
parents | ab3900303f25 |
children |
line wrap: on
line source
package de.intevation.artifacts; /** * DataProviders register on a Blackboard with a key (basically shouting * "I can or know X!"). * * Consumers look at the blackboard and then consume data from these * DataProvider, passing them (optional) parameterization and the blackboard * itself. * * Through the blackboard-passing-when-consuming, also recursive patterns can * be modelled (but take care, there is no in-built cycle detection). */ public interface DataProvider { /** Register this DataProvider on a blackboard under a key. */ public void register(CallContext blackboard); /** Provide data, given parameterization and a "blackboard". */ public Object provideData(Object key, Object param, CallContext context); } // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :