Author: ogrisel
Date: Sun Mar 25 19:24:08 2012
New Revision: 1305098
URL: http://svn.apache.org/viewvc?rev=1305098&view=rev
Log:
STANBOL-197: make it possible to pass named index archives directly to bypass
DataFileProvider race conditions
Modified:
incubator/stanbol/trunk/commons/solr/managed/src/main/java/org/apache/stanbol/commons/solr/managed/ManagedSolrServer.java
incubator/stanbol/trunk/commons/solr/managed/src/main/java/org/apache/stanbol/commons/solr/managed/impl/ManagedSolrServerImpl.java
incubator/stanbol/trunk/commons/solr/managed/src/main/java/org/apache/stanbol/commons/solr/managed/standalone/DefaultStandaloneManagedSolrServerWrapper.java
incubator/stanbol/trunk/commons/solr/managed/src/main/java/org/apache/stanbol/commons/solr/managed/standalone/StandaloneManagedSolrServer.java
Modified:
incubator/stanbol/trunk/commons/solr/managed/src/main/java/org/apache/stanbol/commons/solr/managed/ManagedSolrServer.java
URL:
http://svn.apache.org/viewvc/incubator/stanbol/trunk/commons/solr/managed/src/main/java/org/apache/stanbol/commons/solr/managed/ManagedSolrServer.java?rev=1305098&r1=1305097&r2=1305098&view=diff
==============================================================================
---
incubator/stanbol/trunk/commons/solr/managed/src/main/java/org/apache/stanbol/commons/solr/managed/ManagedSolrServer.java
(original)
+++
incubator/stanbol/trunk/commons/solr/managed/src/main/java/org/apache/stanbol/commons/solr/managed/ManagedSolrServer.java
Sun Mar 25 19:24:08 2012
@@ -212,6 +212,9 @@ public interface ManagedSolrServer {
* @throws IOException
*/
IndexMetadata updateIndex(String indexName,String resourceName,Properties
properties) throws IOException;
+
+ IndexMetadata updateIndex(String indexName, ArchiveInputStream ais, String
archiveCoreName) throws IOException,
+
SAXException;
/**
* Removes the index with the parsed name and optionally also deletes the
* data on the file system.
@@ -262,5 +265,4 @@ public interface ManagedSolrServer {
* component is currently deactivated) or initialised.
*/
File getManagedDirectory();
-
}
\ No newline at end of file
Modified:
incubator/stanbol/trunk/commons/solr/managed/src/main/java/org/apache/stanbol/commons/solr/managed/impl/ManagedSolrServerImpl.java
URL:
http://svn.apache.org/viewvc/incubator/stanbol/trunk/commons/solr/managed/src/main/java/org/apache/stanbol/commons/solr/managed/impl/ManagedSolrServerImpl.java?rev=1305098&r1=1305097&r2=1305098&view=diff
==============================================================================
---
incubator/stanbol/trunk/commons/solr/managed/src/main/java/org/apache/stanbol/commons/solr/managed/impl/ManagedSolrServerImpl.java
(original)
+++
incubator/stanbol/trunk/commons/solr/managed/src/main/java/org/apache/stanbol/commons/solr/managed/impl/ManagedSolrServerImpl.java
Sun Mar 25 19:24:08 2012
@@ -599,6 +599,11 @@ public class ManagedSolrServerImpl imple
@Override
public IndexMetadata updateIndex(String indexName, ArchiveInputStream ais)
throws IOException, SAXException {
+ return updateIndex(indexName, ais, null);
+ }
+
+ @Override
+ public IndexMetadata updateIndex(String indexName, ArchiveInputStream ais,
String archiveCoreName) throws IOException, SAXException {
if(indexName == null || indexName.isEmpty()){
throw new IllegalArgumentException("The parsed name for the index
MUST NOT" +
"be NULL nor empty!");
@@ -610,6 +615,9 @@ public class ManagedSolrServerImpl imple
metadata.setServerName(serverName);
metadata.setIndexName(indexName);
metadata.setSynchronized(false);
+ if (archiveCoreName != null) {
+ metadata.setArchive(archiveCoreName);
+ }
try {
updateCore(metadata, ais);
} finally {
Modified:
incubator/stanbol/trunk/commons/solr/managed/src/main/java/org/apache/stanbol/commons/solr/managed/standalone/DefaultStandaloneManagedSolrServerWrapper.java
URL:
http://svn.apache.org/viewvc/incubator/stanbol/trunk/commons/solr/managed/src/main/java/org/apache/stanbol/commons/solr/managed/standalone/DefaultStandaloneManagedSolrServerWrapper.java?rev=1305098&r1=1305097&r2=1305098&view=diff
==============================================================================
---
incubator/stanbol/trunk/commons/solr/managed/src/main/java/org/apache/stanbol/commons/solr/managed/standalone/DefaultStandaloneManagedSolrServerWrapper.java
(original)
+++
incubator/stanbol/trunk/commons/solr/managed/src/main/java/org/apache/stanbol/commons/solr/managed/standalone/DefaultStandaloneManagedSolrServerWrapper.java
Sun Mar 25 19:24:08 2012
@@ -127,5 +127,11 @@ public class DefaultStandaloneManagedSol
SAXException {
return defaultServer.updateIndex(indexName, ais);
}
+
+ @Override
+ public IndexMetadata updateIndex(String indexName, ArchiveInputStream ais,
String archiveCoreName) throws IOException,
+
SAXException {
+ return defaultServer.updateIndex(indexName, ais, archiveCoreName);
+ }
}
\ No newline at end of file
Modified:
incubator/stanbol/trunk/commons/solr/managed/src/main/java/org/apache/stanbol/commons/solr/managed/standalone/StandaloneManagedSolrServer.java
URL:
http://svn.apache.org/viewvc/incubator/stanbol/trunk/commons/solr/managed/src/main/java/org/apache/stanbol/commons/solr/managed/standalone/StandaloneManagedSolrServer.java?rev=1305098&r1=1305097&r2=1305098&view=diff
==============================================================================
---
incubator/stanbol/trunk/commons/solr/managed/src/main/java/org/apache/stanbol/commons/solr/managed/standalone/StandaloneManagedSolrServer.java
(original)
+++
incubator/stanbol/trunk/commons/solr/managed/src/main/java/org/apache/stanbol/commons/solr/managed/standalone/StandaloneManagedSolrServer.java
Sun Mar 25 19:24:08 2012
@@ -340,7 +340,13 @@ public class StandaloneManagedSolrServer
@Override
public IndexMetadata updateIndex(String name, ArchiveInputStream ais)
throws IOException {
- if(name == null || name.isEmpty()){
+ return updateIndex(name, ais, null);
+ }
+
+ @Override
+ public IndexMetadata updateIndex(String name, ArchiveInputStream ais,
String archiveCoreName) throws IOException {
+
+ if (name == null || name.isEmpty()) {
throw new IllegalArgumentException("The parsed index name MUST NOT
be NULL nor empty!");
}
IndexMetadata metadata = new IndexMetadata();
@@ -348,6 +354,9 @@ public class StandaloneManagedSolrServer
metadata.setServerName(DEFAULT_SERVER_NAME);
metadata.setSynchronized(false);
metadata.setState(ManagedIndexState.ACTIVE);
+ if (archiveCoreName != null) {
+ metadata.setArchive(archiveCoreName);
+ }
return updateCore(metadata, ais);
}