Here is a proposal
MooseTask
MooseAbstractImporter (which right now is not used and only contain error handling and importingContext)
this class could hold the plugin mechanism that would be run as a tearDown from now.
MooseImportingTask - Renamed SmalltalkImportingTask (add importerClass logic)
MooseCompositeImporterTask
MooseSqueakClassPackageImporterTask -> MoosePharoClassPackageExtractTask
MooseSqueakClasssCategoriesImporterTask - >MoosePharoClassCategoriesExtractTask
MooseImportClassesTask -> MooseExtractClassesTask
FileStructureImporter(/Extractor)
MooseOperator
Since we will not be able to inherit from the same superclass MSEReader and MooseAbstractImporter.
We could define one trait to represent the plugin management and apply to the MSEReader and MooseAbstractImporter.
So let us know what you think.
Stef and Usman