]> git.mxchange.org Git - shipsimu.git/blobdiff - inc/classes/main/io/class_FrameworkFileInputPointer.php
Method call on non-object fixed
[shipsimu.git] / inc / classes / main / io / class_FrameworkFileInputPointer.php
index 7af6f6fe29857b246dcf8c4fced792db1a62c72b..fe6b058751494f27d9bb635799f35f98f39926b1 100644 (file)
@@ -6,7 +6,7 @@
  * @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
@@ -43,7 +43,7 @@ class FrameworkFileInputPointer extends BaseFrameworkSystem {
                $this->setObjectDescription("Handler for reading from files");
 
                // Create unique ID
-               $this->createUniqueID();
+               $this->generateUniqueId();
 
                // Clean-up a little
                $this->removeNumberFormaters();
@@ -76,17 +76,23 @@ class FrameworkFileInputPointer extends BaseFrameworkSystem {
         */
        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();