| @@ 685-708 (lines=24) @@ | ||
| 682 | /** |
|
| 683 | * @inheritdoc |
|
| 684 | */ |
|
| 685 | public function getShareById($id, $recipientId = null) { |
|
| 686 | $qb = $this->dbConnection->getQueryBuilder(); |
|
| 687 | ||
| 688 | $qb->select('*') |
|
| 689 | ->from($this->shareTable) |
|
| 690 | ->where($qb->expr()->eq('id', $qb->createNamedParameter($id))) |
|
| 691 | ->andWhere($qb->expr()->eq('share_type', $qb->createNamedParameter(self::SHARE_TYPE_REMOTE))); |
|
| 692 | ||
| 693 | $cursor = $qb->execute(); |
|
| 694 | $data = $cursor->fetch(); |
|
| 695 | $cursor->closeCursor(); |
|
| 696 | ||
| 697 | if ($data === false) { |
|
| 698 | throw new ShareNotFound(); |
|
| 699 | } |
|
| 700 | ||
| 701 | try { |
|
| 702 | $share = $this->createShareObject($data); |
|
| 703 | } catch (InvalidShare $e) { |
|
| 704 | throw new ShareNotFound(); |
|
| 705 | } |
|
| 706 | ||
| 707 | return $share; |
|
| 708 | } |
|
| 709 | ||
| 710 | /** |
|
| 711 | * Get shares for a given path |
|
| @@ 787-809 (lines=23) @@ | ||
| 784 | * @return IShare |
|
| 785 | * @throws ShareNotFound |
|
| 786 | */ |
|
| 787 | public function getShareByToken($token) { |
|
| 788 | $qb = $this->dbConnection->getQueryBuilder(); |
|
| 789 | ||
| 790 | $cursor = $qb->select('*') |
|
| 791 | ->from($this->shareTable) |
|
| 792 | ->where($qb->expr()->eq('share_type', $qb->createNamedParameter(self::SHARE_TYPE_REMOTE))) |
|
| 793 | ->andWhere($qb->expr()->eq('token', $qb->createNamedParameter($token))) |
|
| 794 | ->execute(); |
|
| 795 | ||
| 796 | $data = $cursor->fetch(); |
|
| 797 | ||
| 798 | if ($data === false) { |
|
| 799 | throw new ShareNotFound(); |
|
| 800 | } |
|
| 801 | ||
| 802 | try { |
|
| 803 | $share = $this->createShareObject($data); |
|
| 804 | } catch (InvalidShare $e) { |
|
| 805 | throw new ShareNotFound(); |
|
| 806 | } |
|
| 807 | ||
| 808 | return $share; |
|
| 809 | } |
|
| 810 | ||
| 811 | /** |
|
| 812 | * get database row of a give share |
|