/** * Get url to launch package from agent * @param Agent $agent * @return string */ public function buildLaunchUrl($basePath, PackageInterface $package, ActorInterface $agent, $registration = NULL) { $queryString = array(); // @todo need cleaner code for query string builder $queryString['endpoint'] = $this->lrs->getEndpoint(); $queryString['auth'] = $this->lrs->getAuth(); // @todo figure out why launcher url need value as an array $queryString['actor'] = json_encode($this->createActor($agent->toArray())); $queryString['activity_id'] = $package->getLaunchActivityId(); if (!is_null($registration)) { $queryString['registration'] = $registration; } return $basePath . '/' . $package->getLaunchValue() . '?' . $this->buildLaunchQueryString($queryString); }
/** * * @param ActorInterface $actor */ public function setInstructor(ActorInterface $actor) { $this->instructor = $actor; $this->addArray(array('instructor' => $actor->toArray())); }