AppserverIo\Appserver\MessageQueue\QueueManagerFactory::visit PHP Method

visit() public static method

The main method that creates new instances in a separate context.
public static visit ( AppserverIo\Psr\Application\ApplicationInterface $application, AppserverIo\Appserver\Core\Api\Node\ManagerNodeInterface $managerConfiguration ) : void
$application AppserverIo\Psr\Application\ApplicationInterface The application instance to register the class loader with
$managerConfiguration AppserverIo\Appserver\Core\Api\Node\ManagerNodeInterface The manager configuration
return void
    public static function visit(ApplicationInterface $application, ManagerNodeInterface $managerConfiguration)
    {
        // initialize the stackable containers
        $queues = new GenericStackable();
        $workers = new GenericStackable();
        $messages = new GenericStackable();
        // initialize the queue locator
        $queueLocator = new QueueLocator();
        // initialize the default settings for message queue
        $queueManagerSettings = new QueueManagerSettings();
        $queueManagerSettings->mergeWithParams($managerConfiguration->getParamsAsArray());
        // initialize the queue manager
        $queueManager = new QueueManager();
        $queueManager->injectQueues($queues);
        $queueManager->injectWorkers($workers);
        $queueManager->injectMessages($messages);
        $queueManager->injectApplication($application);
        $queueManager->injectResourceLocator($queueLocator);
        $queueManager->injectManagerSettings($queueManagerSettings);
        // attach the instance
        $application->addManager($queueManager, $managerConfiguration);
    }
QueueManagerFactory