class SolrOperationsService {

    public void createCore(StratioStreamingMessage message) throws IOException, URISyntaxException, SolrServerException, ParserConfigurationException, SAXException, TransformerException, InterruptedException {
        String core = message.getStreamName();
        String dataPath = this.dataDir + '/' + core + "/data";
        String confPath = this.dataDir + '/' + core + "/conf";
        createDirs(dataPath, confPath);
        createSolrConfig(confPath);
        createSolrSchema(message.getColumns(), confPath);
        SolrClient solrClient = getSolrclient(core);
        CoreAdminRequest.Create createCore = new CoreAdminRequest.Create();
        createCore.setDataDir(dataPath);
        createCore.setInstanceDir(dataDir + '/' + core);
        createCore.setCoreName(core);
        createCore.setSchemaName("schema.xml");
        createCore.setConfigName("solrconfig.xml");
        if (solrClient instanceof CloudSolrClient) {
            ((CloudSolrClient)solrClient).uploadConfig(Paths.get(confPath), core);
        }
        solrClient.request(createCore);
    }

    public  SolrOperationsService(String solrHosts, String zkHosts, String dataDir, Boolean isCloud);

}