// Call parent constructor
parent::__construct($className);
}
+
+ /**
+ * Determines seek position
+ *
+ * @return $seekPosition Current seek position
+ */
+ public function determineSeekPosition () {
+ // Not possible in text files
+ throw new UnsupportedOperationException(array($this, __FUNCTION__), self::EXCEPTION_UNSPPORTED_OPERATION);
+ }
+
+ /**
+ * Seek to given offset (default) or other possibilities as fseek() gives.
+ *
+ * @param $offset Offset to seek to (or used as "base" for other seeks)
+ * @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) {
+ // Not possible in text files
+ self::createDebugInstance(__CLASS__)->debugOutput('offset=' . $offset . ',whence=' . $whence);
+ throw new UnsupportedOperationException(array($this, __FUNCTION__), self::EXCEPTION_UNSPPORTED_OPERATION);
+ }
+
+ /**
+ * Reads from a local or remote file
+ *
+ * @param $fqfn The file's FQFN we shall load
+ * @return $array An array containing all read lines
+ * @throws InvalidArrayCountException If an array has not the expected size
+ * @throws InvalidMD5ChecksumException If two MD5 hashes did not match
+ */
+ public function loadFileContents ($fqfn) {
+ /*
+ * This class (or its implementations) are special file readers/writers.
+ * There is no need to read/write the whole file.
+ */
+ self::createDebugInstance(__CLASS__)->debugOutput('fqfn=' . $fqfn);
+ throw new UnsupportedOperationException(array($this, __FUNCTION__), self::EXCEPTION_UNSPPORTED_OPERATION);
+ }
}
// [EOF]