Skip to content

Update to match the latest Symfony2 #1

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
3 commits merged into from
Mar 5, 2011
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 1 addition & 2 deletions Command/AnonConsumerCommand.php
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,6 @@ protected function configure()
->setName('rabbitmq:anon-consumer')
->addArgument('name', InputArgument::REQUIRED, 'Consumer Name')
->addOption('messages', 'm', InputOption::VALUE_OPTIONAL, 'Messages to consume', 1)
->addOption('debug', 'd', InputOption::VALUE_OPTIONAL, 'Enable Debugging', false)
->addOption('r_key', 'r', InputOption::VALUE_OPTIONAL, 'Routing Key', '#')
;
}
Expand All @@ -41,7 +40,7 @@ protected function execute(InputInterface $input, OutputInterface $output)
{
define('AMQP_DEBUG', (bool) $input->getOption('debug'));

$consumer = $this->container->get(sprintf('rabbitmq.%s_anon', $input->getArgument('name')));
$consumer = $this->container->get(sprintf('old_sound_rabbit_mq.%s_anon', $input->getArgument('name')));
$consumer->setRoutingKey($input->getOption('r_key'));
$consumer->consume($input->getOption('messages'));
}
Expand Down
4 changes: 2 additions & 2 deletions Command/ConsumerCommand.php
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ protected function configure()
->setName('rabbitmq:consumer')
->addArgument('name', InputArgument::REQUIRED, 'Consumer Name')
->addOption('messages', 'm', InputOption::VALUE_OPTIONAL, 'Messages to consume', 1)
->addOption('debug', 'd', InputOption::VALUE_OPTIONAL, 'Enable Debugging', false)
//->addOption('debug', 'd', InputOption::VALUE_OPTIONAL, 'Enable Debugging', false)
;
}

Expand All @@ -42,7 +42,7 @@ protected function execute(InputInterface $input, OutputInterface $output)
define('AMQP_DEBUG', (bool) $input->getOption('debug'));

$this->container
->get(sprintf('rabbitmq.%s_consumer', $input->getArgument('name')))
->get(sprintf('old_sound_rabbit_mq.%s_consumer', $input->getArgument('name')))
->consume($input->getOption('messages'));
}
}
3 changes: 1 addition & 2 deletions Command/RpcServerCommand.php
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,6 @@ protected function configure()
$this
->setName('rabbitmq:rpc-server')
->addArgument('name', InputArgument::REQUIRED, 'Server Name')
->addOption('debug', 'd', InputOption::VALUE_OPTIONAL, 'Enable Debugging', false)
;
}

Expand All @@ -41,7 +40,7 @@ protected function execute(InputInterface $input, OutputInterface $output)
define('AMQP_DEBUG', (bool) $input->getOption('debug'));

$this->container
->get(sprintf('rabbitmq.%s_server', $input->getArgument('name')))
->get(sprintf('old_sound_rabbit_mq.%s_server', $input->getArgument('name')))
->start();
}
}
36 changes: 19 additions & 17 deletions DependencyInjection/OldSoundRabbitmqExtension.php
Original file line number Diff line number Diff line change
Expand Up @@ -7,12 +7,14 @@
use Symfony\Component\DependencyInjection\Definition;
use Symfony\Component\DependencyInjection\Reference;
use Symfony\Component\DependencyInjection\Loader\YamlFileLoader;
use Symfony\Component\Config\FileLocator;

