public SolandraCoreContainer(String solrConfigFile) throws ParserConfigurationException, IOException, SAXException { this.solrConfigFile = solrConfigFile; SolrConfig solrConfig = new SolrConfig(solrConfigFile); CoreDescriptor dcore = new CoreDescriptor(null, "", "."); singleCore = new SolrCore("", "/tmp", solrConfig, null, dcore); }
@Override public List<CoreDescriptor> discover(CoreContainer cc) { return ImmutableList.of(new CoreDescriptor(coreName, cc.getCoreRootDirectory().resolve(coreName), cc.getContainerProperties(), cc.isZooKeeperAware(), CoreDescriptor.CORE_DATADIR, dataDir, CoreDescriptor.CORE_CONFIG, solrConfig, CoreDescriptor.CORE_SCHEMA, schema, CoreDescriptor.CORE_COLLECTION, System.getProperty("collection", "collection1"), CoreDescriptor.CORE_SHARD, System.getProperty("shard", "shard1"))); }
CoreDescriptor coreDescriptor = new CoreDescriptor(coreContainer, coreId, solrCoreFolder.getAbsolutePath()); SolrCore core = coreContainer.create(coreDescriptor);
CoreDescriptor coreDescriptor = new CoreDescriptor(coreContainer, coreId, solrCoreFolder.getAbsolutePath()); SolrCore core = coreContainer.create(coreDescriptor);
/** * registers a {@link SolrCore} to the {@link #server} managed by this * instance. Will replace an already existing {@link SolrCore} with the * same name * @param coreName the name of the {@link SolrCore} to register * @param coreDir the directory for the Core. If <code>null</code> is parsed * {@link #managedSolrDir}/coreName is used as default. */ private void registerCore(String coreName, File coreDir) { if(coreName == null){ coreName = server.getDefaultCoreName(); } if(coreDir == null){ //use the coreName as default coreDir = new File(managedSolrDir,coreName); } if(!coreDir.isDirectory()){ throw new IllegalArgumentException("The Core Directory '"+ coreDir+" for the Core '"+coreName+"' does not exist or is not an directory"); } SolrCore core; CoreDescriptor coreDescriptor = new CoreDescriptor(server, coreName, coreDir.getAbsolutePath()); core = server.create(coreDescriptor); //this will also replace an existing core with the same name server.register(coreName, core, false); server.persist(); //store the new/updated SolrCore in the solr.xml } private IndexMetadata updateCore(IndexMetadata metadata, ArchiveInputStream ais){
/** * registers a {@link SolrCore} to the {@link #server} managed by this * instance. Will replace an already existing {@link SolrCore} with the * same name * @param coreName the name of the {@link SolrCore} to register * @param coreDir the directory for the Core. If <code>null</code> is parsed * {@link #managedSolrDir}/coreName is used as default. */ private void registerCore(String coreName, File coreDir) { if(coreName == null){ coreName = server.getDefaultCoreName(); } if(coreDir == null){ //use the coreName as default coreDir = new File(managedSolrDir,coreName); } if(!coreDir.isDirectory()){ throw new IllegalArgumentException("The Core Directory '"+ coreDir+" for the Core '"+coreName+"' does not exist or is not an directory"); } SolrCore core; CoreDescriptor coreDescriptor = new CoreDescriptor(server, coreName, coreDir.getAbsolutePath()); core = server.create(coreDescriptor); //this will also replace an existing core with the same name server.register(coreName, core, false); server.persist(); //store the new/updated SolrCore in the solr.xml } private IndexMetadata updateCore(IndexMetadata metadata, ArchiveInputStream ais){
props.setProperty(CoreDescriptor.CORE_DATADIR, dataDirStr); CoreDescriptor descr = new CoreDescriptor(container, "core1", solrHomeDir.toString());
solrHome, solrHome.toUri(), loader.getInstanceDir(), loader.getConfigDir(), dataDir, perm)); CoreContainer container = new CoreContainer(loader); CoreDescriptor descr = new CoreDescriptor(container, "core1", solrHome.toString()); descr.setDataDir(dataDir); descr.setCoreProperties(props);
CoreContainer cores = new CoreContainer(new SolrResourceLoader(instanceDir)); SolrConfig solrConfig = new SolrConfig(instanceDir, SolrConfig.DEFAULT_CONF_FILE, null); CoreDescriptor dcore = new CoreDescriptor(cores, "", solrConfig.getResourceLoader().getInstanceDir()); IndexSchema indexSchema = new IndexSchema(solrConfig, instanceDir+"/conf/schema.xml", null); core = new SolrCore( null, dataDir, solrConfig, indexSchema, dcore);
core = server.create(new CoreDescriptor(server, coreName, coreDir.getPath()));
core = server.create(new CoreDescriptor(server, coreName, coreDir.getPath()));
CoreDescriptor cd = new CoreDescriptor(cc, "dummy", solrServerRef.getIndex()); this.core = cc.create(cd);
CoreDescriptor cd = new CoreDescriptor(cc, "dummy", solrServerRef.getIndex()); this.core = cc.create(cd);
CoreDescriptor dcore = new CoreDescriptor(cores, "", "."); dcore.setCoreProperties(null); SolrResourceLoader resourceLoader = new SolrResourceLoader(solrHome, null, getCoreProps(solrHome, null,dcore.getCoreProperties()));
@Override public CoreContainer initialize() { CoreContainer container = new CoreContainer(new SolrResourceLoader(SolrResourceLoader.locateSolrHome())); CoreDescriptor dcore = new CoreDescriptor(container, coreName, solrConfig.getResourceLoader().getInstanceDir()); dcore.setConfigName(solrConfig.getResourceName()); dcore.setSchemaName(indexSchema.getResourceName()); SolrCore core = new SolrCore( null, dataDirectory, solrConfig, indexSchema, dcore); container.register(coreName, core, false); return container; } }
/** * Start up an embedded Solr server. * * @param home The path to the Solr home directory * @return EmbeddedSolrServer: The instantiated server * @throws Exception if any errors occur */ private EmbeddedSolrServer startSolr(String home) throws Exception { try { SolrConfig solrConfig = new SolrConfig(home, SOLR_CONFIG, null); IndexSchema schema = new IndexSchema(solrConfig, SOLR_SCHEMA, null); solrContainer = new CoreContainer(new SolrResourceLoader( SolrResourceLoader.locateSolrHome())); CoreDescriptor descriptor = new CoreDescriptor(solrContainer, "", solrConfig.getResourceLoader().getInstanceDir()); descriptor.setConfigName(solrConfig.getResourceName()); descriptor.setSchemaName(schema.getResourceName()); solrCore = new SolrCore(null, solrConfig.getDataDir(), solrConfig, schema, descriptor); solrContainer.register("cheese", solrCore, false); // CoreAdminRequest.create return new EmbeddedSolrServer(solrContainer, "cheese"); } catch(Exception ex) { log.error("\nFailed to start Solr server\n"); throw ex; } }
/** * Start up an embedded Solr server. * * @param home The path to the Solr home directory * @return EmbeddedSolrServer: The instantiated server * @throws Exception if any errors occur */ private EmbeddedSolrServer startSolr(String home) throws Exception { try { SolrConfig solrConfig = new SolrConfig(home, SOLR_CONFIG, null); IndexSchema schema = new IndexSchema(solrConfig, SOLR_SCHEMA, null); solrContainer = new CoreContainer(new SolrResourceLoader( SolrResourceLoader.locateSolrHome())); CoreDescriptor descriptor = new CoreDescriptor(solrContainer, "", solrConfig.getResourceLoader().getInstanceDir()); descriptor.setConfigName(solrConfig.getResourceName()); descriptor.setSchemaName(schema.getResourceName()); solrCore = new SolrCore(null, solrConfig.getDataDir(), solrConfig, schema, descriptor); solrContainer.register("cheese", solrCore, false); // CoreAdminRequest.create return new EmbeddedSolrServer(solrContainer, "cheese"); } catch(Exception ex) { log.error("\nFailed to start Solr server\n"); throw ex; } }
private EmbeddedSolrServer buildSolrIndex(String home) throws ParserConfigurationException, IOException, SAXException { SolrConfig solrConfig = new SolrConfig(home, SOLR_CONFIG, null); IndexSchema schema = new IndexSchema(solrConfig, SOLR_SCHEMA, null); solrContainer = new CoreContainer(new SolrResourceLoader( SolrResourceLoader.locateSolrHome())); CoreDescriptor descriptor = new CoreDescriptor(solrContainer, "", solrConfig.getResourceLoader().getInstanceDir()); descriptor.setConfigName(solrConfig.getResourceName()); descriptor.setSchemaName(schema.getResourceName()); SolrCore solrCore = new SolrCore(null, solrConfig.getDataDir(),solrConfig, schema, descriptor); solrContainer.register("cheese", solrCore, false); return new EmbeddedSolrServer(solrContainer, "cheese"); }
private EmbeddedSolrServer buildSolrIndex(String home) throws ParserConfigurationException, IOException, SAXException { SolrConfig solrConfig = new SolrConfig(home, SOLR_CONFIG, null); IndexSchema schema = new IndexSchema(solrConfig, SOLR_SCHEMA, null); solrContainer = new CoreContainer(new SolrResourceLoader( SolrResourceLoader.locateSolrHome())); CoreDescriptor descriptor = new CoreDescriptor(solrContainer, "", solrConfig.getResourceLoader().getInstanceDir()); descriptor.setConfigName(solrConfig.getResourceName()); descriptor.setSchemaName(schema.getResourceName()); SolrCore solrCore = new SolrCore(null, solrConfig.getDataDir(),solrConfig, schema, descriptor); solrContainer.register("cheese", solrCore, false); return new EmbeddedSolrServer(solrContainer, "cheese"); }
SolrParams params = req.getParams(); String name = params.get(CoreAdminParams.NAME); CoreDescriptor dcore = new CoreDescriptor(coreContainer, name, params.get(CoreAdminParams.INSTANCE_DIR));