File tree Expand file tree Collapse file tree 4 files changed +51
-0
lines changed
private/Files/ObjectStore
public/Files/ObjectStore/Events Expand file tree Collapse file tree 4 files changed +51
-0
lines changed Original file line number Diff line number Diff line change 490490 'OCP \\Files \\Notify \\IChange ' => $ baseDir . '/lib/public/Files/Notify/IChange.php ' ,
491491 'OCP \\Files \\Notify \\INotifyHandler ' => $ baseDir . '/lib/public/Files/Notify/INotifyHandler.php ' ,
492492 'OCP \\Files \\Notify \\IRenameChange ' => $ baseDir . '/lib/public/Files/Notify/IRenameChange.php ' ,
493+ 'OCP \\Files \\ObjectStore \\Events \\BucketCreatedEvent ' => $ baseDir . '/lib/public/Files/ObjectStore/Events/BucketCreatedEvent.php ' ,
493494 'OCP \\Files \\ObjectStore \\IObjectStore ' => $ baseDir . '/lib/public/Files/ObjectStore/IObjectStore.php ' ,
494495 'OCP \\Files \\ObjectStore \\IObjectStoreMetaData ' => $ baseDir . '/lib/public/Files/ObjectStore/IObjectStoreMetaData.php ' ,
495496 'OCP \\Files \\ObjectStore \\IObjectStoreMultiPartUpload ' => $ baseDir . '/lib/public/Files/ObjectStore/IObjectStoreMultiPartUpload.php ' ,
Original file line number Diff line number Diff line change @@ -531,6 +531,7 @@ class ComposerStaticInit749170dad3f5e7f9ca158f5a9f04f6a2
531531 'OCP \\Files \\Notify \\IChange ' => __DIR__ . '/../../.. ' . '/lib/public/Files/Notify/IChange.php ' ,
532532 'OCP \\Files \\Notify \\INotifyHandler ' => __DIR__ . '/../../.. ' . '/lib/public/Files/Notify/INotifyHandler.php ' ,
533533 'OCP \\Files \\Notify \\IRenameChange ' => __DIR__ . '/../../.. ' . '/lib/public/Files/Notify/IRenameChange.php ' ,
534+ 'OCP \\Files \\ObjectStore \\Events \\BucketCreatedEvent ' => __DIR__ . '/../../.. ' . '/lib/public/Files/ObjectStore/Events/BucketCreatedEvent.php ' ,
534535 'OCP \\Files \\ObjectStore \\IObjectStore ' => __DIR__ . '/../../.. ' . '/lib/public/Files/ObjectStore/IObjectStore.php ' ,
535536 'OCP \\Files \\ObjectStore \\IObjectStoreMetaData ' => __DIR__ . '/../../.. ' . '/lib/public/Files/ObjectStore/IObjectStoreMetaData.php ' ,
536537 'OCP \\Files \\ObjectStore \\IObjectStoreMultiPartUpload ' => __DIR__ . '/../../.. ' . '/lib/public/Files/ObjectStore/IObjectStoreMultiPartUpload.php ' ,
Original file line number Diff line number Diff line change 1414use Aws \S3 \S3Client ;
1515use GuzzleHttp \Promise \Create ;
1616use GuzzleHttp \Promise \RejectedPromise ;
17+ use OCP \EventDispatcher \IEventDispatcher ;
18+ use OCP \Files \ObjectStore \Events \BucketCreatedEvent ;
1719use OCP \Files \StorageNotAvailableException ;
1820use OCP \ICertificateManager ;
1921use OCP \Server ;
@@ -149,6 +151,13 @@ public function getConnection() {
149151 throw new StorageNotAvailableException ('The bucket will not be created because the name is not dns compatible, please correct it: ' . $ this ->bucket );
150152 }
151153 $ this ->connection ->createBucket (['Bucket ' => $ this ->bucket ]);
154+ Server::get (IEventDispatcher::class)
155+ ->dispatchTyped (new BucketCreatedEvent (
156+ $ this ->bucket ,
157+ $ options ['endpoint ' ],
158+ $ options ['region ' ],
159+ $ options ['version ' ]
160+ ));
152161 $ this ->testTimeout ();
153162 } catch (S3Exception $ e ) {
154163 $ logger ->debug ('Invalid remote storage. ' , [
Original file line number Diff line number Diff line change 1+ <?php
2+
3+ declare (strict_types=1 );
4+
5+ /**
6+ * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors
7+ * SPDX-License-Identifier: AGPL-3.0-only
8+ */
9+ namespace OCP \Files \ObjectStore \Events ;
10+
11+ use OCP \AppFramework \Attribute \Consumable ;
12+ use OCP \EventDispatcher \Event ;
13+
14+ class BucketCreatedEvent extends Event {
15+
16+ public function __construct (
17+ private readonly string $ bucket ,
18+ private readonly string $ endpoint ,
19+ private readonly string $ region ,
20+ private readonly string $ version = 'latest ' ,
21+ ) {
22+ parent ::__construct ();
23+ }
24+
25+ public function getBucket (): string {
26+ return $ this ->bucket ;
27+ }
28+
29+ public function getEndpoint (): string {
30+ return $ this ->endpoint ;
31+ }
32+
33+ public function getRegion (): string {
34+ return $ this ->region ;
35+ }
36+
37+ public function getVersion (): string {
38+ return $ this ->version ;
39+ }
40+ }
You can’t perform that action at this time.
0 commit comments