}
/**
- * Initializes all buffer queues (mostly in/out), this method is demanded
+ * Initializes all buffer queues (mostly in/out). This method is demanded
* by the CruncherHelper interface.
*
* @return void
$this->debugOutput('CRUNCHER: All buffers are now initialized.');
}
+ /**
+ * This method determines if the in-buffer is going to depleted and if so,
+ * it fetches more WUs from the network. If no WU can be fetched from the
+ * network and if enabled, a random test WU is being generated.
+ *
+ * This method is demanded from the CruncherHelper interface.
+ *
+ * @return void
+ */
+ public function doFetchWorkUnits () {
+ // Simply check if we have enough WUs left in the in-buffer queue (a FIFO)
+ if (!$this->isInBufferQueueFilled()) {
+ // The in-buffer queue needs filling, so head out and get some work
+ $this->fillInBufferQueueWithWorkUnits();
+
+ // Is the buffer still not filled and are test-packages allowed?
+ if ((!$this->isInBufferQueueFilled()) && ($this->getConfigInstance()->getConfigEntry('cruncher_allow_test_units') == 'Y')) {
+ // Then fill the in-buffer with (one) test-unit(s)
+ $this->fillInBufferQueueWithTestUnits();
+ } // END - if
+ } // END - if
+ }
+
/**
* Updates a given field with new value
*
}
/**
- * Method to "bootstrap" the cruncher. This step does also apply provided
- * command-line arguments stored in the request instance. No buffer queue
- * will be initialized here, we do only "general" things here.
+ * This method fills the in-buffer with (a) test unit(s) which are mainly
+ * used for development of the crunching part. They must be enabled in
+ * configuration, or else your cruncher runs out of WUs and waits for more
+ * to show up.
+ *
+ * In this method we already know that the in-buffer is going depleted so
+ * we don't need to double-check it here.
*
* @return void
- * @todo Implement this method
*/
- public function doBootstrapping () {
+ protected function fillInBufferQueueWithTestUnits () {
$this->partialStub('Please implement this method.');
}
/**
- * This method determines if the in-buffer is going to depleted and if so,
- * it fetches more WUs from the network. If no WU can be fetched from the
- * network and if enabled, a random test WU is being generated.
+ * This method fills the in-buffer with (real) WUs which will be crunched
+ * and the result be sent back to the key producer instance.
*
* @return void
*/
- public function doFetchWorkUnits () {
- // Simply check if we have enough WUs left in the in-buffer queue (a FIFO)
- if (!$this->isInBufferQueueFilled()) {
- // The in-buffer queue needs filling, so head out and get some work
- $this->fillInBufferQueueWithWorkUnits();
+ protected function fillInBufferQueueWithWorkUnits () {
+ $this->partialStub('Please implement this method.');
+ }
- // Is the buffer still not filled and are test-packages allowed?
- if ((!$this->isInBufferQueueFilled()) && ($this->getConfigInstance()->getConfigEntry('cruncher_allow_test_units') == 'Y')) {
- // Then fill the in-buffer with (one) test-unit(s)
- $this->fillInBufferQueueWithTestUnits();
- } // END - if
- } // END - if
+ /**
+ * Method to "bootstrap" the cruncher. This step does also apply provided
+ * command-line arguments stored in the request instance. No buffer queue
+ * will be initialized here, we only do "general" things here.
+ *
+ * @return void
+ * @todo Implement this method
+ */
+ public function doBootstrapping () {
+ $this->partialStub('Please implement this method.');
}
/**