Slicer: 2145-support-for-installing-extension-from-file 9461240b

Author Committer Branch Timestamp Parent
jcfr jcfr 2145-support-for-installing-extension-from-file 2013-11-26 18:20:11 2145-support-for-installing-extension-from-file ddbe711c
Changeset

COMP: Removed unused/unmaintained RemoteIO classes and FetchMI module logic

For future references, the corresponding code has been added to
the Slicer attic. See Slicer/Attic@53262c8

From discussion with Steve and Andras:

// --------------------
(1) Jc - Nov 26, 2013

I notice that the only reason we depend on curl is for existence
of RemoteIO library that has been "replaced" by SampleData
and DataStore.

I really like the concept of registering URI that could be
downloaded that is why we should keep the infrastructure in place.

That said, I was thinking to get remove the following classes:

vtkHIDHandler.h
vtkHIDTagTable.h
vtkSRBHandler.h
vtkXNATHandler.h
vtkXNDHandler.h
vtkXNDTagTable.h

Then, we could implement a Qt based vtkHTTPHandler handler, that
way we could simply remove the curl dependency.

In the mean time, I would also remove the FetchMI logic which is
not maintained or used at that point.

Let me know what you think,

// --------------------
(2) Andras - Nov 26, 2013

It’s always a good idea to make the core smaller and simpler, so
I support the idea of getting rid of unused classes and unnecessary
dependencies.

We planned to use curl for uploading training results in a .zip
file to Moodle, but I guess we can add curl to our module then.

// --------------------
(3) Jc - Nov 26, 2013

Thanks for commenting.

If your module is a loadable or a scripted module, all "curl"
functionality can be provided by Qt. Would that work for you ?

// --------------------
(4) Andras - Nov 26, 2013

We would need quite complex curl functionalities for uploading data,
see the scripts below:

https://gist.github.com/Joshkunz/4516316

https://github.com/proyectoeduhub/moodle-cli/blob/master/moodle-file-upload-curl.sh

Would it be feasible to implement these?

// --------------------
(5) Jc - Nov 26, 2013

Good point. The plan would then be to:

(1) remove dependency of Slicer core against curl

(2) Only, build both the Curl library and the curl executable, keeping
them in the package.

That way, it would provide great flexibility with minimum overhead.

// --------------------
(6) Steve - Nov 26, 2013

Sounds like an excellent plan.

Yes, I like the design of the remote IO support in MRML, but it's not
being used and is great to simplify wherever possible. FetchMI can
go away for now, with the hope that we'll reproduce and improve on
it in the future (someday).

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22744 3bd1e089-480b-0410-8dfb-8563597acbee

mod - Libs/MRML/Logic/vtkMRMLRemoteIOLogic.cxx Diff File
mod - Libs/RemoteIO/CMakeLists.txt Diff File
rm - Libs/RemoteIO/vtkHIDHandler.cxx Diff File
rm - Libs/RemoteIO/vtkHIDHandler.h Diff File
rm - Libs/RemoteIO/vtkHIDTagTable.cxx Diff File
rm - Libs/RemoteIO/vtkHIDTagTable.h Diff File
rm - Libs/RemoteIO/vtkSRBHandler.cxx Diff File
rm - Libs/RemoteIO/vtkSRBHandler.h Diff File
rm - Libs/RemoteIO/vtkXNATHandler.cxx Diff File
rm - Libs/RemoteIO/vtkXNATHandler.h Diff File
rm - Libs/RemoteIO/vtkXNDHandler.cxx Diff File
rm - Libs/RemoteIO/vtkXNDHandler.h Diff File
rm - Libs/RemoteIO/vtkXNDTagTable.cxx Diff File
rm - Libs/RemoteIO/vtkXNDTagTable.h Diff File
mod - Modules/Loadable/CMakeLists.txt Diff File
rm - Modules/Loadable/FetchMI/CMakeLists.txt Diff File
rm - Modules/Loadable/FetchMI/Logic/CMakeLists.txt Diff File
rm - Modules/Loadable/FetchMI/Logic/vtkFetchMILogic.cxx Diff File
rm - Modules/Loadable/FetchMI/Logic/vtkFetchMILogic.h Diff File
rm - Modules/Loadable/FetchMI/Logic/vtkFetchMIParser.cxx Diff File
rm - Modules/Loadable/FetchMI/Logic/vtkFetchMIParser.h Diff File
rm - Modules/Loadable/FetchMI/Logic/vtkFetchMIParserHID.cxx Diff File
rm - Modules/Loadable/FetchMI/Logic/vtkFetchMIParserHID.h Diff File
rm - Modules/Loadable/FetchMI/Logic/vtkFetchMIParserXND.cxx Diff File
rm - Modules/Loadable/FetchMI/Logic/vtkFetchMIParserXND.h Diff File
rm - Modules/Loadable/FetchMI/Logic/vtkFetchMIServer.cxx Diff File
rm - Modules/Loadable/FetchMI/Logic/vtkFetchMIServer.h Diff File
rm - Modules/Loadable/FetchMI/Logic/vtkFetchMIServerCollection.cxx Diff File
rm - Modules/Loadable/FetchMI/Logic/vtkFetchMIServerCollection.h Diff File
rm - Modules/Loadable/FetchMI/Logic/vtkFetchMIWebServicesClient.cxx Diff File
rm - Modules/Loadable/FetchMI/Logic/vtkFetchMIWebServicesClient.h Diff File
rm - Modules/Loadable/FetchMI/Logic/vtkFetchMIWebServicesClientXND.cxx Diff File
rm - Modules/Loadable/FetchMI/Logic/vtkFetchMIWebServicesClientXND.h Diff File
rm - Modules/Loadable/FetchMI/Logic/vtkFetchMIWriter.cxx Diff File
rm - Modules/Loadable/FetchMI/Logic/vtkFetchMIWriter.h Diff File
rm - Modules/Loadable/FetchMI/Logic/vtkFetchMIWriterXND.cxx Diff File
rm - Modules/Loadable/FetchMI/Logic/vtkFetchMIWriterXND.h Diff File
rm - Modules/Loadable/FetchMI/Logic/vtkMRMLFetchMINode.cxx Diff File
rm - Modules/Loadable/FetchMI/Logic/vtkMRMLFetchMINode.h Diff File