/** * Transforms entity to primary key identifier * * @param $entity * * @return int|mixed */ public function transform($entity) { if (null == $entity) { return 0; } $meta = $this->repository->getMetadata(); $identifier = $meta->getSingleIdentifierFieldName(); $accessor = $this->repository->getPropertyAccessor(); return $accessor->getValue($entity, $identifier); }
/** * Transforms entity collection to array containing only primary keys * * @param $collection * * @return array */ public function transform($collection) { $meta = $this->repository->getMetadata(); $identifier = $meta->getSingleIdentifierFieldName(); $accessor = $this->repository->getPropertyAccessor(); $items = []; foreach ($collection as $item) { $items[] = $accessor->getValue($item, $identifier); } return $items; }