params = $params; $this->httpClient = $httpClient; $this->requestStack = $requestStack; $this->respondService = $respondService; } /** * {@inheritDoc} */ public function All() { return $this->httpClient->data( 'GET', $this->params->get('domain_dam') . '/media.json', [ 'headers' => [ 'x-auth-token' => $this->requestStack->getCurrentRequest()->headers->get('x-auth-token'), ], ] ); } /** * {@inheritDoc} */ public function getByElement(int $element) { return $this->httpClient->data( 'GET', $this->params->get('domain_pim') . '/element/' . $element . '/medias.json', [ 'headers' => [ 'x-auth-token' => $this->requestStack->getCurrentRequest()->headers->get('x-auth-token'), ], ] ); } /** * {@inheritDoc} */ public function getByElementIds(array $elementIds) { $response = $this->httpClient->dataProvider( 'POST', $this->params->get('domain_pim') . '/elements/medias.json', [ 'headers' => [ 'x-auth-token' => $this->requestStack->getCurrentRequest()->headers->get('x-auth-token'), ], 'json' => [ 'elementIds' => $elementIds ] ] ); return $this->respondService->checkProviderResponse($response); } /** * {@inheritDoc} */ public function collectMediaByIds(array $mediaIds, bool $mediaBd = false) { $response = $this->httpClient->dataProvider( 'POST', $this->params->get('domain_dam') . '/medias/file.json', [ 'headers' => [ 'x-auth-token' => $this->requestStack->getCurrentRequest()->headers->get('x-auth-token'), ], 'json' => [ 'mediaIds' => $mediaIds, 'mediaBd' => $mediaBd, ] ] ); return $this->respondService->checkProviderResponse($response); } /** * {@inheritDoc} */ public function collectMedias(int $elementId, int $nbMedia){ $response = $this->httpClient->dataProvider( 'POST', $this->params->get('domain_pim') . '/element/'.$elementId.'/medias.json', [ 'headers' => [ 'x-auth-token' => $this->requestStack->getCurrentRequest()->headers->get('x-auth-token'), ], 'json' => [ 'nbMedias' => $nbMedia ] ] ); return $this->respondService->checkProviderResponse($response); } }