* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
-class StackFile extends BaseFile implements InputOutputPointer {
+class StackFile extends BaseFile implements Block {
/**
* Protected constructor
*
* Creates an instance of this File class and prepares it for usage
*
* @param $fileName Name of the stack file
+ * @param $blockInstance An instance of a Block class
* @return $fileInstance An instance of this File class
*/
- public final static function createStackFile ($fileName) {
+ public final static function createStackFile ($fileName, Block $blockInstance) {
// Get a new instance
$fileInstance = new StackFile();
+ // Set block instance here for callbacks
+ $fileInstance->setBlockInstance($blockInstance);
+
// Init this abstract file
$fileInstance->initFile($fileName);
// Return the prepared instance
return $fileInstance;
}
-
- /**
- * Determines seek position
- *
- * @return $seekPosition Current seek position
- * @todo 0% done
- */
- public final function determineSeekPosition () {
- $this->partialStub('Unfinished method.');
- }
-
- /**
- * 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
- * @todo 0% done
- */
- public function seek ($offset, $whence = SEEK_SET) {
- $this->partialStub('Unfinished method.');
- }
-
- /**
- * Size of this file
- *
- * @return $size Size (in bytes) of file
- * @todo Handle seekStatus
- * @todo 0% done
- */
- public function size () {
- $this->partialStub('Unfinished method.');
- }
-
- /**
- * Read data a file pointer
- *
- * @return mixed The result of fread()
- * @throws NullPointerException If the file pointer instance
- * is not set by setPointer()
- * @throws InvalidResourceException If there is being set
- */
- public function readFromFile () {
- $this->partialStub('Unfinished method.');
- }
-
- /**
- * Reads given amount of bytes from file.
- *
- * @param $bytes Amount of bytes to read
- * @return $data Data read from file
- */
- public function read ($bytes) {
- $this->partialStub('bytes=' . $bytes);
- }
-
- /**
- * Write data to a file pointer
- *
- * @param $dataStream The data stream we shall write to the file
- * @return mixed Number of writes bytes or FALSE on error
- * @throws NullPointerException If the file pointer instance
- * is not set by setPointer()
- * @throws InvalidResourceException If there is being set
- * an invalid file resource
- */
- public function writeToFile ($dataStream) {
- $this->partialStub('dataStream=' . $dataStream);
- }
-
- /**
- * Rewinds to the beginning of the file
- *
- * @return $status Status of this operation
- */
- public function rewind () {
- $this->partialStub('Unfinished method.');
- }
}
// [EOF]