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);
     }
 


Reply via email to