/** * @param $resource */ protected function initializeStack($resource) { $this->stack = new RequestStack(); if (is_array($resource) || is_object($resource) && $resource instanceof Collection || is_object($resource) && $resource instanceof QueryResultInterface) { foreach ($resource as $singleResource) { $resourceUri = $this->resourceMapper->getPublicResourceUri($singleResource); $dataIdentifier = $this->resourceMapper->getDataIdentifierForPayload($singleResource); $this->stack->push((string) $resourceUri, $dataIdentifier, RequestStack::POSITION_DATACOLLECTION); } } else { $resourceUri = $this->resourceMapper->getPublicResourceUri($resource); $dataIdentifier = $this->resourceMapper->getDataIdentifierForPayload($resource); $this->stack->push((string) $resourceUri, $dataIdentifier, RequestStack::POSITION_DATA); } }
/** * @param $payload * @return array */ protected function getDataIdentifierForPayload($payload) { return $this->resourceMapper->getDataIdentifierForPayload($payload); }