Switched from unabstracted file pointer class to a better abstract approach (unfinished).
authorRoland Haeder <roland@mxchange.org>
Tue, 20 May 2014 21:07:52 +0000 (23:07 +0200)
committerRoland Haeder <roland@mxchange.org>
Tue, 20 May 2014 21:07:52 +0000 (23:07 +0200)
Signed-off-by: Roland H├Ąder <roland@mxchange.org>
inc/classes/main/index/class_BaseIndex.php
inc/classes/main/stacker/file/class_BaseFileStack.php
inc/config.php

index 748a278..18b2d69 100644 (file)
@@ -189,16 +189,17 @@ class BaseIndex extends BaseFrameworkSystem {
         *
         * @param       $fileName       File name of this index
         * @return      void
+        * @todo        Currently the index file is not cached, please implement a memory-handling class and if enough RAM is found, cache the whole index file.
         */
        protected function initIndex ($fileName) {
                // Append index file extension
                $fileName .= $this->getConfigInstance()->getConfigEntry('index_extension');
 
                // Get a file i/o pointer instance for index file
-               $pointerInstance = ObjectFactory::createObjectByConfiguredName('file_raw_input_output_class', array($fileName));
+               $fileInstance = ObjectFactory::createObjectByConfiguredName('index_file_class', array($fileName));
 
                // Get iterator instance
-               $iteratorInstance = ObjectFactory::createObjectByConfiguredName('file_io_iterator_class', array($pointerInstance));
+               $iteratorInstance = ObjectFactory::createObjectByConfiguredName('file_io_iterator_class', array($fileInstance));
 
                // Is the instance implementing the right interface?
                assert($iteratorInstance instanceof SeekableWritableFileIterator);
index 9b662aa..4729486 100644 (file)
@@ -198,13 +198,14 @@ class BaseFileStack extends BaseStacker {
         * @param       $fileName       File name of this stack
         * @param       $type           Type of this stack (e.g. url_source for URL sources)
         * @return      void
+        * @todo        Currently the stack file is not cached, please implement a memory-handling class and if enough RAM is found, cache the whole stack file.
         */
        protected function initFileStack ($fileName, $type) {
                // Get a file i/o pointer instance for stack file
-               $pointerInstance = ObjectFactory::createObjectByConfiguredName('file_raw_input_output_class', array($fileName));
+               $fileInstance = ObjectFactory::createObjectByConfiguredName('stack_file_class', array($fileName));
 
                // Get iterator instance
-               $iteratorInstance = ObjectFactory::createObjectByConfiguredName('file_io_iterator_class', array($pointerInstance));
+               $iteratorInstance = ObjectFactory::createObjectByConfiguredName('file_io_iterator_class', array($fileInstance));
 
                // Is the instance implementing the right interface?
                assert($iteratorInstance instanceof SeekableWritableFileIterator);
index cecc855..a51fb8d 100644 (file)
@@ -386,5 +386,11 @@ $cfg->setConfigEntry('index_pre_allocate_enabled', 'Y');
 // CFG: INDEX-PRE-ALLOCATE-COUNT
 $cfg->setConfigEntry('index_pre_allocate_count', 10000);
 
+// CFG: STACK-FILE-CLASS
+$cfg->setConfigEntry('stack_file_class', 'StackFile');
+
+// CFG: INDEX-FILE-CLASS
+$cfg->setConfigEntry('index_file_class', 'IndexFile');
+
 // [EOF]
 ?>