Skip to content

welpdev/batchoperation-bundle

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

93 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

WelpBatchBundle

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/