This repository was archived by the owner on Nov 28, 2019. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 6
This repository was archived by the owner on Nov 28, 2019. It is now read-only.
[Importer] Consistent API to map element IDs in meta-values #56
Copy link
Copy link
Open
Milestone
Description
Whenever element IDs are stored as meta data value, the relation will break on import when these IDs changes. So right before we import meta data we provide a filter passing the meta data and the instance of the ID mapper.
As everything else, this API has to be independent of the progress of the import, so it is not stated that the ID is available at the moment of the first processing.
This will be part of the meta-data importer described in #57
Todo:
- Provide an interface for value filters
Import\Filter\ValueFilterableInterface. - Provide implementations of this filter to handle simple serialized and non-serialized meta values (
SingleIdMetaValueFilter,RecursiveIdMetaValueFilter - Provide a list that composes all filters for any type/key pair
Import\Data\MetaFilterListInterfaceandImport\Data\MetaFilterListInterface - Provide a connector for the importer objects that applies the filters from the list to the value right before input
Import\Service\ImportMetaFilterInterfaceandImport\Service\ImportMetaFilter - Fire the action
w2m_import_meta_not_filterable(in the connector service) when a filter is not filterable right now - Provide a collector that listens to this action
Import\Data\ImportListeningMetaFilterList - Provide a module that tries to resolve all postponed filters at the end of the import
Import\Module\ResolvingPendingMetaFilter - Provide a controller that connects everything
Controller\MetaFilterApi - Provide an action to apply custom filters to the list
w2m_import_meta_filter - Use an internal composite in
Data\MetaFilterListto have only one filter instance per type/key pair. If one of the composed filter is not able to filter the value, no other filter must be applied in the first time (Service\ImportMetaFilter). Otherwise we would get in trouble with multiple record metas on clean-up. - Apply all this for user, comment and term-meta if we respect these in future
- Document all the stuff
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels