|
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