Skip to content
Snippets Groups Projects
Commit 19a0b958 authored by Brian Carrier's avatar Brian Carrier Committed by GitHub
Browse files

Merge pull request #2635 from sleuthkit/kwsrch_fixes

Fix 2 bugs that caused exceptions when core did not open. Simplified …
parents 34e7d8a1 22aa7597
No related branches found
No related tags found
No related merge requests found
......@@ -159,41 +159,50 @@ public void propertyChange(PropertyChangeEvent evt) {
String changed = evt.getPropertyName();
if (changed.equals(Case.Events.CURRENT_CASE.toString())) {
if (null != evt.getNewValue()) {
boolean disableSearch = false;
/*
* A case has been opened.
*/
try {
Server server = KeywordSearch.getServer();
Index indexInfo = server.getIndexInfo();
if (server.coreIsOpen() && IndexFinder.getCurrentSolrVersion().equals(indexInfo.getSolrVersion())) {
/*
* Solr version is current, so check the Solr
* schema version and selectively enable the ad
* hoc search UI components.
*/
boolean schemaIsCurrent = IndexFinder.getCurrentSchemaVersion().equals(indexInfo.getSchemaVersion());
listsButton.setEnabled(schemaIsCurrent);
searchDropButton.setEnabled(true);
dropPanel.setRegexSearchEnabled(schemaIsCurrent);
active = true;
} else {
/*
* Unsupported Solr version, disable the ad hoc
* search UI components.
*/
searchDropButton.setEnabled(false);
listsButton.setEnabled(false);
active = false;
if (server.coreIsOpen() == false) {
disableSearch = true;
}
else {
Index indexInfo = server.getIndexInfo();
if (IndexFinder.getCurrentSolrVersion().equals(indexInfo.getSolrVersion())) {
/*
* Solr version is current, so check the Solr
* schema version and selectively enable the ad
* hoc search UI components.
*/
boolean schemaIsCurrent = IndexFinder.getCurrentSchemaVersion().equals(indexInfo.getSchemaVersion());
listsButton.setEnabled(schemaIsCurrent);
searchDropButton.setEnabled(true);
dropPanel.setRegexSearchEnabled(schemaIsCurrent);
active = true;
} else {
/*
* Unsupported Solr version, disable the ad hoc
* search UI components.
*/
disableSearch = true;
}
}
} catch (KeywordSearchModuleException ex) {
/*
* Error, disable the ad hoc search UI components.
*/
logger.log(Level.SEVERE, "Error getting text index info", ex); //NON-NLS
disableSearch = true;
}
if (disableSearch) {
searchDropButton.setEnabled(false);
listsButton.setEnabled(false);
active = false;
}
} else {
/*
* A case has been closed.
......
......@@ -327,6 +327,9 @@ private void setPanel(List<IndexedText> sources) {
*/
private boolean solrHasContent(Long objectId) {
final Server solrServer = KeywordSearch.getServer();
if (solrServer.coreIsOpen() == false)
return false;
try {
return solrServer.queryIsIndexed(objectId);
} catch (NoOpenCoreException | KeywordSearchModuleException ex) {
......
......@@ -179,7 +179,7 @@ public String getServiceName() {
"SolrSearch.checkingForLatestIndex.msg=Looking for text index with latest Solr and schema version",
"SolrSearch.indentifyingIndex.msg=Identifying text index for upgrade",
"SolrSearch.copyIndex.msg=Copying existing text index",
"SolrSearch.openCore.msg=Creating/Opening text index",
"SolrSearch.openCore.msg=Opening text index",
"SolrSearch.complete.msg=Text index successfully opened"})
public void openCaseResources(CaseContext context) throws AutopsyServiceException {
ProgressIndicator progress = context.getProgressIndicator();
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment