add support for new conversion service

This commit is contained in:
Uwe Steinmann 2021-10-06 14:59:46 +02:00
parent 6838c26c5f
commit 4e8bb56821
3 changed files with 21 additions and 1 deletions

View File

@ -31,6 +31,11 @@ class SeedDMS_FulltextService {
*/ */
protected $converters; protected $converters;
/**
* @var object
*/
protected $conversionmgr;
/** /**
* Max file size for imediate indexing * Max file size for imediate indexing
*/ */
@ -43,6 +48,7 @@ class SeedDMS_FulltextService {
public function __construct() { public function __construct() {
$this->services = array(); $this->services = array();
$this->converters = array(); $this->converters = array();
$this->conversionmgr = null;
$this->maxsize = 0; $this->maxsize = 0;
$this->index = null; $this->index = null;
$this->search = null; $this->search = null;
@ -57,6 +63,18 @@ class SeedDMS_FulltextService {
$this->converters = $converters; $this->converters = $converters;
} }
/**
* Set conversion service manager
*
* A conversion manager is a service for converting files from one format
* to another format.
*
* @param object $conversionmgr
*/
function setConversionMgr($conversionmgr) { /* {{{ */
$this->conversionmgr = $conversionmgr;
} /* }}} */
public function setMaxSize($maxsize) { public function setMaxSize($maxsize) {
$this->maxsize = $maxsize; $this->maxsize = $maxsize;
} }
@ -80,7 +98,7 @@ class SeedDMS_FulltextService {
$nocontent = ($object->getLatestContent()->getFileSize() > $this->maxsize) && !$forceupdate; $nocontent = ($object->getLatestContent()->getFileSize() > $this->maxsize) && !$forceupdate;
else else
$nocontent = true; $nocontent = true;
return new $this->services[0]['IndexedDocument']($object->getDMS(), $object, $this->converters, $nocontent, $this->cmdtimeout); return new $this->services[0]['IndexedDocument']($object->getDMS(), $object, $this->conversionmgr ? $this->conversionmgr : $this->converters, $nocontent, $this->cmdtimeout);
} }
/** /**

View File

@ -66,4 +66,5 @@ if(isset($GLOBALS['SEEDDMS_HOOKS']['initDMS'])) {
} }
} }
require_once("inc.ConversionInit.php");
require_once('inc.FulltextInit.php'); require_once('inc.FulltextInit.php');

View File

@ -42,6 +42,7 @@ if($settings->_enableFullSearch) {
} }
} }
$fulltextservice->setConverters(isset($settings->_converters['fulltext']) ? $settings->_converters['fulltext'] : null); $fulltextservice->setConverters(isset($settings->_converters['fulltext']) ? $settings->_converters['fulltext'] : null);
$fulltextservice->setConversionMgr($conversionmgr);
$fulltextservice->setMaxSize($settings->_maxSizeForFullText); $fulltextservice->setMaxSize($settings->_maxSizeForFullText);
$fulltextservice->setCmdTimeout($settings->_cmdTimeout); $fulltextservice->setCmdTimeout($settings->_cmdTimeout);
} }