src/POData/UriProcessor/UriProcessor.php
/**
     * Query for a related resource set or resource set reference pointed by the 
     * given segment descriptor and update the descriptor with the result.
     * 
     * @param SegmentDescriptor &$segment Describes the related resource
     *                                              to query.
     * 
     * @return void
     */
Query for a related resource set or resource set reference pointed by the
given segment descriptor and update the descriptor with the result.

@param SegmentDescriptor &$segment Describes the related resource
to query.

@return void
Query for a related resource set or resource set reference pointed by the given segment descriptor and update the descriptor with the result . @param SegmentDescriptor &$segment Describes the related resource to query . @return void
private function _handleSegmentTargetsToRelatedResource(SegmentDescriptor $segment) {
        $projectedProperty = $segment->getProjectedProperty();
        $projectedPropertyKind = $projectedProperty->getKind();
        if ($projectedPropertyKind == ResourcePropertyKind::RESOURCESET_REFERENCE) {
            if ($segment->isSingleResult()) {
                $entityInstance = $this->providers->getResourceFromRelatedResourceSet(
                    $segment->getPrevious()->getTargetResourceSetWrapper(),
                    $segment->getPrevious()->getResult(),
                    $segment->getTargetResourceSetWrapper(),
                    $projectedProperty,
                    $segment->getKeyDescriptor()
                );
                $segment->setResult($entityInstance);
            } else {
                $queryResult = $this->providers->getRelatedResourceSet(
	                $this->request->queryType,
                    $segment->getPrevious()->getTargetResourceSetWrapper(),
                    $segment->getPrevious()->getResult(),
                    $segment->getTargetResourceSetWrapper(),
                    $segment->getProjectedProperty(),
                    $this->request->getFilterInfo(),
                    null, 
                    null, 
                    null  
                );
                $segment->setResult($queryResult);
            }           
        } else if ($projectedPropertyKind == ResourcePropertyKind::RESOURCE_REFERENCE) {
            $entityInstance = $this->providers->getRelatedResourceReference(
                $segment->getPrevious()->getTargetResourceSetWrapper(),
                $segment->getPrevious()->getResult(),
                $segment->getTargetResourceSetWrapper(),
                $segment->getProjectedProperty()
            );
            $segment->setResult($entityInstance);
        } else {
        }
    }
private function _handleSegmentTargetsToRelatedResource ( SegmentDescriptor $ segment ) { $ projectedProperty = $ segment -> getProjectedProperty ( ) ; $ projectedPropertyKind = $ projectedProperty -> getKind ( ) ; if ( $ projectedPropertyKind == ResourcePropertyKind :: RESOURCESET_REFERENCE ) { if ( $ segment -> isSingleResult ( ) ) { $ entityInstance = $ this -> providers -> getResourceFromRelatedResourceSet ( $ segment -> getPrevious ( ) -> getTargetResourceSetWrapper ( ) , $ segment -> getPrevious ( ) -> getResult ( ) , $ segment -> getTargetResourceSetWrapper ( ) , $ projectedProperty , $ segment -> getKeyDescriptor ( ) ) ; $ segment -> setResult ( $ entityInstance ) ; } else { $ queryResult = $ this -> providers -> getRelatedResourceSet ( $ this -> request -> queryType , $ segment -> getPrevious ( ) -> getTargetResourceSetWrapper ( ) , $ segment -> getPrevious ( ) -> getResult ( ) , $ segment -> getTargetResourceSetWrapper ( ) , $ segment -> getProjectedProperty ( ) , $ this -> request -> getFilterInfo ( ) , null , null , null ) ; $ segment -> setResult ( $ queryResult ) ; } } else if ( $ projectedPropertyKind == ResourcePropertyKind :: RESOURCE_REFERENCE ) { $ entityInstance = $ this -> providers -> getRelatedResourceReference ( $ segment -> getPrevious ( ) -> getTargetResourceSetWrapper ( ) , $ segment -> getPrevious ( ) -> getResult ( ) , $ segment -> getTargetResourceSetWrapper ( ) , $ segment -> getProjectedProperty ( ) ) ; $ segment -> setResult ( $ entityInstance ) ; } else { } }
Query for a related resource set or resource set reference pointed by the
 given segment descriptor and update the descriptor with the result.
Query for a related resource set or resource set reference pointed by the given segment descriptor and update the descriptor with the result .
//TODO: why are these null?  see #98 // $orderby // $top // $skip //Unexpected state