Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make DefaultLUTService use IOService #81

Open
stelfrich opened this issue Jan 11, 2019 · 1 comment
Open

Make DefaultLUTService use IOService #81

stelfrich opened this issue Jan 11, 2019 · 1 comment

Comments

@stelfrich
Copy link
Member

stelfrich commented Jan 11, 2019

DefaultLUTService.legacyTextLUT uses TableLoader.valuesFromTextFile to read a LUT from a CSV files. Since this is the only use of TableLoader.valuesFromTextFile in our codebase we should retire it in favor of implementations in scijava-plugins-io-table. See also scijava/scijava-plugins-io-table#4 (comment).

This, however, poses several challenges/tasks (in no particular order):

  1. Should LUTService still support reading of LUTs from InputStream? If so, such requests can't be handled by IOService. Is that correct, @ctrueden?
  2. We should migrate code for reading LUTs from InputStreams into dedicated IOPlugins
  3. Basically, strip down the LUTService to pass requests to IOService and fail gracefully if a LUT can't be read (which doesn't work for InputStreams - see 1.)
@ctrueden
Copy link
Member

Should LUTService still support reading of LUTs from InputStream? If so, such requests can't be handled by IOService.

The plan is to improve IOPlugin to support using Location as well as String, so that we can still support streams and remote locations and whatever extensibly via a common mechanism. I think we can do it in a backwards-compatible way.

CC @gab1one

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants