1
0

S3ConfigTrait.php 921 B

12345678910111213141516171819202122232425262728293031323334353637
  1. <?php
  2. declare(strict_types=1);
  3. /**
  4. * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors
  5. * SPDX-License-Identifier: AGPL-3.0-or-later
  6. */
  7. namespace OC\Files\ObjectStore;
  8. /**
  9. * Shared configuration between ConnectionTrait and ObjectTrait to ensure both to be in sync
  10. */
  11. trait S3ConfigTrait {
  12. protected array $params;
  13. protected string $bucket;
  14. /** Maximum number of concurrent multipart uploads */
  15. protected int $concurrency;
  16. protected int $timeout;
  17. protected string|false $proxy;
  18. protected string $storageClass;
  19. /** @var int Part size in bytes (float is added for 32bit support) */
  20. protected int|float $uploadPartSize;
  21. /** @var int Limit on PUT in bytes (float is added for 32bit support) */
  22. private int|float $putSizeLimit;
  23. /** @var int Limit on COPY in bytes (float is added for 32bit support) */
  24. private int|float $copySizeLimit;
  25. private bool $useMultipartCopy = true;
  26. }