ILIAS
trunk Revision v11.0_alpha-1866-gfa368f7776e
|
Class ResourceBuilder. More...
Public Member Functions | |
__construct (private StorageHandlerFactory $storage_handler_factory, Repositories $repositories, private LockHandler $lock_handler, private StreamAccess $stream_access, protected FileNamePolicy $file_name_policy=new NoneFileNamePolicy()) | |
ResourceBuilder constructor. More... | |
new (UploadResult $result, InfoResolver $info_resolver, ResourceType $type=ResourceType::SINGLE_FILE) | |
newFromStream (FileStream $stream, InfoResolver $info_resolver, bool $keep_original=false, ResourceType $type=ResourceType::SINGLE_FILE) | |
newBlank (ResourceType $type=ResourceType::SINGLE_FILE) | |
append (StorableResource $resource, UploadResult $result, InfoResolver $info_resolver, RevisionStatus $status) | |
replaceWithUpload (StorableResource $resource, UploadResult $result, InfoResolver $info_resolver) | |
appendFromStream (StorableResource $resource, FileStream $stream, InfoResolver $info_resolver, RevisionStatus $status, bool $keep_original=false,) | |
replaceWithStream (StorableResource $resource, FileStream $stream, InfoResolver $info_resolver, bool $keep_original=false,) | |
appendFromRevision (StorableResource $resource, int $revision_number) | |
has (ResourceIdentification $identification) | |
check if a resource exists More... | |
store (StorableResource $resource) | |
after you have modified a resource, you can store it here More... | |
clone (StorableResource $resource) | |
Clone anexisting resource with all it's revisions, stakeholders and information More... | |
storeRevision (Revision $revision, ?StorableResource $resource=null) | |
Store one Revision More... | |
publish (StorableResource $resource) | |
unpublish (StorableResource $resource) | |
extractStream (Revision $revision) | |
remove (StorableResource $resource, ?ResourceStakeholder $stakeholder=null) | |
Remove a complete revision. More... | |
removeRevision (StorableResource $resource, int $revision_number) | |
createDirectoryInsideContainer (StorableContainerResource $container, string $path_inside_container,) | |
removePathInsideContainer (StorableContainerResource $container, string $path_inside_container,) | |
addUploadToContainer (StorableContainerResource $container, UploadResult $result, string $parent_path_inside_container,) | |
addStreamToContainer (StorableContainerResource $container, FileStream $stream, string $path_inside_container,) | |
Protected Attributes | |
array | $resource_cache = [] |
StorageHandler | $primary_storage_handler |
Private Member Functions | |
buildDraftReplacementRevision (StorableResource $resource, Revision $new_revision, InfoResolver $info_resolver) | |
ensurePathInZIP (\ZipArchive $zip, string $path, bool $is_file) | |
deleteRevision (StorableResource $resource, Revision $revision) | |
populateNakedResourceWithRevisionsAndStakeholders (StorableResource $resource) | |
populateRevisionInfo (Revision $revision, InfoResolver $info_resolver) | |
Class ResourceBuilder.
Definition at line 57 of file ResourceBuilder.php.
ILIAS\ResourceStorage\Resource\ResourceBuilder::__construct | ( | private StorageHandlerFactory | $storage_handler_factory, |
Repositories | $repositories, | ||
private LockHandler | $lock_handler, | ||
private StreamAccess | $stream_access, | ||
protected FileNamePolicy | $file_name_policy = new NoneFileNamePolicy() |
||
) |
ResourceBuilder constructor.
FileNamePolicy | null | $file_name_policy |
Definition at line 89 of file ResourceBuilder.php.
References ILIAS\ResourceStorage\Repositories\getInformationRepository(), ILIAS\ResourceStorage\Repositories\getResourceRepository(), ILIAS\ResourceStorage\Repositories\getRevisionRepository(), and ILIAS\ResourceStorage\Repositories\getStakeholderRepository().
ILIAS\ResourceStorage\Resource\ResourceBuilder::addStreamToContainer | ( | StorableContainerResource | $container, |
FileStream | $stream, | ||
string | $path_inside_container | ||
) |
Definition at line 706 of file ResourceBuilder.php.
References ILIAS\ResourceStorage\Resource\ResourceBuilder\ensurePathInZIP(), ILIAS\ResourceStorage\Resource\ResourceBuilder\extractStream(), ILIAS\ResourceStorage\Resource\AbstractStorableResource\getCurrentRevisionIncludingDraft(), and ILIAS\ResourceStorage\Resource\ResourceBuilder\storeRevision().
ILIAS\ResourceStorage\Resource\ResourceBuilder::addUploadToContainer | ( | StorableContainerResource | $container, |
UploadResult | $result, | ||
string | $parent_path_inside_container | ||
) |
Definition at line 670 of file ResourceBuilder.php.
References ILIAS\ResourceStorage\Resource\ResourceBuilder\ensurePathInZIP(), ILIAS\ResourceStorage\Resource\ResourceBuilder\extractStream(), ILIAS\ResourceStorage\Resource\AbstractStorableResource\getCurrentRevisionIncludingDraft(), ILIAS\FileUpload\DTO\UploadResult\getName(), ILIAS\FileUpload\DTO\UploadResult\getPath(), and ILIAS\ResourceStorage\Resource\ResourceBuilder\storeRevision().
ILIAS\ResourceStorage\Resource\ResourceBuilder::append | ( | StorableResource | $resource, |
UploadResult | $result, | ||
InfoResolver | $info_resolver, | ||
RevisionStatus | $status | ||
) |
Definition at line 158 of file ResourceBuilder.php.
References ILIAS\ResourceStorage\Resource\StorableResource\addRevision(), ILIAS\ResourceStorage\Resource\ResourceBuilder\buildDraftReplacementRevision(), ILIAS\ResourceStorage\Revision\DRAFT, ILIAS\ResourceStorage\Resource\StorableResource\getCurrentRevisionIncludingDraft(), ILIAS\ResourceStorage\Resource\StorableResource\getStorageID(), ILIAS\ResourceStorage\Resource\ResourceBuilder\populateRevisionInfo(), ILIAS\ResourceStorage\Resource\StorableResource\replaceRevision(), and ILIAS\ResourceStorage\Resource\StorableResource\setStorageID().
Referenced by ILIAS\ResourceStorage\Resource\ResourceBuilder\new().
ILIAS\ResourceStorage\Resource\ResourceBuilder::appendFromRevision | ( | StorableResource | $resource, |
int | $revision_number | ||
) |
Definition at line 288 of file ResourceBuilder.php.
References ILIAS\ResourceStorage\Resource\StorableResource\addRevision(), ILIAS\ResourceStorage\Revision\DRAFT, ILIAS\ResourceStorage\Resource\StorableResource\getCurrentRevisionIncludingDraft(), ILIAS\ResourceStorage\Resource\StorableResource\getMaxRevision(), ILIAS\ResourceStorage\Resource\StorableResource\getSpecificRevision(), ILIAS\ResourceStorage\Resource\StorableResource\getStorageID(), ILIAS\ResourceStorage\Resource\ResourceBuilder\populateRevisionInfo(), and ILIAS\ResourceStorage\Resource\StorableResource\setStorageID().
ILIAS\ResourceStorage\Resource\ResourceBuilder::appendFromStream | ( | StorableResource | $resource, |
FileStream | $stream, | ||
InfoResolver | $info_resolver, | ||
RevisionStatus | $status, | ||
bool | $keep_original = false |
||
) |
Definition at line 220 of file ResourceBuilder.php.
References ILIAS\ResourceStorage\Resource\StorableResource\addRevision(), ILIAS\ResourceStorage\Resource\ResourceBuilder\buildDraftReplacementRevision(), ILIAS\ResourceStorage\Revision\DRAFT, ILIAS\ResourceStorage\Resource\StorableResource\getCurrentRevisionIncludingDraft(), ILIAS\ResourceStorage\Resource\StorableResource\getStorageID(), ILIAS\ResourceStorage\Resource\ResourceBuilder\populateRevisionInfo(), ILIAS\ResourceStorage\Resource\StorableResource\replaceRevision(), and ILIAS\ResourceStorage\Resource\StorableResource\setStorageID().
Referenced by ILIAS\ResourceStorage\Resource\ResourceBuilder\newFromStream().
|
private |
Definition at line 319 of file ResourceBuilder.php.
References ILIAS\ResourceStorage\Revision\DRAFT, ILIAS\ResourceStorage\Resource\ResourceBuilder\extractStream(), ILIAS\ResourceStorage\Resource\StorableResource\getCurrentRevisionIncludingDraft(), ILIAS\ResourceStorage\Resource\StorableResource\getIdentification(), ILIAS\ResourceStorage\Resource\ResourceBuilder\populateRevisionInfo(), ILIAS\ResourceStorage\Revision\BaseRevision\setStatus(), and ILIAS\ResourceStorage\Revision\StreamReplacementRevision\setVersionNumber().
Referenced by ILIAS\ResourceStorage\Resource\ResourceBuilder\append(), and ILIAS\ResourceStorage\Resource\ResourceBuilder\appendFromStream().
ILIAS\ResourceStorage\Resource\ResourceBuilder::clone | ( | StorableResource | $resource | ) |
Clone anexisting resource with all it's revisions, stakeholders and information
Definition at line 380 of file ResourceBuilder.php.
References ILIAS\ResourceStorage\Resource\StorableResource\getAllRevisionsIncludingDraft(), ILIAS\ResourceStorage\Resource\StorableResource\getStakeholders(), ILIAS\ResourceStorage\Resource\StorableResource\getType(), ILIAS\ResourceStorage\Resource\ResourceBuilder\newBlank(), ILIAS\ResourceStorage\Resource\ResourceBuilder\populateRevisionInfo(), and ILIAS\ResourceStorage\Resource\ResourceBuilder\store().
ILIAS\ResourceStorage\Resource\ResourceBuilder::createDirectoryInsideContainer | ( | StorableContainerResource | $container, |
string | $path_inside_container | ||
) |
Definition at line 567 of file ResourceBuilder.php.
References ILIAS\ResourceStorage\Resource\ResourceBuilder\ensurePathInZIP(), ILIAS\ResourceStorage\Resource\ResourceBuilder\extractStream(), ILIAS\ResourceStorage\Resource\AbstractStorableResource\getCurrentRevisionIncludingDraft(), and ILIAS\ResourceStorage\Resource\ResourceBuilder\storeRevision().
|
private |
Definition at line 739 of file ResourceBuilder.php.
References ILIAS\ResourceStorage\Revision\Revision\getInformation(), and ILIAS\ResourceStorage\Resource\StorableResource\removeRevision().
Referenced by ILIAS\ResourceStorage\Resource\ResourceBuilder\remove(), ILIAS\ResourceStorage\Resource\ResourceBuilder\removeRevision(), ILIAS\ResourceStorage\Resource\ResourceBuilder\replaceWithStream(), and ILIAS\ResourceStorage\Resource\ResourceBuilder\replaceWithUpload().
|
private |
Definition at line 592 of file ResourceBuilder.php.
References $filename, $parts, and $path.
Referenced by ILIAS\ResourceStorage\Resource\ResourceBuilder\addStreamToContainer(), ILIAS\ResourceStorage\Resource\ResourceBuilder\addUploadToContainer(), and ILIAS\ResourceStorage\Resource\ResourceBuilder\createDirectoryInsideContainer().
ILIAS\ResourceStorage\Resource\ResourceBuilder::extractStream | ( | Revision | $revision | ) |
Definition at line 503 of file ResourceBuilder.php.
References ILIAS\ResourceStorage\Revision\Revision\getIdentification(), ILIAS\ResourceStorage\Revision\Revision\getStorageID(), and ILIAS\Filesystem\Stream\Streams\ofReattachableResource().
Referenced by ILIAS\ResourceStorage\Resource\ResourceBuilder\addStreamToContainer(), ILIAS\ResourceStorage\Resource\ResourceBuilder\addUploadToContainer(), ILIAS\ResourceStorage\Resource\ResourceBuilder\buildDraftReplacementRevision(), ILIAS\ResourceStorage\Resource\ResourceBuilder\createDirectoryInsideContainer(), and ILIAS\ResourceStorage\Resource\ResourceBuilder\removePathInsideContainer().
ILIAS\ResourceStorage\Resource\ResourceBuilder::has | ( | ResourceIdentification | $identification | ) |
check if a resource exists
Definition at line 339 of file ResourceBuilder.php.
ILIAS\ResourceStorage\Resource\ResourceBuilder::new | ( | UploadResult | $result, |
InfoResolver | $info_resolver, | ||
ResourceType | $type = ResourceType::SINGLE_FILE |
||
) |
Definition at line 110 of file ResourceBuilder.php.
References ILIAS\ResourceStorage\Resource\ResourceBuilder\append().
Referenced by ILIAS\ResourceStorage\Policy\FileNamePolicyTest\testDeniedFileEnding(), ILIAS\ResourceStorage\Resource\ResourceBuilderTest\testNewUpload(), and ILIAS\ResourceStorage\Policy\FileNamePolicyTest\testValidFileEnding().
ILIAS\ResourceStorage\Resource\ResourceBuilder::newBlank | ( | ResourceType | $type = ResourceType::SINGLE_FILE | ) |
Definition at line 143 of file ResourceBuilder.php.
References ILIAS\ResourceStorage\Resource\StorableResource\setStorageID().
Referenced by ILIAS\ResourceStorage\Resource\ResourceBuilder\clone().
ILIAS\ResourceStorage\Resource\ResourceBuilder::newFromStream | ( | FileStream | $stream, |
InfoResolver | $info_resolver, | ||
bool | $keep_original = false , |
||
ResourceType | $type = ResourceType::SINGLE_FILE |
||
) |
Definition at line 123 of file ResourceBuilder.php.
References ILIAS\ResourceStorage\Resource\ResourceBuilder\appendFromStream().
|
private |
Definition at line 751 of file ResourceBuilder.php.
References ILIAS\ResourceStorage\Resource\StorableResource\addStakeholder(), ILIAS\ResourceStorage\Resource\StorableResource\getIdentification(), ILIAS\ResourceStorage\Resource\StorableResource\getStorageID(), and ILIAS\ResourceStorage\Resource\StorableResource\setRevisions().
Referenced by ILIAS\ResourceStorage\Resource\ResourceBuilder\storeRevision().
|
private |
Definition at line 770 of file ResourceBuilder.php.
References ILIAS\ResourceStorage\Resource\InfoResolver\InfoResolver\getCreationDate(), ILIAS\ResourceStorage\Resource\InfoResolver\InfoResolver\getFileName(), ILIAS\ResourceStorage\Revision\Revision\getInformation(), ILIAS\ResourceStorage\Resource\InfoResolver\InfoResolver\getMimeType(), ILIAS\ResourceStorage\Resource\InfoResolver\InfoResolver\getOwnerId(), ILIAS\ResourceStorage\Resource\InfoResolver\InfoResolver\getRevisionTitle(), ILIAS\ResourceStorage\Resource\InfoResolver\InfoResolver\getSize(), ILIAS\ResourceStorage\Resource\InfoResolver\InfoResolver\getSuffix(), ILIAS\ResourceStorage\Revision\Revision\setInformation(), and ILIAS\ResourceStorage\Revision\Revision\setTitle().
Referenced by ILIAS\ResourceStorage\Resource\ResourceBuilder\append(), ILIAS\ResourceStorage\Resource\ResourceBuilder\appendFromRevision(), ILIAS\ResourceStorage\Resource\ResourceBuilder\appendFromStream(), ILIAS\ResourceStorage\Resource\ResourceBuilder\buildDraftReplacementRevision(), ILIAS\ResourceStorage\Resource\ResourceBuilder\clone(), ILIAS\ResourceStorage\Resource\ResourceBuilder\replaceWithStream(), and ILIAS\ResourceStorage\Resource\ResourceBuilder\replaceWithUpload().
ILIAS\ResourceStorage\Resource\ResourceBuilder::publish | ( | StorableResource | $resource | ) |
Definition at line 481 of file ResourceBuilder.php.
References ILIAS\ResourceStorage\Resource\StorableResource\getCurrentRevisionIncludingDraft(), and ILIAS\ResourceStorage\Resource\ResourceBuilder\store().
ILIAS\ResourceStorage\Resource\ResourceBuilder::remove | ( | StorableResource | $resource, |
?ResourceStakeholder | $stakeholder = null |
||
) |
Remove a complete revision.
if there are other Stakeholder, only your stakeholder gets removed
ResourceStakeholder | null | $stakeholder |
Definition at line 532 of file ResourceBuilder.php.
References ILIAS\ResourceStorage\Resource\ResourceBuilder\deleteRevision(), ILIAS\ResourceStorage\Resource\StorableResource\getAllRevisionsIncludingDraft(), ILIAS\ResourceStorage\Resource\StorableResource\getIdentification(), ILIAS\ResourceStorage\Resource\StorableResource\getStakeholders(), and ILIAS\ResourceStorage\Resource\StorableResource\removeStakeholder().
ILIAS\ResourceStorage\Resource\ResourceBuilder::removePathInsideContainer | ( | StorableContainerResource | $container, |
string | $path_inside_container | ||
) |
Definition at line 632 of file ResourceBuilder.php.
References $path, ILIAS\ResourceStorage\Resource\ResourceBuilder\extractStream(), ILIAS\ResourceStorage\Resource\AbstractStorableResource\getCurrentRevisionIncludingDraft(), and ILIAS\ResourceStorage\Resource\ResourceBuilder\storeRevision().
ILIAS\ResourceStorage\Resource\ResourceBuilder::removeRevision | ( | StorableResource | $resource, |
int | $revision_number | ||
) |
Definition at line 557 of file ResourceBuilder.php.
References ILIAS\ResourceStorage\Resource\ResourceBuilder\deleteRevision(), ILIAS\ResourceStorage\Resource\StorableResource\getSpecificRevision(), null, and ILIAS\ResourceStorage\Resource\ResourceBuilder\store().
ILIAS\ResourceStorage\Resource\ResourceBuilder::replaceWithStream | ( | StorableResource | $resource, |
FileStream | $stream, | ||
InfoResolver | $info_resolver, | ||
bool | $keep_original = false |
||
) |
Definition at line 258 of file ResourceBuilder.php.
References ILIAS\ResourceStorage\Resource\StorableResource\addRevision(), ILIAS\ResourceStorage\Resource\ResourceBuilder\deleteRevision(), ILIAS\ResourceStorage\Revision\DRAFT, ILIAS\ResourceStorage\Resource\StorableResource\getAllRevisionsIncludingDraft(), ILIAS\ResourceStorage\Resource\StorableResource\getCurrentRevisionIncludingDraft(), ILIAS\ResourceStorage\Resource\StorableResource\getStorageID(), ILIAS\ResourceStorage\Resource\ResourceBuilder\populateRevisionInfo(), and ILIAS\ResourceStorage\Resource\StorableResource\setStorageID().
ILIAS\ResourceStorage\Resource\ResourceBuilder::replaceWithUpload | ( | StorableResource | $resource, |
UploadResult | $result, | ||
InfoResolver | $info_resolver | ||
) |
Definition at line 192 of file ResourceBuilder.php.
References ILIAS\ResourceStorage\Resource\StorableResource\addRevision(), ILIAS\ResourceStorage\Resource\ResourceBuilder\deleteRevision(), ILIAS\ResourceStorage\Revision\DRAFT, ILIAS\ResourceStorage\Resource\StorableResource\getAllRevisionsIncludingDraft(), ILIAS\ResourceStorage\Resource\StorableResource\getCurrentRevisionIncludingDraft(), ILIAS\ResourceStorage\Resource\StorableResource\getStorageID(), ILIAS\ResourceStorage\Resource\ResourceBuilder\populateRevisionInfo(), and ILIAS\ResourceStorage\Resource\StorableResource\setStorageID().
ILIAS\ResourceStorage\Resource\ResourceBuilder::store | ( | StorableResource | $resource | ) |
after you have modified a resource, you can store it here
FileNamePolicyException |
Definition at line 348 of file ResourceBuilder.php.
References $r, ILIAS\ResourceStorage\Resource\StorableResource\getAllRevisionsIncludingDraft(), ILIAS\ResourceStorage\Resource\StorableResource\getIdentification(), ILIAS\ResourceStorage\Resource\StorableResource\getStakeholders(), and ILIAS\ResourceStorage\Resource\ResourceBuilder\storeRevision().
Referenced by ILIAS\ResourceStorage\Resource\ResourceBuilder\clone(), ILIAS\ResourceStorage\Resource\ResourceBuilder\publish(), ILIAS\ResourceStorage\Resource\ResourceBuilder\removeRevision(), ILIAS\ResourceStorage\Policy\FileNamePolicyTest\testDeniedFileEnding(), ILIAS\ResourceStorage\Policy\FileNamePolicyTest\testValidFileEnding(), and ILIAS\ResourceStorage\Resource\ResourceBuilder\unpublish().
ILIAS\ResourceStorage\Resource\ResourceBuilder::storeRevision | ( | Revision | $revision, |
?StorableResource | $resource = null |
||
) |
Store one Revision
FileNamePolicyException |
Definition at line 418 of file ResourceBuilder.php.
References $DIC, InitResourceStorage\D_MIGRATOR, ILIAS\ResourceStorage\Revision\Revision\getIdentification(), ILIAS\ResourceStorage\Revision\Revision\getInformation(), ILIAS\ResourceStorage\Revision\Revision\getOwnerId(), ILIAS\ResourceStorage\Revision\Revision\getStatus(), ILIAS\ResourceStorage\Revision\Revision\getStorageID(), ILIAS\ResourceStorage\Revision\Revision\getTitle(), ILIAS\ResourceStorage\Revision\Revision\getVersionNumber(), null, ILIAS\ResourceStorage\Resource\ResourceBuilder\populateNakedResourceWithRevisionsAndStakeholders(), and ILIAS\ResourceStorage\Revision\FileRevision\setVersionNumber().
Referenced by ILIAS\ResourceStorage\Resource\ResourceBuilder\addStreamToContainer(), ILIAS\ResourceStorage\Resource\ResourceBuilder\addUploadToContainer(), ILIAS\ResourceStorage\Resource\ResourceBuilder\createDirectoryInsideContainer(), ILIAS\ResourceStorage\Resource\ResourceBuilder\removePathInsideContainer(), and ILIAS\ResourceStorage\Resource\ResourceBuilder\store().
ILIAS\ResourceStorage\Resource\ResourceBuilder::unpublish | ( | StorableResource | $resource | ) |
Definition at line 492 of file ResourceBuilder.php.
References ILIAS\ResourceStorage\Revision\DRAFT, ILIAS\ResourceStorage\Resource\StorableResource\getCurrentRevisionIncludingDraft(), and ILIAS\ResourceStorage\Resource\ResourceBuilder\store().
|
private |
Definition at line 83 of file ResourceBuilder.php.
|
private |
Definition at line 64 of file ResourceBuilder.php.
|
protected |
Definition at line 82 of file ResourceBuilder.php.
|
protected |
Definition at line 81 of file ResourceBuilder.php.
|
private |
Definition at line 68 of file ResourceBuilder.php.
|
private |
Definition at line 72 of file ResourceBuilder.php.
|
private |
Definition at line 76 of file ResourceBuilder.php.