protected void _saveFiringCounts(final Map entityToFiringsPerIteration) {
Director director = (Director) getContainer();
final CompositeActor container = (CompositeActor) director
.getContainer();
ChangeRequest request = new ChangeRequest(this,
"Record firings per iteration") {
protected void _execute() throws KernelException {
Iterator entities = entityToFiringsPerIteration.keySet()
.iterator();
while (entities.hasNext()) {
Entity entity = (Entity) entities.next();
int firingCount = ((Integer) entityToFiringsPerIteration
.get(entity)).intValue();
DFUtilities.setOrCreate(entity, "firingsPerIteration",
firingCount);
if (_debugging) {
_debug("Adding firingsPerIteration parameter to "
+ entity.getName() + " with value "
+ firingCount);
}
}
}
};
// Indicate that the change is non-persistent, so that
// the UI doesn't prompt to save.
request.setPersistent(false);
container.requestChange(request);
}