MDL-53516 search: Adding file indexing support to Solr

Expand the Solr engine to use the built in (to Solr) Tika
file indexing engine. Files are shipped off for indexing with
curl. Each file must have it's own document. So grouping is
used to keep files and Moodle docs associated.
This commit is contained in:
Eric Merrill 2016-03-17 01:19:40 -04:00
parent 091973dbd7
commit cd894f84b3
5 changed files with 808 additions and 9 deletions

View file

@ -31,6 +31,8 @@ if ($ADMIN->fulltree) {
$settings->add(new admin_setting_heading('search_solr_settings', '', get_string('extensionerror', 'search_solr')));
} else {
$settings->add(new admin_setting_heading('search_solr_connection',
new lang_string('connectionsettings', 'search_solr'), ''));
$settings->add(new admin_setting_configtext('search_solr/server_hostname', new lang_string('solrserverhostname', 'search_solr'), new lang_string('solrserverhostname_desc', 'search_solr'), '127.0.0.1', PARAM_TEXT));
$settings->add(new admin_setting_configtext('search_solr/indexname', new lang_string('solrindexname', 'search_solr'), '', 'moodle', PARAM_TEXT));
$settings->add(new admin_setting_configcheckbox('search_solr/secure', new lang_string('solrsecuremode', 'search_solr'), '', 0, 1, 0));
@ -46,6 +48,15 @@ if ($ADMIN->fulltree) {
$settings->add(new admin_setting_configtext('search_solr/ssl_keypassword', new lang_string('solrsslkeypassword', 'search_solr'), new lang_string('solrsslkeypassword_desc', 'search_solr'), '', PARAM_RAW));
$settings->add(new admin_setting_configtext('search_solr/ssl_cainfo', new lang_string('solrsslcainfo', 'search_solr'), new lang_string('solrsslcainfo_desc', 'search_solr'), '', PARAM_RAW));
$settings->add(new admin_setting_configtext('search_solr/ssl_capath', new lang_string('solrsslcapath', 'search_solr'), new lang_string('solrsslcapath_desc', 'search_solr'), '', PARAM_RAW));
$settings->add(new admin_setting_heading('search_solr_fileindexing',
new lang_string('fileindexsettings', 'search_solr'), ''));
$settings->add(new admin_setting_configcheckbox('search_solr/fileindexing',
new lang_string('fileindexing', 'search_solr'),
new lang_string('fileindexing_help', 'search_solr'), 1));
$settings->add(new admin_setting_configtext('search_solr/maxindexfilekb',
new lang_string('maxindexfilekb', 'search_solr'),
new lang_string('maxindexfilekb_help', 'search_solr'), '20197152', PARAM_INT));
}
}
}