/** * Read the relative given by a specific relationship definition * * @param \Gedcomx\Conclusion\Relationship $relationship * @param \Gedcomx\Rs\Client\Options\StateTransitionOption $option,... * * @return \Gedcomx\Rs\Client\PersonState|null */ public function readRelative(Relationship $relationship, StateTransitionOption $option = null) { $reference = null; if ($this->refersToMe($relationship->getPerson1())) { $reference = $relationship->getPerson2(); } elseif ($this->refersToMe($relationship->getPerson2())) { $reference = $relationship->getPerson1(); } if ($reference == null || $reference->getResource() == null) { return null; } $request = $this->createAuthenticatedGedcomxRequest('GET', $reference->getResource()); return $this->stateFactory->createState('PersonState', $this->client, $request, $this->passOptionsTo('invoke', array($request), func_get_args()), $this->accessToken); }