You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by ro...@apache.org on 2015/02/25 15:57:42 UTC
svn commit: r1662238 [2/2] - in /lucene/dev/branches/branch_5x: ./ solr/
solr/core/ solr/core/src/java/org/apache/solr/cloud/
solr/core/src/java/org/apache/solr/core/
solr/core/src/java/org/apache/solr/handler/component/
solr/core/src/java/org/apache/s...
Modified: lucene/dev/branches/branch_5x/solr/test-framework/src/java/org/apache/solr/util/TestHarness.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_5x/solr/test-framework/src/java/org/apache/solr/util/TestHarness.java?rev=1662238&r1=1662237&r2=1662238&view=diff
==============================================================================
--- lucene/dev/branches/branch_5x/solr/test-framework/src/java/org/apache/solr/util/TestHarness.java (original)
+++ lucene/dev/branches/branch_5x/solr/test-framework/src/java/org/apache/solr/util/TestHarness.java Wed Feb 25 14:57:41 2015
@@ -23,14 +23,16 @@ import org.apache.solr.common.SolrExcept
import org.apache.solr.common.params.CommonParams;
import org.apache.solr.common.util.NamedList;
import org.apache.solr.common.util.NamedList.NamedListEntry;
-import org.apache.solr.core.ConfigSolr;
+import org.apache.solr.core.CloudConfig;
import org.apache.solr.core.CoreContainer;
import org.apache.solr.core.CoreDescriptor;
+import org.apache.solr.core.CorePropertiesLocator;
import org.apache.solr.core.CoresLocator;
-import org.apache.solr.core.PluginInfo;
+import org.apache.solr.core.NodeConfig;
import org.apache.solr.core.SolrConfig;
import org.apache.solr.core.SolrCore;
import org.apache.solr.core.SolrResourceLoader;
+import org.apache.solr.core.SolrXmlConfig;
import org.apache.solr.handler.UpdateRequestHandler;
import org.apache.solr.request.LocalSolrQueryRequest;
import org.apache.solr.request.SolrQueryRequest;
@@ -41,6 +43,7 @@ import org.apache.solr.response.SolrQuer
import org.apache.solr.schema.IndexSchema;
import org.apache.solr.schema.IndexSchemaFactory;
import org.apache.solr.servlet.DirectSolrConnection;
+import org.apache.solr.update.UpdateShardHandlerConfig;
import java.io.File;
import java.io.IOException;
@@ -130,8 +133,8 @@ public class TestHarness extends BaseTes
* @param indexSchema schema resource name
*/
public TestHarness(String coreName, String dataDir, String solrConfig, String indexSchema) {
- this(new TestConfigSolr(new SolrResourceLoader(SolrResourceLoader.locateSolrHome()),
- coreName, dataDir, solrConfig, indexSchema));
+ this(buildTestNodeConfig(new SolrResourceLoader(SolrResourceLoader.locateSolrHome())),
+ new TestCoresLocator(coreName, dataDir, solrConfig, indexSchema));
this.coreName = (coreName == null) ? SolrTestCaseJ4.DEFAULT_TEST_CORENAME : coreName;
}
@@ -154,56 +157,41 @@ public class TestHarness extends BaseTes
* @param solrXml the text of a solrxml
*/
public TestHarness(SolrResourceLoader loader, String solrXml) {
- this(ConfigSolr.fromString(loader, solrXml));
+ this(SolrXmlConfig.fromString(loader, solrXml));
+ }
+
+ public TestHarness(NodeConfig nodeConfig) {
+ this(nodeConfig, new CorePropertiesLocator(nodeConfig.getCoreRootDirectory()));
}
/**
* Create a TestHarness using a specific config
* @param config the ConfigSolr to use
*/
- public TestHarness(ConfigSolr config) {
- container = new CoreContainer(config);
+ public TestHarness(NodeConfig config, CoresLocator coresLocator) {
+ container = new CoreContainer(config, coresLocator);
container.load();
updater = new UpdateRequestHandler();
updater.init(null);
}
- public static class TestConfigSolr extends ConfigSolr {
-
- final CoresLocator locator;
-
- public TestConfigSolr(String coreName, String dataDir, String solrConfig, String schema) {
- this(new SolrResourceLoader(SolrResourceLoader.locateSolrHome()), coreName, dataDir, solrConfig, schema);
- }
-
- public TestConfigSolr(SolrResourceLoader loader, String coreName, String dataDir, String solrConfig, String schema) {
- super(loader);
- locator = new TestCoresLocator(coreName, dataDir, solrConfig, schema);
- }
-
- @Override
- public CoresLocator getCoresLocator() {
- return locator;
- }
-
- @Override
- public PluginInfo getShardHandlerFactoryPluginInfo() {
- return null;
- }
-
- @Override
- protected String getProperty(CfgProp key) {
- switch (key) {
- case SOLR_HOST: return System.getProperty("host");
- case SOLR_HOSTPORT: return System.getProperty("hostPort", "");
- case SOLR_HOSTCONTEXT: return System.getProperty("hostContext", "");
- case SOLR_DISTRIBUPDATESOTIMEOUT: return "30000";
- case SOLR_ZKCLIENTTIMEOUT: return System.getProperty("zkClientTimeout", "30000");
- case SOLR_DISTRIBUPDATECONNTIMEOUT: return "30000";
- case SOLR_SHARESCHEMA: return System.getProperty("shareSchema", "false");
- }
- return null;
- }
+ public static NodeConfig buildTestNodeConfig(SolrResourceLoader loader) {
+ CloudConfig cloudConfig = new CloudConfig.CloudConfigBuilder(System.getProperty("host"),
+ Integer.getInteger("hostPort", 8983),
+ System.getProperty("hostContext", ""))
+ .setZkClientTimeout(Integer.getInteger("zkClientTimeout", 30000))
+ .build();
+ if (System.getProperty("zkHost") == null)
+ cloudConfig = null;
+ UpdateShardHandlerConfig updateShardHandlerConfig
+ = new UpdateShardHandlerConfig(UpdateShardHandlerConfig.DEFAULT_MAXUPDATECONNECTIONS,
+ UpdateShardHandlerConfig.DEFAULT_MAXUPDATECONNECTIONSPERHOST,
+ 30000, 30000);
+ return new NodeConfig.NodeConfigBuilder("testNode", loader)
+ .setUseSchemaCache(Boolean.getBoolean("shareSchema"))
+ .setCloudConfig(cloudConfig)
+ .setUpdateShardHandlerConfig(updateShardHandlerConfig)
+ .build();
}
public static class TestCoresLocator extends ReadOnlyCoresLocator {