From b987680253f29edcfbb844b84cf311705669330a Mon Sep 17 00:00:00 2001 From: Nicolas Joubert Date: Fri, 2 Oct 2026 11:15:58 +0200 Subject: [PATCH] cleverage/doctrine-process-bundle#32 to #35 - Add demo processes Co-Authored-By: Claude Opus 5.5 (1M context) --- ...octrine.database.read_array_parameter.yaml | 22 +++++++++++++ ...octrine.database.read_multiple_inputs.yaml | 32 +++++++++++++++++++ ...trine.database.read_sql_without_table.yaml | 17 ++++++++++ ...ine.entitymanager.detacher_null_input.yaml | 11 +++++++ ...e.entitymanager.reader_entity_manager.yaml | 18 +++++++++++ ....entitymanager.reader_multiple_inputs.yaml | 31 ++++++++++++++++++ ...rine.entitymanager.remover_null_input.yaml | 11 +++++++ 7 files changed, 142 insertions(+) create mode 100644 config/packages/process/demo.doctrine.database.read_array_parameter.yaml create mode 100644 config/packages/process/demo.doctrine.database.read_multiple_inputs.yaml create mode 100644 config/packages/process/demo.doctrine.database.read_sql_without_table.yaml create mode 100644 config/packages/process/demo.doctrine.entitymanager.detacher_null_input.yaml create mode 100644 config/packages/process/demo.doctrine.entitymanager.reader_entity_manager.yaml create mode 100644 config/packages/process/demo.doctrine.entitymanager.reader_multiple_inputs.yaml create mode 100644 config/packages/process/demo.doctrine.entitymanager.remover_null_input.yaml diff --git a/config/packages/process/demo.doctrine.database.read_array_parameter.yaml b/config/packages/process/demo.doctrine.database.read_array_parameter.yaml new file mode 100644 index 0000000..a134992 --- /dev/null +++ b/config/packages/process/demo.doctrine.database.read_array_parameter.yaml @@ -0,0 +1,22 @@ +clever_age_process: + configurations: + demo.doctrine.database.read_array_parameter: + description: > + DatabaseReaderTask with an array parameter (IN clause), typed with the DBAL 4 ArrayParameterType enum + as documented in database_reader_task.md + help: > + Ex: bin/console cleverage:process:execute demo.doctrine.database.read_array_parameter + tasks: + read: + service: '@CleverAge\DoctrineProcessBundle\Task\Database\DatabaseReaderTask' + options: + sql: 'SELECT id, title FROM book WHERE title IN (:titles) ORDER BY id' + table: 'book' + params: + titles: [ 'It', 'Salem' ] + types: + titles: !php/enum Doctrine\DBAL\ArrayParameterType::STRING + outputs: [ debug ] + + debug: + service: '@CleverAge\ProcessBundle\Task\Debug\DebugTask' diff --git a/config/packages/process/demo.doctrine.database.read_multiple_inputs.yaml b/config/packages/process/demo.doctrine.database.read_multiple_inputs.yaml new file mode 100644 index 0000000..b961b79 --- /dev/null +++ b/config/packages/process/demo.doctrine.database.read_multiple_inputs.yaml @@ -0,0 +1,32 @@ +clever_age_process: + configurations: + demo.doctrine.database.read_multiple_inputs: + description: > + DatabaseReaderTask receiving several inputs (cleverage/doctrine-process-bundle#33): the query must be + executed again for each input, every row being output each time + help: > + Ex: bin/console cleverage:process:execute demo.doctrine.database.read_multiple_inputs + tasks: + inputs: + service: '@CleverAge\ProcessBundle\Task\ConstantIterableOutputTask' + options: + output: [ 'first', 'second', 'third' ] + outputs: [ read ] + + read: + service: '@CleverAge\DoctrineProcessBundle\Task\Database\DatabaseReaderTask' + options: + sql: 'SELECT title FROM book ORDER BY id' + table: 'book' + outputs: [ title ] + + title: + service: '@CleverAge\ProcessBundle\Task\TransformerTask' + options: + transformers: + property_accessor: + property_path: '[title]' + outputs: [ debug ] + + debug: + service: '@CleverAge\ProcessBundle\Task\Debug\DebugTask' diff --git a/config/packages/process/demo.doctrine.database.read_sql_without_table.yaml b/config/packages/process/demo.doctrine.database.read_sql_without_table.yaml new file mode 100644 index 0000000..c44ea99 --- /dev/null +++ b/config/packages/process/demo.doctrine.database.read_sql_without_table.yaml @@ -0,0 +1,17 @@ +clever_age_process: + configurations: + demo.doctrine.database.read_sql_without_table: + description: > + DatabaseReaderTask with the sql option only (cleverage/doctrine-process-bundle#34): table is not used + when sql is given, it must not be required + help: > + Ex: bin/console cleverage:process:execute demo.doctrine.database.read_sql_without_table + tasks: + read: + service: '@CleverAge\DoctrineProcessBundle\Task\Database\DatabaseReaderTask' + options: + sql: 'SELECT id, title FROM book ORDER BY id' + outputs: [ debug ] + + debug: + service: '@CleverAge\ProcessBundle\Task\Debug\DebugTask' diff --git a/config/packages/process/demo.doctrine.entitymanager.detacher_null_input.yaml b/config/packages/process/demo.doctrine.entitymanager.detacher_null_input.yaml new file mode 100644 index 0000000..723794a --- /dev/null +++ b/config/packages/process/demo.doctrine.entitymanager.detacher_null_input.yaml @@ -0,0 +1,11 @@ +clever_age_process: + configurations: + demo.doctrine.entitymanager.detacher_null_input: + description: > + DoctrineDetacherTask receiving a null input (cleverage/doctrine-process-bundle#35): the error message + must name the task + help: > + Ex: bin/console cleverage:process:execute demo.doctrine.entitymanager.detacher_null_input + tasks: + detach: + service: '@CleverAge\DoctrineProcessBundle\Task\EntityManager\DoctrineDetacherTask' diff --git a/config/packages/process/demo.doctrine.entitymanager.reader_entity_manager.yaml b/config/packages/process/demo.doctrine.entitymanager.reader_entity_manager.yaml new file mode 100644 index 0000000..823d897 --- /dev/null +++ b/config/packages/process/demo.doctrine.entitymanager.reader_entity_manager.yaml @@ -0,0 +1,18 @@ +clever_age_process: + configurations: + demo.doctrine.entitymanager.reader_entity_manager: + description: > + DoctrineReaderTask with an unknown entity_manager (cleverage/doctrine-process-bundle#32): the option must + select the entity manager, an unknown name must fail + help: > + Ex: bin/console cleverage:process:execute demo.doctrine.entitymanager.reader_entity_manager + tasks: + read: + service: '@CleverAge\DoctrineProcessBundle\Task\EntityManager\DoctrineReaderTask' + options: + class_name: 'App\Entity\Book' + entity_manager: 'unknown' + outputs: [ debug ] + + debug: + service: '@CleverAge\ProcessBundle\Task\Debug\DebugTask' diff --git a/config/packages/process/demo.doctrine.entitymanager.reader_multiple_inputs.yaml b/config/packages/process/demo.doctrine.entitymanager.reader_multiple_inputs.yaml new file mode 100644 index 0000000..af0c8c4 --- /dev/null +++ b/config/packages/process/demo.doctrine.entitymanager.reader_multiple_inputs.yaml @@ -0,0 +1,31 @@ +clever_age_process: + configurations: + demo.doctrine.entitymanager.reader_multiple_inputs: + description: > + DoctrineReaderTask receiving several inputs (cleverage/doctrine-process-bundle#33): the query must be + executed again for each input, every entity being output each time + help: > + Ex: bin/console cleverage:process:execute demo.doctrine.entitymanager.reader_multiple_inputs + tasks: + inputs: + service: '@CleverAge\ProcessBundle\Task\ConstantIterableOutputTask' + options: + output: [ 'first', 'second', 'third' ] + outputs: [ read ] + + read: + service: '@CleverAge\DoctrineProcessBundle\Task\EntityManager\DoctrineReaderTask' + options: + class_name: 'App\Entity\Book' + outputs: [ title ] + + title: + service: '@CleverAge\ProcessBundle\Task\TransformerTask' + options: + transformers: + property_accessor: + property_path: 'title' + outputs: [ debug ] + + debug: + service: '@CleverAge\ProcessBundle\Task\Debug\DebugTask' diff --git a/config/packages/process/demo.doctrine.entitymanager.remover_null_input.yaml b/config/packages/process/demo.doctrine.entitymanager.remover_null_input.yaml new file mode 100644 index 0000000..04620bf --- /dev/null +++ b/config/packages/process/demo.doctrine.entitymanager.remover_null_input.yaml @@ -0,0 +1,11 @@ +clever_age_process: + configurations: + demo.doctrine.entitymanager.remover_null_input: + description: > + DoctrineRemoverTask receiving a null input (cleverage/doctrine-process-bundle#35): the task must fail + with an explicit message + help: > + Ex: bin/console cleverage:process:execute demo.doctrine.entitymanager.remover_null_input + tasks: + remove: + service: '@CleverAge\DoctrineProcessBundle\Task\EntityManager\DoctrineRemoverTask'