19declare(strict_types=1);
30class Handler implements ilPollImageInterface
32 protected ilResourceStorageServices
$irss;
36 ilResourceStorageServices
$irss,
53 $rid = $this->irss->manage()->stream(
55 $this->
repository->stakeholder()->handler()->withUserId($user_id),
59 ->withObjectId($object_id);
60 $values = $this->
repository->values()->handler()
61 ->withResourceIdSerialized($rid->serialize());
62 $this->
repository->handler()->store($key, $values);
74 $key_clone = $this->
repository->key()->handler()
75 ->withObjectId($clone_object_id);
76 $key_original = $this->
repository->key()->handler()
77 ->withObjectId($original_object_id);
78 $element_original = $this->
repository->handler()->getElement($key_original);
80 if ($element_original ===
null) {
84 $rid_original = $element_original->getIRSS()->getResourceIdentification();
85 $rid_clone = $this->irss->manage()->clone($rid_original);
86 $values_clone = $this->
repository->values()->handler()
87 ->withResourceIdSerialized($rid_clone->serialize());
88 $this->
repository->handler()->store($key_clone, $values_clone);
96 ->withObjectId($object_id);
97 $existing_element = $this->
repository->handler()->getElement($key);
98 if (!is_null($existing_element)) {
99 $existing_element->getIRSS()->delete(
$user_id);
100 $this->
repository->handler()->deleteElement($existing_element->getKey());
108 ->withObjectId($object_id);
109 $element = $this->
repository->handler()->getElement($key);
110 if (is_null($element)) {
113 return $element->getIRSS()->getThumbnailImageURL();
120 ->withObjectId($object_id);
121 $element = $this->
repository->handler()->getElement($key);
122 if (is_null($element)) {
125 return $element->getIRSS()->getProcessedImageURL();
132 ->withObjectId($object_id);
133 $element = $this->
repository->handler()->getElement($key);
134 if (is_null($element)) {
137 return $element->getIRSS()->getUnprocessedImageURL();
144 ->withObjectId($object_id);
145 $element = $this->
repository->handler()->getElement($key);
146 if (is_null($element)) {
149 return $element->getIRSS()->getResource();
Stream factory which enables the user to create streams without the knowledge of the concrete class.
static ofResource($resource)
Wraps an already created resource with the stream abstraction.
ilPollImageRepositoryFactoryInterface $repository
deleteImage(ObjectId $object_id, int $user_id)
cloneImage(ObjectId $original_object_id, ObjectId $clone_object_id, int $user_id)
getProcessedImageURL(ObjectId $object_id)
getThumbnailImageURL(ObjectId $object_id)
uploadImage(ObjectId $object_id, string $file_path, string $file_name, int $user_id)
getRessource(ObjectId $object_id)
__construct(ilResourceStorageServices $irss, ilPollImageRepositoryFactoryInterface $repository)
getUnprocessedImageURL(ObjectId $object_id)
ilResourceStorageServices $irss