| 98 | |
| 99 | * Exporting of resources... Different resources can be exported to different formats, some of the resources can be exported to more than one format. There should be an interface for exporting which extenders can be registered as extensions from the modules. |
| 100 | * The export logic too will be in the fuc.resources module, in package called 'exports', to be consistent with the import logic. |
| 101 | * There will be one interface for exporting of resources ResourceExportManager, and there will be an extension point in the func.resources module for it. |
| 102 | * The manager will have method {{{boolean export(ResourceAccess access, File file)}}} which will export the given resource represented by the access into the passed file. |
| 103 | * The manager will have {{{getResourceKind}}} method and {{{getFileFilter}}} method too, it will have {{{getExportRole}}} method which will give a description on the export of the |
| 104 | * The {{{getResourceKind}}} of the interface will have special role, if the kind is just the {{{resourceR4.KIND}}} kind, it will mean that the export manager will be able to export any resource to it's format. |
| 105 | resource. |
| 106 | * In the func.resources module there will be one implementation for SophieFormatExportManager. It will be able to export any resource to the Sophie 2.0 format: |
| 107 | * Problem will be that the exported resources will not contain their outer references, but in the future, the persistence will support caching of resources in the format, so for now that works. |
| 108 | * Other problem is that there are no sub revisions, so to persist the resources a new top access for them will be created by the their sub-model in the book. |