welp/batch-operation-bundle

Symfony Bundle to batch Operation

dev-master 2017-06-12 14:09 UTC

This package is auto-updated.

Last update: 2024-12-21 00:33:59 UTC


README

Build Status GitHub license Documentation

Symfony Bundle to manage batch operation. You can choose whatever broker you want (default is RabbitMq)

Features

  • Support RabbitMq
    • Automatically create producer
    • Automatically create consumer
    • Automatically create queue
    • Support create/Delete Action
    • Dispatch Event with the entity created/deleted
    • Support custom action
    • Exploit Batch Size
  • Manage Batch, batch Status, Batch Event
  • Rest Controller
  • Support Redis as a broker
  • Support other Broker
  • Delete Batch and operations from queue, and revert actions

Quickstart

Add the bundle to your project

composer require welp/batch-operation-bundle

Add Welp\BatchBundle\WelpBatchBundle to your AppKernel.php:

$bundles = [
    // ...
    new Welp\BatchBundle\WelpBatchBundle(),
];

Extends the BatchModel

Create a entity which extends out Welp\BatchBundle\Model\BatchModel

use Doctrine\ORM\Mapping as ORM;
use Welp\BatchBundle\Model\Batch as BaseBatch;

/**
 * @ORM\Entity()
 * @ORM\Table(name="batch")
 * @ORM\HasLifecycleCallbacks
 */
class Batch extends BaseBatch{
    ...
}

Minimal Configuration

welp_batch:
    entity_manager: doctrine.orm.entity_manager
    batch_entity:
        batch: MyBundle\Entity\Batch

Full Documentation

you can find the full documentation at https://welpdev.github.io/batchoperation-bundle/