class OldSoundRabbitMqExtension extends Extension
{
public function configLoad($configs, ContainerBuilder $container)
{
public function load(array $configs, ContainerBuilder $container)
{
$loader = new YamlFileLoader($container, __DIR__.'/../Resources/config');
$locator = new FileLocator(array(__DIR__.'/../Resources/config'));
$loader = new YamlFileLoader($container, $locator);
$loader->load('rabbitmq.yml');

$config = $this->mergeConfig($configs);
Expand Down Expand Up @@ -127,30 +129,30 @@ protected function mergeItem(&$mergedConfig, $config, $item)

protected function loadConnection(array $connection, ContainerBuilder $container)
{
$connectionDef = new Definition($container->getParameter('rabbitmq.connection.class'),
$connectionDef = new Definition($container->getParameter('old_sound_rabbit_mq.connection.class'),
array($connection['host'], $connection['port'],
$connection['user'], $connection['password'],
$connection['vhost']));
$container->setDefinition(sprintf('rabbitmq.connection.%s', $connection['alias']), $connectionDef);
$container->setDefinition(sprintf('old_sound_rabbit_mq.connection.%s', $connection['alias']), $connectionDef);

}

protected function loadProducer(array $producer, ContainerBuilder $container)
{
$producerDef = new Definition($container->getParameter('rabbitmq.producer.class'));
$producerDef = new Definition($container->getParameter('old_sound_rabbit_mq.producer.class'));

$producer = $this->setDefaultItemConnection($producer);

$this->injectConnection($producerDef, $producer);

$producerDef->addMethodCall('setExchangeOptions', array($producer['exchange_options']));

$container->setDefinition(sprintf('rabbitmq.%s_producer', $producer['alias']), $producerDef);
$container->setDefinition(sprintf('old_sound_rabbit_mq.%s_producer', $producer['alias']), $producerDef);
}

protected function loadConsumer(array $consumer, ContainerBuilder $container)
{
$consumerDef = new Definition($container->getParameter('rabbitmq.consumer.class'));
$consumerDef = new Definition($container->getParameter('old_sound_rabbit_mq.consumer.class'));

$consumer = $this->setDefaultItemConnection($consumer);

Expand All @@ -160,12 +162,12 @@ protected function loadConsumer(array $consumer, ContainerBuilder $container)
$consumerDef->addMethodCall('setQueueOptions', array($consumer['queue_options']));
$consumerDef->addMethodCall('setCallback', array(array(new Reference($consumer['callback']), 'execute')));

$container->setDefinition(sprintf('rabbitmq.%s_consumer', $consumer['alias']), $consumerDef);
$container->setDefinition(sprintf('old_sound_rabbit_mq.%s_consumer', $consumer['alias']), $consumerDef);
}

protected function loadAnonConsumer(array $consumer, ContainerBuilder $container)
{
$consumerDef = new Definition($container->getParameter('rabbitmq.anon_consumer.class'));
$consumerDef = new Definition($container->getParameter('old_sound_rabbit_mq.anon_consumer.class'));

$consumer = $this->setDefaultItemConnection($consumer);

Expand All @@ -174,25 +176,25 @@ protected function loadAnonConsumer(array $consumer, ContainerBuilder $container
$consumerDef->addMethodCall('setExchangeOptions', array($consumer['exchange_options']));
$consumerDef->addMethodCall('setCallback', array(array(new Reference($consumer['callback']), 'execute')));

$container->setDefinition(sprintf('rabbitmq.%s_anon', $consumer['alias']), $consumerDef);
$container->setDefinition(sprintf('old_sound_rabbit_mq.%s_anon', $consumer['alias']), $consumerDef);
}

protected function loadRpcClient(array $client, ContainerBuilder $container)
{
$clientDef = new Definition($container->getParameter('rabbitmq.rpc_client.class'));
$clientDef = new Definition($container->getParameter('old_sound_rabbit_mq.rpc_client.class'));

$client = $this->setDefaultItemConnection($client);

$this->injectConnection($clientDef, $client);

$clientDef->addMethodCall('initClient');

$container->setDefinition(sprintf('rabbitmq.%s_rpc', $client['alias']), $clientDef);
$container->setDefinition(sprintf('old_sound_rabbit_mq.%s_rpc', $client['alias']), $clientDef);
}

protected function loadRpcServer(array $server, ContainerBuilder $container)
{
$serverDef = new Definition($container->getParameter('rabbitmq.rpc_server.class'));
$serverDef = new Definition($container->getParameter('old_sound_rabbit_mq.rpc_server.class'));

$server = $this->setDefaultItemConnection($server);

Expand All @@ -201,7 +203,7 @@ protected function loadRpcServer(array $server, ContainerBuilder $container)
$serverDef->addMethodCall('initServer', array($server['alias']));
$serverDef->addMethodCall('setCallback', array(array(new Reference($server['callback']), 'execute')));

$container->setDefinition(sprintf('rabbitmq.%s_server', $server['alias']), $serverDef);
$container->setDefinition(sprintf('old_sound_rabbit_mq.%s_server', $server['alias']), $serverDef);
}

protected function setDefaultItemConnection($item)
Expand All @@ -216,7 +218,7 @@ protected function setDefaultItemConnection($item)

protected function injectConnection(Definition $def, $item)
{
$def->addArgument(new Reference(sprintf('rabbitmq.connection.%s', $item['connection'])));
$def->addArgument(new Reference(sprintf('old_sound_rabbit_mq.connection.%s', $item['connection'])));
}

public function getXsdValidationBasePath()
Expand All @@ -231,6 +233,6 @@ public function getNamespace()

public function getAlias()
{
return 'rabbitmq';
return 'old_sound_rabbit_mq';
}
}
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -95,7 +95,7 @@ Now let's say that you want to process picture uploads in the background. After
{
...
$msg = array('user_id' => 1235, 'image_path' => '/path/to/new/pic.png');
$this->get('rabbitmq.upload_picture_producer')->publish(serialize($msg));
$this->get('old_sound_rabbit_mq.upload_picture_producer')->publish(serialize($msg));
...
}

Expand Down Expand Up @@ -190,7 +190,7 @@ And then add the following code to our controller:
public function indexAction($name)
{
...
$client = $this->get('rabbitmq.integer_store_rpc');
$client = $this->get('old_sound_rabbit_mq.integer_store_rpc');
$client->addRequest(serialize(array('min' => 0, 'max' => 10)), 'random_int', 'request_id');
$replies = $client->getReplies();
...
Expand Down Expand Up @@ -229,7 +229,7 @@ Then this code should go in our controller:

public function indexAction($name)
{
$client = $this->get('rabbitmq.parallel_rpc');
$client = $this->get('old_sound_rabbit_mq.parallel_rpc');
$client->addRequest($name, 'char_count', 'char_count');
$client->addRequest(serialize(array('min' => 0, 'max' => 10)), 'random_int', 'random_int');
$replies = $client->getReplies();
Expand Down
12 changes: 6 additions & 6 deletions resources/config/rabbitmq.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
parameters:
rabbitmq.connection.class: AMQPConnection
rabbitmq.producer.class: OldSound\RabbitMqBundle\RabbitMq\Producer
rabbitmq.consumer.class: OldSound\RabbitMqBundle\RabbitMq\Consumer
rabbitmq.anon_consumer.class: OldSound\RabbitMqBundle\RabbitMq\AnonConsumer
rabbitmq.rpc_client.class: OldSound\RabbitMqBundle\RabbitMq\RpcClient
rabbitmq.rpc_server.class: OldSound\RabbitMqBundle\RabbitMq\RpcServer
old_sound_rabbit_mq.connection.class: AMQPConnection
old_sound_rabbit_mq.producer.class: OldSound\RabbitMqBundle\RabbitMq\Producer
old_sound_rabbit_mq.consumer.class: OldSound\RabbitMqBundle\RabbitMq\Consumer
old_sound_rabbit_mq.anon_consumer.class: OldSound\RabbitMqBundle\RabbitMq\AnonConsumer
old_sound_rabbit_mq.rpc_client.class: OldSound\RabbitMqBundle\RabbitMq\RpcClient
old_sound_rabbit_mq.rpc_server.class: OldSound\RabbitMqBundle\RabbitMq\RpcServer