]> git.mxchange.org Git - friendica.git/commitdiff
Create FileSystemUtil interface
authorArt4 <art4@wlabs.de>
Mon, 14 Apr 2025 07:14:31 +0000 (07:14 +0000)
committerArt4 <art4@wlabs.de>
Mon, 14 Apr 2025 07:14:31 +0000 (07:14 +0000)
src/Core/Logger/Util/FileSystem.php
src/Core/Logger/Util/FileSystemUtil.php [new file with mode: 0644]

index 2d05faf50d25192d7cb2c0750940403dd06e2b29..b1c402946ad6c8abe11dd69657a1a7de313b2df2 100644 (file)
@@ -12,7 +12,7 @@ use Friendica\Core\Logger\Exception\LoggerUnusableException;
 /**
  * Util class for filesystem manipulation for Logger classes
  */
-class FileSystem
+class FileSystem implements FileSystemUtil
 {
        /**
         * @var string a error message
diff --git a/src/Core/Logger/Util/FileSystemUtil.php b/src/Core/Logger/Util/FileSystemUtil.php
new file mode 100644 (file)
index 0000000..f4052b8
--- /dev/null
@@ -0,0 +1,38 @@
+<?php
+
+// Copyright (C) 2010-2024, the Friendica project
+// SPDX-FileCopyrightText: 2010-2024 the Friendica project
+//
+// SPDX-License-Identifier: AGPL-3.0-or-later
+
+namespace Friendica\Core\Logger\Util;
+
+use Friendica\Core\Logger\Exception\LoggerUnusableException;
+
+/**
+ * interface for Util class for filesystem manipulation for Logger classes
+ */
+interface FileSystemUtil
+{
+       /**
+        * Creates a directory based on a file, which gets accessed
+        *
+        * @param string $file The file
+        *
+        * @return string The directory name (empty if no directory is found, like urls)
+        *
+        * @throws LoggerUnusableException
+        */
+       public function createDir(string $file): string;
+
+       /**
+        * Creates a stream based on a URL (could be a local file or a real URL)
+        *
+        * @param string $url The file/url
+        *
+        * @return resource the open stream resource
+        *
+        * @throws LoggerUnusableException
+        */
+       public function createStream(string $url);
+}