Details
-
Sub-task
-
Resolution: Unresolved
-
None
-
None
-
High
-
FIX: The Bconfs used for Export/Merging are now derived from the Import-Bconf's to solve Problems when using customized Subfilters
-
Empty show more show less
Description
The Bconfs used for Export/Merging must be derived from the Import-Bconf's to solve Problems when using customized Subfilters. That means, that the Export-Bconf is a variant of the Import-Bconf with a different Pipeline. It should always exist alongside the main Import BCONF in the filesystem. The naming shall be like:
- bconf-<ID>.bconf -> the existing impport bconf - we do not rename it
- bconf-export--<ID>.bconf -> the new additional export bconf
The pipeline is taken from application/modules/editor/Plugins/Okapi/data/pipeline/ Unable to render embedded object: File (c8a4b2b4-69a9-494f-b7e5-98127098ec4e) not found.Unable to render embedded object: File (c8a4b2b4-69a9-494f-b7e5-98127098ec4e) not found. translate5-merging.pln
For now, we directly use it from there, maybe later there is a need to copy it to the bconf dir.
The resulting process will be like:
- when unpacking a BCONF, copy "translate5-export-pipeline.pln" as "export-pipeline" to the Entities related dir (just as the other parts) -> editor_Plugins_Okapi_Bconf_Entity::unpack
- when packing a BCONF, pack two bconfs, the main/import one and the export one with the export-pipeline (this will automatically trigger a rebuild if neccessary -> editor_Plugins_Okapi_Bconf_Entity::pack
This BCONF then has to be used in the Export-Step (editor_Plugins_Okapi_Worker::doExport) and replaces the old Config (which then shall be removed):
runtimeOptions.plugins.Okapi.export.okapiBconfDefaultName
To achieve this, there must be params added to the worker, "bconfFilePath" and "bconfName", just like it is done in editor_Plugins_Okapi_Worker::doImport
There is one important exception: When the import was done with an embedded BCONF in the ZIP (bconfInZip, see DB LEK_task_meta.bconfInZip ) we use the "old" _application/modules/editor/Plugins/Okapi/data/okapi_default_export.bconf _ as export bconf.
Reminder: OKAPI 1.47 added more settings for the step:
<rainbowPipeline version="1"><step class="net.sf.okapi.steps.common.RawDocumentToFilterEventsStep"></step> <step class="net.sf.okapi.steps.rainbowkit.postprocess.MergingStep">#v1 preserveSegmentation.b=false returnRawDocument.b=false forceTargetLocale.b=false overrideOutputPath= copyCodeMetadata.b=true skipOriginalTargetCodeMetadata.b=false</step>
There must be a script to generate the export-bconf for all existing bconfs for an instance (DB-Update PHP-script), see https://jira.translate5.net/browse/TRANSLATE-4093
Also it msut be regenerated in all cases currently the (import-)BCONF is packed:
- internal version-update
- srx/fprm updates
- fresh install & generation of t5 default bconf
When this is implemented, the Intermediate-FIX
MittagQI\Translate5\Plugins\Okapi\Export\ManifestFixer
is obsolete and can be removed
Open Problem:
- Are there Customers having an adjusted Export-Bconf ? How to handle this case if so ? => We need Marc's input here how to proceed