What is an item processor? ============================================================ The item processor is used by the item job to transform every read item. It can be any class implementing `ItemProcessorInterface `__. What types of item processors exists? ------------------------------------------------------------ **Built-in item processors:** * `ArrayMapProcessor `__: apply a callback to each element of array items. * `CallbackProcessor `__: use a callback to transform each items. * `ChainProcessor `__: chain transformation of multiple item processor, one after the other. * `FilterUniqueProcessor `__: assign an identifier to each item, and skip already encountered items. * `NullProcessor `__: perform no transformation on items. * `RoutingProcessor `__: route processing to different processor based on your logic. **Item processors from bridges:** * From ``symfony/validator`` bridge: * `SkipInvalidItemProcessor `__: validate item and throw exception if invalid that will cause item to be skipped. * From ``symfony/serializer`` bridge: * `DenormalizeItemProcessor `__: denormalize each item. * `NormalizeItemProcessor `__: normalize each item. **Item processors for testing purpose:** * `TestDebugProcessor `__: dummy item processor that you can use in your unit tests. .. seealso:: | :doc:`What is an item job? `