/**
  * Returns the list of FQCN of all activity entities which can be associated with the current entity
  *
  * @return string[]
  */
 public function getActivityTypes()
 {
     $activityClasses = [];
     foreach ($this->activityManager->getActivityTypes() as $activityClass) {
         $targets = $this->activityManager->getActivityTargets($activityClass);
         if (isset($targets[$this->class])) {
             $activityClasses[] = $activityClass;
         }
     }
     return array_map(function ($class) {
         return ['entity' => $class];
     }, $activityClasses);
 }
예제 #2
0
 /**
  * @param array $options
  *
  * @return bool
  */
 protected function isApplicable(array $options)
 {
     if ($options['contexts_disabled'] || empty($options['data_class'])) {
         return false;
     }
     $className = $options['data_class'];
     if (!$this->doctrineHelper->isManageableEntity($className)) {
         return false;
     }
     $activities = $this->activityManager->getActivityTypes();
     return in_array($className, $activities, true);
 }
 /**
  * Returns the list of FQCN of all activity entities
  *
  * @return string[]
  */
 public function getActivityTypes()
 {
     return array_map(function ($class) {
         return ['entity' => $class];
     }, $this->activityManager->getActivityTypes());
 }