public EmbeddedSolrConnector(EmbeddedInstance instance, String coreName) { super(); this.instance = instance; this.core = this.instance.getCore(coreName); this.requestHandler = new SearchHandler(); this.requestHandler.init(new NamedList<Object>()); this.requestHandler.inform(this.core); // this.suggestHandler = new SuggestComponent(); // this.suggestHandler.init(new NamedList<Object>()); // this.suggestHandler.inform(this.core); super.init(this.instance.getServer(coreName)); }
@Override public synchronized void close() { if (this.core != null && !this.core.isClosed()) try { this.commit(false); } catch (final Throwable e) { ConcurrentLog.logException(e); } try { super.close(); } catch (final Throwable e) { ConcurrentLog.logException(e); } // we do NOT close the core here because that is closed if the enclosing instance is closed // do NOT uncomment the following line, which caused a "org.apache.solr.core.SolrCore Too many // close [count:-1] on org.apache.solr.core.SolrCore@51af7c57" error // try {this.core.close();} catch (final Throwable e) {ConcurrentLog.logException(e);} }