| @@ 622-645 (lines=24) @@ | ||
| 619 | /** |
|
| 620 | * @inheritdoc |
|
| 621 | */ |
|
| 622 | public function getShareById($id, $recipientId = null) { |
|
| 623 | $qb = $this->dbConnection->getQueryBuilder(); |
|
| 624 | ||
| 625 | $qb->select('*') |
|
| 626 | ->from('share') |
|
| 627 | ->where($qb->expr()->eq('id', $qb->createNamedParameter($id))) |
|
| 628 | ->andWhere($qb->expr()->eq('share_type', $qb->createNamedParameter(self::SHARE_TYPE_REMOTE))); |
|
| 629 | ||
| 630 | $cursor = $qb->execute(); |
|
| 631 | $data = $cursor->fetch(); |
|
| 632 | $cursor->closeCursor(); |
|
| 633 | ||
| 634 | if ($data === false) { |
|
| 635 | throw new ShareNotFound(); |
|
| 636 | } |
|
| 637 | ||
| 638 | try { |
|
| 639 | $share = $this->createShareObject($data); |
|
| 640 | } catch (InvalidShare $e) { |
|
| 641 | throw new ShareNotFound(); |
|
| 642 | } |
|
| 643 | ||
| 644 | return $share; |
|
| 645 | } |
|
| 646 | ||
| 647 | /** |
|
| 648 | * Get shares for a given path |
|
| @@ 718-740 (lines=23) @@ | ||
| 715 | * @return IShare |
|
| 716 | * @throws ShareNotFound |
|
| 717 | */ |
|
| 718 | public function getShareByToken($token) { |
|
| 719 | $qb = $this->dbConnection->getQueryBuilder(); |
|
| 720 | ||
| 721 | $cursor = $qb->select('*') |
|
| 722 | ->from('share') |
|
| 723 | ->where($qb->expr()->eq('share_type', $qb->createNamedParameter(self::SHARE_TYPE_REMOTE))) |
|
| 724 | ->andWhere($qb->expr()->eq('token', $qb->createNamedParameter($token))) |
|
| 725 | ->execute(); |
|
| 726 | ||
| 727 | $data = $cursor->fetch(); |
|
| 728 | ||
| 729 | if ($data === false) { |
|
| 730 | throw new ShareNotFound(); |
|
| 731 | } |
|
| 732 | ||
| 733 | try { |
|
| 734 | $share = $this->createShareObject($data); |
|
| 735 | } catch (InvalidShare $e) { |
|
| 736 | throw new ShareNotFound(); |
|
| 737 | } |
|
| 738 | ||
| 739 | return $share; |
|
| 740 | } |
|
| 741 | ||
| 742 | /** |
|
| 743 | * get database row of a give share |
|