|
27 | 27 | namespace OCA\Circles\Service;
|
28 | 28 |
|
29 | 29 |
|
| 30 | +use daita\MySmallPhpTools\Model\Nextcloud\NC19Request; |
| 31 | +use daita\MySmallPhpTools\Model\Request; |
| 32 | +use daita\MySmallPhpTools\Traits\Nextcloud\TNC19Request; |
30 | 33 | use Exception;
|
31 | 34 | use OCA\Circles\Api\v1\Circles;
|
32 |
| -use OCA\Circles\AppInfo\Application; |
33 | 35 | use OCA\Circles\Db\CirclesRequest;
|
34 | 36 | use OCA\Circles\Db\FederatedLinksRequest;
|
35 | 37 | use OCA\Circles\Db\SharingFrameRequest;
|
|
50 | 52 |
|
51 | 53 | class SharingFrameService {
|
52 | 54 |
|
| 55 | + |
| 56 | + use TNC19Request; |
| 57 | + |
| 58 | + |
53 | 59 | /** @var string */
|
54 | 60 | private $userId;
|
55 | 61 |
|
@@ -297,32 +303,23 @@ public function receiveFrame($token, $uniqueId, SharingFrame $frame) {
|
297 | 303 | * @return bool
|
298 | 304 | * @throws Exception
|
299 | 305 | */
|
300 |
| - public function initiateShare($circleUniqueId, $frameUniqueId) { |
301 |
| - $args = [ |
302 |
| - 'circleId' => $circleUniqueId, |
303 |
| - 'frameId' => $frameUniqueId |
304 |
| - ]; |
305 |
| - |
306 |
| - $client = $this->clientService->newClient(); |
307 |
| - $addr = $this->configService->getLocalAddress() . \OC::$WEBROOT; |
308 |
| - $opts = [ |
309 |
| - 'body' => $args, |
310 |
| - 'timeout' => Application::CLIENT_TIMEOUT, |
311 |
| - 'connect_timeout' => Application::CLIENT_TIMEOUT |
312 |
| - ]; |
313 |
| - |
314 |
| - if ($this->configService->getAppValue(ConfigService::CIRCLES_SELF_SIGNED) === '1') { |
315 |
| - $opts['verify'] = false; |
316 |
| - } |
| 306 | + public function initiateShare(string $circleUniqueId, string $frameUniqueId) { |
| 307 | + $route = $this->urlGenerator->linkToRouteAbsolute('circles.Shares.initShareDelivery'); |
| 308 | + $request = new NC19Request('', Request::TYPE_POST); |
| 309 | + $this->configService->configureRequest($request); |
| 310 | + $request->setProtocols(['https', 'http']); |
| 311 | + $request->addData('circleId', $circleUniqueId); |
| 312 | + $request->addData('frameId', $frameUniqueId); |
| 313 | + $request->setAddressFromUrl($route); |
317 | 314 |
|
318 | 315 | try {
|
319 |
| - $client->post($this->generatePayloadDeliveryURL($addr), $opts); |
| 316 | + $this->doRequest($request); |
320 | 317 |
|
321 | 318 | return true;
|
322 | 319 | } catch (Exception $e) {
|
323 | 320 | $this->miscService->log(
|
324 |
| - 'fail to initialise circle share to ' . $addr . ' for circle ' . $circleUniqueId . ' - ' |
325 |
| - . json_encode($opts) . ' - ' . $e->getMessage(), 3 |
| 321 | + 'fail to initialise circle share with request ' . json_encode($request) . ' - ' |
| 322 | + . $e->getMessage(), 3 |
326 | 323 | );
|
327 | 324 | throw $e;
|
328 | 325 | }
|
|
0 commit comments