]> git.mxchange.org Git - core.git/blobdiff - framework/main/middleware/io/class_FileIoHandler.php
Continued:
[core.git] / framework / main / middleware / io / class_FileIoHandler.php
index 019411e384911538da221bfce1e394ff329a1125..dfdcd79e527249b6cfbc8f0b109a076db9089fe3 100644 (file)
@@ -3,13 +3,13 @@
 namespace Org\Mxchange\CoreFramework\Handler\Filesystem;
 
 // Import framework stuff
-use Org\Mxchange\CoreFramework\Factory\ObjectFactory;
+use Org\Mxchange\CoreFramework\Factory\Object\ObjectFactory;
 use Org\Mxchange\CoreFramework\Generic\FrameworkInterface;
 use Org\Mxchange\CoreFramework\Generic\UnsupportedOperationException;
 use Org\Mxchange\CoreFramework\Handler\Stream\IoHandler;
 use Org\Mxchange\CoreFramework\Middleware\BaseMiddleware;
-use Org\Mxchange\CoreFramework\Stream\Filesystem\FileInputStreamer;
-use Org\Mxchange\CoreFramework\Stream\Filesystem\FileOutputStreamer;
+use Org\Mxchange\CoreFramework\Traits\Streamer\File\Input\FileInputStreamerTrait;
+use Org\Mxchange\CoreFramework\Traits\Streamer\File\Output\FileOutputStreamerTrait;
 
 // Import SPL stuff
 use \SplFileInfo;
@@ -38,15 +38,9 @@ use \SplFileInfo;
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
  */
 class FileIoHandler extends BaseMiddleware implements IoHandler {
-       /**
-        * The *real* file input class we shall use for reading data
-        */
-       private $inputStream = NULL;
-
-       /**
-        * The *real* file output class we shall use for reading data
-        */
-       private $outputStream = NULL;
+       // Load traits
+       use FileInputStreamerTrait;
+       use FileOutputStreamerTrait;
 
        /**
         * An instance of this class
@@ -77,8 +71,8 @@ class FileIoHandler extends BaseMiddleware implements IoHandler {
                $ioHandler = new FileIoHandler();
 
                // Set the *real* file IO instances (both the same)
-               $ioHandler->setInputStream(ObjectFactory::createObjectByConfiguredName('file_input_class'));
-               $ioHandler->setOutputStream(ObjectFactory::createObjectByConfiguredName('file_output_class'));
+               $ioHandler->setInputStreamerInstance(ObjectFactory::createObjectByConfiguredName('file_input_class'));
+               $ioHandler->setOutputStreamerInstance(ObjectFactory::createObjectByConfiguredName('file_output_class'));
 
                // Return instance
                return $ioHandler;
@@ -93,43 +87,6 @@ class FileIoHandler extends BaseMiddleware implements IoHandler {
                return self::$selfInstance;
        }
 
-       /**
-        * Setter for the *real* file input instance
-        *
-        * @param       $inputStream    The *real* file-input class
-        * @return      void
-        */
-       public final function setInputStream (FileInputStreamer $inputStream) {
-               $this->inputStream = $inputStream;
-       }
-
-       /**
-        * Getter for the *real* file input instance
-        *
-        * @return      $inputStream    The *real* file-input class
-        */
-       public final function getInputStream () {
-               return $this->inputStream;
-       }
-
-       /**
-        * Setter for the *real* file output instance
-        *
-        * @param       $outputStream   The *real* file-output class
-        * @return      void
-        */
-       public final function setOutputStream (FileOutputStreamer $outputStream) {
-               $this->outputStream = $outputStream;
-       }
-
-       /**
-        * Getter for the *real* file output instance
-        *
-        * @return      $outputStream   The *real* file-output class
-        */
-       public final function getOutputStream () {
-               return $this->outputStream;
-       }
        /**
         * Saves streamed (that are mostly serialized objects) data to files or
         * external servers.
@@ -152,7 +109,7 @@ class FileIoHandler extends BaseMiddleware implements IoHandler {
         * @param       $objectInstance         An instance of a FrameworkInterface class (default: NULL)
         * @return      void
         */
-       public function saveStreamToFile (SplFileInfo $infoInstance, $dataStream, FrameworkInterface $objectInstance = NULL) {
+       public function saveStreamToFile (SplFileInfo $infoInstance, string $dataStream, FrameworkInterface $objectInstance = NULL) {
                // Default is this array
                $className = $this->__toString();
 
@@ -169,7 +126,7 @@ class FileIoHandler extends BaseMiddleware implements IoHandler {
                );
 
                // Send the infoInstance and dataArray to the output handler
-               $this->getOutputStream()->saveFile($infoInstance, $dataArray);
+               $this->getOutputStreamerInstance()->saveFile($infoInstance, $dataArray);
        }
 
        /** Loads data from a file over the input handler
@@ -179,7 +136,7 @@ class FileIoHandler extends BaseMiddleware implements IoHandler {
         */
        public function loadFileContents (SplFileInfo $infoInstance) {
                // Read from the input handler
-               return $this->getInputStream()->loadFileContents($infoInstance);
+               return $this->getInputStreamerInstance()->loadFileContents($infoInstance);
        }
 
        /**
@@ -199,7 +156,7 @@ class FileIoHandler extends BaseMiddleware implements IoHandler {
         * @param       $whence         Added to offset (default: only use offset to seek to)
         * @return      $status         Status of file seek: 0 = success, -1 = failed
         */
-       public function seek ($offset, $whence = SEEK_SET) {
+       public function seek (int $offset, int $whence = SEEK_SET) {
                $this->partialStub('offset=' . $offset . ',whence=' . $whence);
        }