refactor: move Saver, Submitter, and InputProcessor to oonirun #1543
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
My current objective is to cleanup and rationalize the engine package such that it is more explicit how we're using probeservices APIs.
In performing this task, I noticed that Saver and InputProcessor are only ever used by the oonirun package.
This happens because:
the Saver is just a tiny wrapper around SaveMeasurement that constructs either a model.Saver or a fake one depending on the configuration, which seems a pretty specific use case of oonirun given the current API we're using;
we can same basically the same for the Submitter;
the InputProcessor, albeit nice, is probably not flexible enough to be used elsewhere unless we hammer it a lot.
Additionally, in the future, ./cmd/ooniprobe should probably be based on oonirun, and possibly also ./pkg/oonimkall.
Also, ./internal/cmd/miniooni is already based on oonirun.
To conclude, oonirun should be the focus of future work and changes, while the functionality I'm moving here, could either be in engine or oonirun. But my current goal is to focus on the engine, so it's fine to move these types.
Part of ooni/probe#2700