예제 #1
0
 /**
  * Adds a discussion to this discussions state instance.
  *
  * @param Discussion            $discussion
  * @param StateTransitionOption $option,...
  *
  * @return DiscussionState
  */
 public function addDiscussion(Discussion $discussion, StateTransitionOption $option = null)
 {
     $entity = new FamilySearchPlatform();
     $entity->addDiscussion($discussion);
     $request = $this->createAuthenticatedRequest('POST', $this->getSelfUri(), FamilySearchRequest::getMediaTypes(), null, $entity->toJson());
     return $this->stateFactory->createState('DiscussionState', $this->client, $request, $this->passOptionsTo('invoke', array($request), func_get_args()), $this->accessToken);
 }
 /**
  * Adds a discussion to the current collection.
  *
  * @param Discussion            $discussion
  * @param StateTransitionOption $option,...
  *
  * @return DiscussionState
  * @throws GedcomxApplicationException
  */
 public function addDiscussion(Discussion $discussion, StateTransitionOption $option = null)
 {
     $link = $this->getLink(Rel::DISCUSSIONS);
     if ($link == null || $link->getHref() == null) {
         throw new GedcomxApplicationException("Unable to add discussion: missing link.");
     }
     $entity = new FamilySearchPlatform();
     $entity->addDiscussion($discussion);
     $request = $this->createAuthenticatedRequest('POST', $link->getHref(), FamilySearchRequest::getMediaTypes(), null, $entity->toJson());
     return $this->stateFactory->createState('DiscussionState', $this->client, $request, $this->passOptionsTo('invoke', array($request), func_get_args()), $this->accessToken);
 }