/** * @param array $activity */ public function newActivity(array $activity) { $resolver = new OptionsResolver(); $resolver->setRequired(array('verb', 'object')); $resolver->setDefined(array('target')); $resolver->setAllowedTypes('target', array('keeko\\framework\\model\\ActivityObjectInterface', 'keeko\\core\\model\\ActivityObject')); $resolver->setAllowedTypes('object', array('keeko\\framework\\model\\ActivityObjectInterface', 'keeko\\core\\model\\ActivityObject')); $options = $resolver->resolve($activity); $obj = new Activity(); $obj->setActor($this); $obj->setVerb($options['verb']); $obj->setObject($this->getActivityObject($options['object'], true)); if (isset($options['target'])) { $obj->setTarget($this->getActivityObject($options['target'])); } $obj->save(); }
/** * @param ChildActivity $activity The ChildActivity object to add. */ protected function doAddActivity(ChildActivity $activity) { $this->collActivities[] = $activity; $activity->setActor($this); }