registerTemplateProvider(CollaboraTemplateProvider::class); $context->registerCapability(Capabilities::class); $context->registerMiddleWare(WOPIMiddleware::class); $context->registerEventListener(RegisterTemplateCreatorEvent::class, RegisterTemplateFileCreatorListener::class); $context->registerEventListener(FileCreatedFromTemplateEvent::class, FileCreatedFromTemplateListener::class); $context->registerEventListener(AddContentSecurityPolicyEvent::class, AddContentSecurityPolicyListener::class); $context->registerEventListener(AddFeaturePolicyEvent::class, AddFeaturePolicyListener::class); $context->registerEventListener(LoadAdditionalScriptsEvent::class, LoadAdditionalListener::class); $context->registerEventListener(LoadViewer::class, LoadViewerListener::class); $context->registerEventListener(ShareLinkAccessedEvent::class, ShareLinkListener::class); $context->registerEventListener(BeforePreviewFetchedEvent::class, BeforeFetchPreviewListener::class); $context->registerEventListener(RenderReferenceEvent::class, ReferenceListener::class); $context->registerEventListener(BeforeTemplateRenderedEvent::class, BeforeTemplateRenderedListener::class); $context->registerEventListener(BeforeGetTemplatesEvent::class, BeforeGetTemplatesListener::class); $context->registerEventListener(OverwritePublicSharePropertiesEvent::class, OverwritePublicSharePropertiesListener::class); $context->registerReferenceProvider(OfficeTargetReferenceProvider::class); $context->registerSensitiveMethods(WopiMapper::class, [ 'getPathForToken', 'getWopiForToken', ]); $context->registerPreviewProvider(EMF::class, EMF::MIMETYPE_REGEX); $context->registerPreviewProvider(MSExcel::class, MSExcel::MIMETYPE_REGEX); $context->registerPreviewProvider(MSWord::class, MSWord::MIMETYPE_REGEX); $context->registerPreviewProvider(OOXML::class, OOXML::MIMETYPE_REGEX); $context->registerPreviewProvider(OpenDocument::class, OpenDocument::MIMETYPE_REGEX); $context->registerPreviewProvider(Pdf::class, Pdf::MIMETYPE_REGEX); $context->registerFileConversionProvider(ConversionProvider::class); $context->registerNotifierService(Notifier::class); $context->registerTaskProcessingTaskType(TextToDocumentTaskType::class); $context->registerTaskProcessingProvider(TextToDocumentProvider::class); $context->registerTaskProcessingTaskType(TextToSpreadsheetTaskType::class); $context->registerTaskProcessingProvider(TextToSpreadsheetProvider::class); $context->registerTaskProcessingProvider(SlideDeckGenerationProvider::class); $context->registerTaskProcessingTaskType(SlideDeckGenerationTaskType::class); } public function boot(IBootContext $context): void { } /** * @internal */ public function addStorageWrapper(): void { if (Server::get(IAppConfig::class)->getValueString(AppConfig::WATERMARK_APP_NAMESPACE, 'watermark_enabled', 'no') === 'no') { return; } \OC\Files\Filesystem::addStorageWrapper('richdocuments', [$this, 'addStorageWrapperCallback'], -10); } /** * @param $mountPoint * @param IStorage $storage * @return SecureViewWrapper|IStorage *@internal */ public function addStorageWrapperCallback($mountPoint, IStorage $storage) { if (!\OC::$CLI && $mountPoint !== '/') { return new SecureViewWrapper([ 'storage' => $storage, 'mountPoint' => $mountPoint, ]); } return $storage; } }