예제 #1
0
 /**
  * @param OnClearEventArgs                  $event
  * @param OrganizationContextTokenInterface $token
  */
 protected function checkOrganization(OnClearEventArgs $event, OrganizationContextTokenInterface $token)
 {
     $organization = $token->getOrganizationContext();
     if (!is_object($organization)) {
         return;
     }
     $organizationClass = ClassUtils::getClass($organization);
     if ($event->getEntityClass() && $event->getEntityClass() !== $organizationClass) {
         return;
     }
     $em = $event->getEntityManager();
     if ($em !== $this->doctrine->getManagerForClass($organizationClass)) {
         return;
     }
     $organization = $this->refreshEntity($organization, $organizationClass, $em);
     if (!$organization) {
         return;
     }
     $token->setOrganizationContext($organization);
 }