本文整理汇总了PHP中Symfony\Component\EventDispatcher\GenericEvent类的典型用法代码示例。如果您正苦于以下问题:PHP GenericEvent类的具体用法?PHP GenericEvent怎么用?PHP GenericEvent使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了GenericEvent类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: onUpdate
public function onUpdate(GenericEvent $event)
{
$entity = $event->getSubject();
if ($entity instanceof Routeable && $entity->getRoute() != null) {
$this->updateRoute($entity->getRoute());
}
}
示例2:
function it_send_password_reset_pin_mail($sender, GenericEvent $event, UserInterface $user)
{
$event->getSubject()->willReturn($user);
$user->getEmail()->willReturn('test@example.com');
$sender->send('reset_password_pin', ['test@example.com'], Argument::any())->shouldBeCalled();
$this->sendResetPasswordPinEmail($event);
}
示例3:
function it_resolves_order_states(StateResolverInterface $stateResolver, GenericEvent $event, OrderInterface $order)
{
$event->getSubject()->willReturn($order);
$stateResolver->resolveShippingState($order)->shouldBeCalled();
$stateResolver->resolvePaymentState($order)->shouldBeCalled();
$this->resolveOrderStates($event);
}
示例4:
function it_does_not_proceed_order_channel_if_it_is_already_set(GenericEvent $event, OrderInterface $order, ChannelInterface $channel)
{
$event->getSubject()->willReturn($order);
$order->getChannel()->willReturn($channel);
$order->setChannel($channel)->shouldNotBeCalled();
$this->processOrderChannel($event);
}
示例5:
function it_proccess_order_channel_successfully(GenericEvent $event, OrderInterface $order, ChannelContextInterface $channelContext, ChannelInterface $channel)
{
$event->getSubject()->shouldBeCalled()->willReturn($order);
$channelContext->getChannel()->shouldBeCalled()->willReturn($channel);
$order->setChannel($channel)->shouldBeCalled();
$this->processOrderChannel($event);
}
示例6: onCheckoutComplete
/**
* {@inheritdoc}
*/
public function onCheckoutComplete(GenericEvent $event)
{
/** @var OrderInterface $order */
$order = $event->getSubject();
Assert::isInstanceOf($order, OrderInterface::class);
$this->session->set('sylius_order_id', $order->getId());
}
示例7: updateChannel
/**
* @param GenericEvent $event
*/
public function updateChannel(GenericEvent $event)
{
$channel = $event->getSubject();
if (!$channel instanceof ChannelInterface) {
return;
}
$oldLocales = $this->repository->getDeletedLocalesForChannel($channel);
$newLocales = $channel->getLocales();
$updatedLocales = [];
foreach ($oldLocales as $locale) {
$locale->removeChannel($channel);
$updatedLocales[] = $locale;
if (null !== $this->completeness) {
$this->completeness->scheduleForChannelAndLocale($channel, $locale);
}
}
foreach ($newLocales as $locale) {
if (!$locale->hasChannel($channel)) {
$locale->addChannel($channel);
$updatedLocales[] = $locale;
}
}
if (!empty($updatedLocales)) {
$this->saver->saveAll($updatedLocales);
}
}
示例8: login
public function login(GenericEvent $event)
{
$user = $event->getSubject();
if ($user instanceof UserInterface) {
$this->userCartMerger->merge($user);
}
}
示例9: up
/**
* Starts a new phantomjs process in background
*
* @throws \Symfony\Component\Process\Exception\RuntimeException
*/
public function up()
{
$this->killAllRunning();
$this->process = new Process('phantomjs --webdriver=' . $this->port . ' ' . $this->options);
$process = $this->process;
$output = new GenericEvent();
$process->setTimeout(null);
$process->start(function () use($process, $output) {
$output->setArgument('output', $process->getIncrementalOutput());
});
$phantomjsOnline = false;
$portScan = false;
while (!$phantomjsOnline) {
if ($output->hasArgument('output')) {
$portScan = strpos($output->getArgument('output'), 'running on port ' . $this->port);
}
if ($portScan) {
echo $output->getArgument('output');
}
$phantomjsOnline = $process->isStarted() && $process->isRunning() && $portScan;
if ($process->isTerminated()) {
throw new RuntimeException('Phantomjs could not been started with webdriver on port ' . $this->port);
}
}
}
示例10:
function it_does_not_update_password_if_customer_does_not_have_user(PasswordUpdaterInterface $passwordUpdater, GenericEvent $event, CustomerInterface $customer)
{
$event->getSubject()->willReturn($customer);
$customer->getUser()->willReturn(null);
$passwordUpdater->updatePassword(null)->shouldNotBeCalled();
$this->customerUpdateEvent($event);
}
示例11:
function it_does_not_set_locale_on_post_update_when_event_subject_is_different_from_current_user($translator, GenericEvent $event, UserInterface $user, RequestStack $requestStack, Request $request, LocaleInterface $locale)
{
$event->getSubject()->willReturn($user);
$event->getArgument('current_user')->willReturn(null);
$translator->setLocale('fr_FR')->shouldNotBeCalled();
$this->onPostUpdate($event);
}
示例12: checkChannels
/**
* Check if channels are linked to this tree
*
* @param GenericEvent $event
*
* @throws ConflictHttpException
*/
public function checkChannels(GenericEvent $event)
{
$tree = $event->getSubject();
if (count($tree->getChannels()) > 0) {
throw new ConflictHttpException($this->translator->trans('flash.tree.not removable'));
}
}
示例13: onApiCall
/**
* @param GenericEvent $event
*/
public function onApiCall(GenericEvent $event)
{
if (!$this->calls) {
$this->calls = [];
}
$this->calls[] = $event->getSubject();
}
示例14: onTextmasterDocumentIncomplete
/**
* Mark document's related job as 'started'.
*
* @param GenericEvent $event
*/
public function onTextmasterDocumentIncomplete(GenericEvent $event)
{
/** @var DocumentInterface $document */
$document = $event->getSubject();
$job = $this->jobManager->getFromDocument($document);
$this->jobManager->start($job);
}
示例15: initializeRequest
public function initializeRequest(GenericEvent $event)
{
if (null === $this->request) {
return;
}
$this->request->attributes->set('easyadmin', array('entity' => $entity = $event->getArgument('entity'), 'view' => $this->request->query->get('action', 'list'), 'item' => ($id = $this->request->query->get('id')) ? $this->findCurrentItem($entity, $id) : null));
}