Example usage for org.apache.solr.core CoreDescriptor CoreDescriptor

List of usage examples for org.apache.solr.core CoreDescriptor CoreDescriptor

Introduction

In this page you can find the example usage for org.apache.solr.core CoreDescriptor CoreDescriptor.

Prototype

public CoreDescriptor(String name, Path instanceDir, Properties containerProperties, boolean isZooKeeperAware) 

Source Link

Document

Create a new CoreDescriptor with a given name and instancedir

Usage

From source file:com.searchbox.engine.solr.EmbeddedSolr.java

License:Apache License

@Override
public void register(Collection collection) {

    String coreInstanceDir = this.solrHome;

    Properties properties = new Properties();

    if (this.dataDir != null) {
        File dataDir = new File(this.dataDir);
        if (dataDir.exists()) {
            try {
                FileUtils.deleteDirectory(dataDir);
            } catch (IOException e) {
                LOGGER.error("Could not delete DataDir: " + dataDir);
            }/*from   w  ww . ja  va2 s.  com*/
        }
        properties.setProperty("dataDir", this.dataDir);
    } else {
        properties.setProperty("dataDir", coreInstanceDir + "/" + collection.getName() + "/data/");
    }

    CoreDescriptor dcore = new CoreDescriptor(coreContainer, collection.getName(), coreInstanceDir, properties);

    try {
        SolrCore core = coreContainer.create(dcore);
        coreContainer.register(core, false);

        LOGGER.info("Solr Core config: " + core.getConfigResource());
        LOGGER.info("Solr SchemaResource: " + core.getSchemaResource());
        LOGGER.info("Solr Data dir: " + core.getDataDir());
    } catch (Exception e) {
        LOGGER.warn(e.getMessage());
    }
}