public function process() {
		$job_id = $this->_input->get('_morrow_messagequeue_id');

		// just start worker if startworker was sent by $_GET
		if ($job_id !== null) {
			// pass data for the current job to the worker
			$job = $this->get($job_id);
			foreach ($job['data'] as $key => $value) {
				$this->_input->set($key, $value);
			}
			
			return false;
		}

		// get all files to process
		$files = glob($this->_save_path . '*.mq');

		// there is no entry to process anymore
		while (count($files) > 0) {
			sort($files);

			// extract data for the job to process
			$item = json_decode(file_get_contents($files[0]), true);

			$command = $this->_cli_path . ' ' . getcwd() . '/index.php' . ' ' . $item['controller'] . ' _morrow_messagequeue_id=' . $item['id'];
			exec($command, $output, $return_var);

			unlink($files[0]);
	
			// get all files to process
			$files = glob($this->_save_path . '*.mq');
		}

		unlink($this->_lockfile);

		return true;
	}