Skip to content

Allow persistence of Op history #66

@gselzer

Description

@gselzer

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 BarOpHistoryService doesn't have all of the Ops listed in the history created by the FooOpHistoryService that 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?

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions