| @@ 675-698 (lines=24) @@ | ||
| 672 | /** |
|
| 673 | * @inheritdoc |
|
| 674 | */ |
|
| 675 | public function getShareById($id, $recipientId = null) { |
|
| 676 | $qb = $this->dbConnection->getQueryBuilder(); |
|
| 677 | ||
| 678 | $qb->select('*') |
|
| 679 | ->from($this->shareTable) |
|
| 680 | ->where($qb->expr()->eq('id', $qb->createNamedParameter($id))) |
|
| 681 | ->andWhere($qb->expr()->eq('share_type', $qb->createNamedParameter(self::SHARE_TYPE_REMOTE))); |
|
| 682 | ||
| 683 | $cursor = $qb->execute(); |
|
| 684 | $data = $cursor->fetch(); |
|
| 685 | $cursor->closeCursor(); |
|
| 686 | ||
| 687 | if ($data === false) { |
|
| 688 | throw new ShareNotFound(); |
|
| 689 | } |
|
| 690 | ||
| 691 | try { |
|
| 692 | $share = $this->createShareObject($data); |
|
| 693 | } catch (InvalidShare $e) { |
|
| 694 | throw new ShareNotFound(); |
|
| 695 | } |
|
| 696 | ||
| 697 | return $share; |
|
| 698 | } |
|
| 699 | ||
| 700 | /** |
|
| 701 | * Get shares for a given path |
|
| @@ 777-799 (lines=23) @@ | ||
| 774 | * @return IShare |
|
| 775 | * @throws ShareNotFound |
|
| 776 | */ |
|
| 777 | public function getShareByToken($token) { |
|
| 778 | $qb = $this->dbConnection->getQueryBuilder(); |
|
| 779 | ||
| 780 | $cursor = $qb->select('*') |
|
| 781 | ->from($this->shareTable) |
|
| 782 | ->where($qb->expr()->eq('share_type', $qb->createNamedParameter(self::SHARE_TYPE_REMOTE))) |
|
| 783 | ->andWhere($qb->expr()->eq('token', $qb->createNamedParameter($token))) |
|
| 784 | ->execute(); |
|
| 785 | ||
| 786 | $data = $cursor->fetch(); |
|
| 787 | ||
| 788 | if ($data === false) { |
|
| 789 | throw new ShareNotFound(); |
|
| 790 | } |
|
| 791 | ||
| 792 | try { |
|
| 793 | $share = $this->createShareObject($data); |
|
| 794 | } catch (InvalidShare $e) { |
|
| 795 | throw new ShareNotFound(); |
|
| 796 | } |
|
| 797 | ||
| 798 | return $share; |
|
| 799 | } |
|
| 800 | ||
| 801 | /** |
|
| 802 | * get database row of a give share |
|