Mercurial > dive4elements > framework
comparison artifacts/src/main/java/org/dive4elements/artifacts/DataProvider.java @ 471:1a87cb24a446
Moved directories to org.dive4elements
author | Sascha L. Teichmann <teichmann@intevation.de> |
---|---|
date | Thu, 25 Apr 2013 10:50:31 +0200 |
parents | artifacts/src/main/java/de/intevation/artifacts/DataProvider.java@ab3900303f25 |
children | 415df0fc4fa1 |
comparison
equal
deleted
inserted
replaced
470:19cb9729bd17 | 471:1a87cb24a446 |
---|---|
1 package de.intevation.artifacts; | |
2 | |
3 /** | |
4 * DataProviders register on a Blackboard with a key (basically shouting | |
5 * "I can or know X!"). | |
6 * | |
7 * Consumers look at the blackboard and then consume data from these | |
8 * DataProvider, passing them (optional) parameterization and the blackboard | |
9 * itself. | |
10 * | |
11 * Through the blackboard-passing-when-consuming, also recursive patterns can | |
12 * be modelled (but take care, there is no in-built cycle detection). | |
13 */ | |
14 public interface DataProvider { | |
15 /** Register this DataProvider on a blackboard under a key. */ | |
16 public void register(CallContext blackboard); | |
17 | |
18 /** Provide data, given parameterization and a "blackboard". */ | |
19 public Object provideData(Object key, Object param, CallContext context); | |
20 } | |
21 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : |