/**
* A class for reading files
*
- * @author Roland Haeder <webmaster@mxchange.org>
+ * @author Roland Haeder <webmaster@ship-simu.org>
* @version 0.0.0
* @copyright Copyright(c) 2007, 2008 Roland Haeder, this is free software
* @license GNU GPL 3.0 or any newer version
- * @link http://www.ship-simu.org
+ * @link http://www.ship-simu.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
parent::__construct(__CLASS__);
// Set part description
- $this->setObjectDescription("Dateiausgabe-Handler");
+ $this->setObjectDescription("Handler for reading from files");
// Create unique ID
- $this->createUniqueID();
+ $this->generateUniqueId();
// Clean-up a little
$this->removeNumberFormaters();
*/
public final static function createFrameworkFileInputPointer ($fileName) {
// Some pre-sanity checks...
- if (is_null($fileName)) {
+ if ((is_null($fileName)) || (empty($fileName))) {
// No filename given
throw new FileIsEmptyException(null, self::EXCEPTION_UNEXPECTED_EMPTY_STRING);
+ } elseif (!file_exists($fileName)) {
+ // File does not exist!
+ throw new FileIsMissingException($fileName, self::EXCEPTION_FILE_NOT_FOUND);
+ } elseif (!is_readable($fileName)) {
+ // File does not exist!
+ throw new FileReadProtectedException($fileName, self::EXCEPTION_FILE_CANNOT_BE_READ);
}
// Try to open a handler
$filePointer = @fopen($fileName, 'rb');
- if (($filePointer === null) || ($filePointer === false)) {
+ if ((is_null($filePointer)) || ($filePointer === false)) {
// Something bad happend
throw new FilePointerNotOpenedException ($fileName, self::EXCEPTION_FILE_POINTER_INVALID);
- }
+ } // END - if
// Create new instance
$pointerInstance = new FrameworkFileInputPointer();