From 90b9c992cf26a65b42eda33103895abe0531415d Mon Sep 17 00:00:00 2001 From: =?utf8?q?Roland=20H=C3=A4der?= Date: Sat, 31 May 2008 11:15:11 +0000 Subject: [PATCH] Old classes removed --- .gitattributes | 2 - inc/classes/main/io/class_FileIOStream.php | 232 ------------------ .../middleware/io/class_FileIOHandler.php | 181 -------------- 3 files changed, 415 deletions(-) delete mode 100644 inc/classes/main/io/class_FileIOStream.php delete mode 100644 inc/classes/middleware/io/class_FileIOHandler.php diff --git a/.gitattributes b/.gitattributes index 9a65b24927..8abe70e6d7 100644 --- a/.gitattributes +++ b/.gitattributes @@ -197,7 +197,6 @@ inc/classes/main/helper/class_BaseHelper.php -text inc/classes/main/helper/web/.htaccess -text inc/classes/main/helper/web/class_WebFormHelper.php -text inc/classes/main/io/.htaccess -text -inc/classes/main/io/class_FileIOStream.php -text inc/classes/main/io/class_FileIoStream.php -text inc/classes/main/io/class_FrameworkDirectoryPointer.php -text inc/classes/main/io/class_FrameworkFileInputPointer.php -text @@ -229,7 +228,6 @@ inc/classes/middleware/database/class_DatabaseConnection.php -text inc/classes/middleware/debug/.htaccess -text inc/classes/middleware/debug/class_DebugMiddleware.php -text inc/classes/middleware/io/.htaccess -text -inc/classes/middleware/io/class_FileIOHandler.php -text inc/classes/middleware/io/class_FileIoHandler.php -text inc/config.php -text inc/config/.htaccess -text diff --git a/inc/classes/main/io/class_FileIOStream.php b/inc/classes/main/io/class_FileIOStream.php deleted file mode 100644 index aea932f26c..0000000000 --- a/inc/classes/main/io/class_FileIOStream.php +++ /dev/null @@ -1,232 +0,0 @@ - - * @version 0.3.0 - * @copyright Copyright(c) 2007, 2008 Roland Haeder, this is free software - * @license GNU GPL 3.0 or any newer version - * @link http://www.mxchange.org - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -class FileIOStream extends BaseFrameworkSystem implements FileInputStreamer, FileOutputStreamer { - /** - * Private constructor - */ - protected function __construct () { - // Call parent constructor - parent::__construct(__CLASS__); - - // Set part description - $this->setObjectDescription("Universal Datei-Ein-/Ausgabesystem"); - - // Create unique ID - $this->createUniqueID(); - - // Clean-up a little - $this->removeNumberFormaters(); - $this->removeSystemArray(); - } - - /** - * Create a file IO stream. This is a class for performing all actions - * on files like creating, deleting and loading them. - * - * @return $ioInstance An instance of FileIOStream - */ - public final static function createFileIOStream () { - // Create new instance - $ioInstance = new FileIOStream(); - - // Return the instance - return $ioInstance; - } - - /** - * Saves data to a given local file - * - * @param $fileName The file name for the to be saved file - * @param $dataArray The data we shall store to the file - * @return void - * @see FileOutputStreamer - */ - public final function saveFile ($fileName, $dataArray) { - // Try it five times - $dirName = ""; $fileInstance = null; - for ($idx = 0; $idx < 5; $idx++) { - // Get a file output pointer - try { - $fileInstance = FrameworkFileOutputPointer::createFrameworkFileOutputPointer($fileName, 'w'); - } catch (FilePointerNotOpenedException $e) { - // Create missing directory - $dirName = dirname($fileName); - for ($idx2 = 0; $idx2 < (2 - $idx); $idx2++) { - $dirName = dirname($dirName); - } - // Try to create it - @mkdir($dirName); - } - } - - // Write a header information for validation purposes - $fileInstance->writeToFile(sprintf("@head^%s:%s:%s:%s\n", - $dataArray[0], - time(), - strlen($dataArray[1]), - md5($dataArray[1]) - )); - - // Encode the (maybe) binary stream with Base64 - $b64Stream = base64_encode($dataArray[1]); - - // write the data line by line - $line = str_repeat(" ", 50); $idx = 0; - while (strlen($line) == 50) { - // Get 50 chars or less - $line = substr($b64Stream, $idx, 50); - - // Save it to the stream - $fileInstance->writeToFile(sprintf("@data^%s:%s\n", - $line, - md5($line) - )); - - // Advance to the next 50-chars block - $idx += 50; - } - - // Close the file - $fileInstance->closeFile(); - } - - /** - * Reads from a local file - * - * @param $fqfn The full-qualified file-name which we shall load - * @return $array An array with the element 'header' and 'data' - * @see FileInputStreamer - */ - public final function loadFileContents ($fqfn) { - // Initialize some variables and arrays - $inputBuffer = ""; - $lastBuffer = ""; - $header = array(); - $data = array(); - $readData = ""; // This will contain our read data - - // Get a file input handler - $fileInstance = FrameworkFileInputPointer::createFrameworkFileInputPointer($fqfn); - - // Read all it's contents (we very and transparently decompress it below) - while ($readRawLine = $fileInstance->readFromFile()) { - // Add the read line to the buffer - $inputBuffer .= $readRawLine; - - // Break infinite loop maybe caused by the input handler - if ($lastBuffer == $inputBuffer) break; - - // Remember last read line for avoiding possible infinite loops - $lastBuffer = $inputBuffer; - } - - // Close directory handle - $fileInstance->closeFile(); - - // Convert it into an array - $inputBuffer = explode("\n", $inputBuffer); - - // Now process the read lines and verify it's content - foreach ($inputBuffer as $rawLine) { - // Trim it a little but not the leading spaces/tab-stops - $rawLine = rtrim($rawLine); - - // Analyze this line - if (substr($rawLine, 0, 5) == "@head") { - // Header found, so let's extract it - $header = explode("^", $rawLine); - $header = trim($header[1]); - - // Now we must convert it again into an array - $header = explode(":", $header); - - // Is the header (maybe) valid? - if (count($header) != 4) { - // Throw an exception - throw new InvalidArrayCountException(array($this, "header", count($header), 4), self::EXCEPTION_ARRAY_HAS_INVALID_COUNT); - } - } elseif (substr($rawLine, 0, 5) == "@data") { - // Is a data line! - $data = explode("^", $rawLine); - $data = $data[1]; - - // First element is the data, second the MD5 checksum - $data = explode(":", $data); - - // Validate the read line - if (count($data) == 2) { - if (md5($data[0]) != $data[1]) { - // MD5 hash did not match! - throw new InvalidMD5ChecksumException(array($this, md5($data[0]), $data[1]), self::EXCEPTION_MD5_CHECKSUMS_MISMATCH); - } - } else { - // Invalid count! - throw new InvalidArrayCountException(array($this, "data", count($data), 2), self::EXCEPTION_ARRAY_HAS_INVALID_COUNT); - } - - // Add this to the readData string - $readData .= $data[0]; - } else { - // Other raw lines than header/data tagged lines and re-add the new-line char - $readData .= $rawLine."\n"; - } - } - - // Was raw lines read and no header/data? - if ((!empty($readData)) && (count($header) == 0) && (count($data) == 0)) { - // Return raw lines back - return $readData; - } - - // Was a header found? - if (count($header) != 4) { - // Throw an exception - throw new InvalidArrayCountException(array($this, "header", count($header), 4), self::EXCEPTION_ARRAY_HAS_INVALID_COUNT); - } - - // Decode all from Base64 - $readData = @base64_decode($readData); - - // Does the size match? - if (strlen($readData) != $header[2]) { - // Size did not match - throw new InvalidDataLengthException(array($this, strlen($readData), $header[2]), self::EXCEPTION_UNEXPECTED_STRING_SIZE); - } - - // Validate the decoded data with the final MD5 hash - if (md5($readData) != $header[3]) { - // MD5 hash did not match! - throw new InvalidMD5ChecksumException(array($this, md5($readData), $header[3]), self::EXCEPTION_MD5_CHECKSUMS_MISMATCH); - } - - // Return all in an array - return array( - 'header' => $header, - 'data' => $readData - ); - } -} - -// [EOF] -?> diff --git a/inc/classes/middleware/io/class_FileIOHandler.php b/inc/classes/middleware/io/class_FileIOHandler.php deleted file mode 100644 index c514a4abc2..0000000000 --- a/inc/classes/middleware/io/class_FileIOHandler.php +++ /dev/null @@ -1,181 +0,0 @@ - - * @version 0.3.0 - * @copyright Copyright(c) 2007, 2008 Roland Haeder, this is free software - * @license GNU GPL 3.0 or any newer version - * @link http://www.mxchange.org - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -class FileIOHandler extends BaseMiddleware { - /** - * 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; - - /** - * An instance of this class - */ - private static $thisInstance = null; - - /** - * Private constructor - * - * @return void - */ - protected function __construct () { - // Call parent constructor - parent::__construct(__CLASS__); - - // Set description - $this->setObjectDescription("Datei-Ein-/Ausgabe-Handler"); - - // Create an unique ID - $this->createUniqueID(); - - // Clean up a little - $this->removeNumberFormaters(); - $this->removeSystemArray(); - - // Set own instance - self::$thisInstance = $this; - } - - /** - * Creates an instance of this class and prepares the IO system. This is - * being done by setting the default file IO class - * - * @return $ioInstance A prepared instance of FilIOHandler - */ - public final static function createFileIOHandler () { - // Get instance - $ioHandler = new FileIOHandler(); - - // Set the *real* file IO instances (both the same) - $ioHandler->setInputStream(FileIOStream::createFileIOStream()); - $ioHandler->setOutputStream(FileIOStream::createFileIOStream()); - - // Return instance - return $ioHandler; - } - - /** - * Getter for an instance of this class - * - * @return $thisInstance An instance of this class - */ - public final static function getInstance () { - return self::$thisInstance; - } - - /** - * Setter for the *real* file input instance - * - * @param $inputStream The *real* file-input class - */ - 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 - */ - 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 a file with data by using the current output stream - * - * @see FileOutputStreamer - */ - public function saveFile ($fileName, $dataArray) { - // Get output stream - $outInstance = $this->getOutputStream(); - - // Is it a valid stream? - if (is_null($outInstance)) { - // No class returned - throw new NullPointerException($this, self::EXCEPTION_IS_NULL_POINTER); - } elseif (!is_object($outInstance)) { - // Not an object! ;-( - throw new NoObjectException($outInstance, self::EXCEPTION_IS_NO_OBJECT); - } elseif (!method_exists($outInstance, 'saveFile')) { - // Nope, so throw exception - throw new MissingMethodException(array($outInstance, 'saveFile'), self::EXCEPTION_MISSING_METHOD); - } - - // Send the fileName and dataArray to the output handler - $outInstance->saveFile($fileName, $dataArray); - } - - /** Loads data from a file over the input handler - * - * @see FileInputStreamer - */ - public function loadFileContents ($fqfn) { - // Initialize the array - $array = array(); - - // Get output stream - $inInstance = $this->getInputStream(); - - // Is it a valid stream? - if (is_null($inInstance)) { - // No class returned - throw new NullPointerException($this, self::EXCEPTION_IS_NULL_POINTER); - } elseif (!is_object($inInstance)) { - // Not an object! ;-( - throw new NoObjectException($inInstance, self::EXCEPTION_IS_NO_OBJECT); - } elseif (!method_exists($inInstance, 'loadFileContents')) { - // Nope, so throw exception - throw new MissingMethodException(array($inInstance, 'loadFileContents'), self::EXCEPTION_MISSING_METHOD); - } - - // Read from the input handler - return $inInstance->loadFileContents($fqfn); - } -} - -// [EOF] -?> -- 2.39.2