-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Labels
Milestone
Description
To ease reproducibility, OpHistoryServices should be able to persist their histories, and from that persisted data be able to restore that history into a readable form.
Ideally, this would be accomplished using some OpHistoryService API along the lines of:
public void recordHistory(URI outputLocation);
public void restoreHistory(URI inputLocation);(One) implementation of these methods might benefit from scijava-persist
The restoration of a history would ideally be possible independent of original OpHistoryService implementation (i.e. a FooOpHistoryService should be able to restore a BarOpHistoryService), but this might be too strict an approach. Potential problems may include:
- Situations where aa
BarOpHistoryServicedoesn't have all of the Ops listed in the history created by theFooOpHistoryServicethat recorded the history - Limitations on extensibility (all
OpHistoryServices would have to serialize/deserialize in the same way, or at least know how to deserialize numerous types of serialized histories)
One interesting thought: upon a call to restoreHistory, should the OpHistoryService:
- Erase/Record any previously logged history?
- Meld its previously recorded history with the history recorded at
inputLocation?