You are viewing a plain text version of this content. The canonical link for it is here.
Posted to solr-commits@lucene.apache.org by ry...@apache.org on 2008/02/03 01:15:35 UTC

svn commit: r617933 - in /lucene/solr/trunk/client/java/solrj: src/org/apache/solr/client/solrj/ src/org/apache/solr/client/solrj/embedded/ src/org/apache/solr/client/solrj/impl/ src/org/apache/solr/client/solrj/request/ test/org/apache/solr/client/sol...

Author: ryan
Date: Sat Feb  2 16:15:33 2008
New Revision: 617933

URL: http://svn.apache.org/viewvc?rev=617933&view=rev
Log:
SOLR-467 -- remove "core" options from solrj

Modified:
    lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/SolrRequest.java
    lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/SolrServer.java
    lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/embedded/EmbeddedSolrServer.java
    lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/impl/CommonsHttpSolrServer.java
    lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/request/MultiCoreRequest.java
    lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/MultiCoreExampleTestBase.java
    lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/MultiCoreEmbeddedTest.java
    lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/MultiCoreExampleJettyTest.java

Modified: lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/SolrRequest.java
URL: http://svn.apache.org/viewvc/lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/SolrRequest.java?rev=617933&r1=617932&r2=617933&view=diff
==============================================================================
--- lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/SolrRequest.java (original)
+++ lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/SolrRequest.java Sat Feb  2 16:15:33 2008
@@ -38,7 +38,6 @@
 
   private METHOD method = METHOD.GET;
   private String path = null;
-  private String core = null;
 
   //---------------------------------------------------------
   //---------------------------------------------------------
@@ -65,15 +64,6 @@
   public void setPath(String path) {
     this.path = path;
   }
-
-  public String getCore() {
-    return core;
-  }
-
-  public void setCore(String core) {
-    this.core = core;
-  }
-
 
   public abstract SolrParams getParams();
   public abstract Collection<ContentStream> getContentStreams() throws IOException;

Modified: lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/SolrServer.java
URL: http://svn.apache.org/viewvc/lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/SolrServer.java?rev=617933&r1=617932&r2=617933&view=diff
==============================================================================
--- lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/SolrServer.java (original)
+++ lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/SolrServer.java Sat Feb  2 16:15:33 2008
@@ -36,8 +36,6 @@
  */
 public abstract class SolrServer 
 {
-  protected String defaultCore = null;
-  
   public UpdateResponse add(Collection<SolrInputDocument> docs, boolean overwrite ) throws SolrServerException, IOException {
     UpdateRequest req = new UpdateRequest();
     req.add(docs);
@@ -96,14 +94,6 @@
 
   public QueryResponse query(SolrParams params) throws SolrServerException {
     return new QueryRequest( params ).process( this );
-  }
-
-  public String getDefaultCore() {
-    return defaultCore;
-  }
-
-  public void setDefaultCore(String defaultCore) {
-    this.defaultCore = defaultCore;
   }
   
   /**

Modified: lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/embedded/EmbeddedSolrServer.java
URL: http://svn.apache.org/viewvc/lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/embedded/EmbeddedSolrServer.java?rev=617933&r1=617932&r2=617933&view=diff
==============================================================================
--- lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/embedded/EmbeddedSolrServer.java (original)
+++ lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/embedded/EmbeddedSolrServer.java Sat Feb  2 16:15:33 2008
@@ -56,22 +56,24 @@
   
   protected final SolrCore core;
   protected final SolrRequestParsers parser;
-  protected boolean useMultiCore;
+  protected final String coreName;  // use MultiCore registry
   
   public EmbeddedSolrServer( SolrCore core )
   {
     this.core = core;
-    this.useMultiCore = false;
+    this.coreName = null;
     this.parser = init();
   }
     
-  public EmbeddedSolrServer()
+  public EmbeddedSolrServer( String coreName )
   {
-    this( null );
-    if( MultiCore.getRegistry().getDefaultCore() == null ) {
-      throw new RuntimeException( "Must initialize multicore if you want to use this" );
+    this.core = null;
+    this.coreName = coreName;
+    SolrCore c = MultiCore.getRegistry().getCore( coreName );
+    if( c == null ) {
+      throw new RuntimeException( "Unknown core: "+coreName );
     }
-    this.useMultiCore = true;
+    this.parser = init();
   }
   
   private SolrRequestParsers init()
@@ -94,32 +96,13 @@
     }
 
     // Check for multicore action
-    SolrCore core = this.core;
     MultiCore multicore = MultiCore.getRegistry();
-    if( useMultiCore ) {
-      String c = getDefaultCore();
-      if( request.getCore() != null ) {
-        c = request.getCore();
-      }
-      if( c != null ) {
-        if( !multicore.isEnabled() ) {
-          throw new SolrException( SolrException.ErrorCode.SERVER_ERROR, 
-              "multicore access is not enabled" );
-        }
-        if( c.length() > 0 ) {
-          core = multicore.getCore( c );
-        }
-        else {
-          core = multicore.getDefaultCore();
-        }
-        if( core == null ) {
-          throw new SolrException( SolrException.ErrorCode.BAD_REQUEST, 
-              "Unknown core: "+c );
-        }
-      }
-      else {
-        throw new SolrException( SolrException.ErrorCode.BAD_REQUEST, 
-            "missing core" );
+    SolrCore core = this.core;
+    if( core == null ) {
+      core = multicore.getCore( coreName );
+      if( core == null ) {
+        throw new SolrException( SolrException.ErrorCode.SERVER_ERROR, 
+            "Unknown core: "+coreName );
       }
     }
 
@@ -143,7 +126,7 @@
       }
       // Perhaps the path is to manage the cores
       if( handler == null &&
-          useMultiCore && 
+          coreName != null && 
           path.equals( multicore.getAdminPath() ) && 
           multicore.isEnabled() ) {
         handler = multicore.getMultiCoreHandler();

Modified: lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/impl/CommonsHttpSolrServer.java
URL: http://svn.apache.org/viewvc/lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/impl/CommonsHttpSolrServer.java?rev=617933&r1=617932&r2=617933&view=diff
==============================================================================
--- lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/impl/CommonsHttpSolrServer.java (original)
+++ lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/impl/CommonsHttpSolrServer.java Sat Feb  2 16:15:33 2008
@@ -142,16 +142,7 @@
     if( path == null || !path.startsWith( "/" ) ) {
       path = "/select";
     }
-    
-    // modify the path for multicore access
-    String core = getDefaultCore();
-    if( request.getCore() != null ) {
-      core= request.getCore();
-    }
-    if( core != null && core.length() > 0 ) {
-      path = "/"+core+path;
-    }
-    
+        
     if( params == null ) {
       params = new ModifiableSolrParams();
     }

Modified: lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/request/MultiCoreRequest.java
URL: http://svn.apache.org/viewvc/lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/request/MultiCoreRequest.java?rev=617933&r1=617932&r2=617933&view=diff
==============================================================================
--- lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/request/MultiCoreRequest.java (original)
+++ lucene/solr/trunk/client/java/solrj/src/org/apache/solr/client/solrj/request/MultiCoreRequest.java Sat Feb  2 16:15:33 2008
@@ -54,18 +54,6 @@
   {
     this.core = v;
   }
-
-  @Override
-  public final void setCore( String v )
-  {
-    throw new UnsupportedOperationException( "MultiCoreRequest does not use a core.");
-  }
-  
-  @Override
-  public final String getCore()
-  {
-    return ""; // force it to invalid core
-  }
   
   //---------------------------------------------------------------------------------------
   //

Modified: lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/MultiCoreExampleTestBase.java
URL: http://svn.apache.org/viewvc/lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/MultiCoreExampleTestBase.java?rev=617933&r1=617932&r2=617933&view=diff
==============================================================================
--- lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/MultiCoreExampleTestBase.java (original)
+++ lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/MultiCoreExampleTestBase.java Sat Feb  2 16:15:33 2008
@@ -23,6 +23,7 @@
 import org.apache.solr.client.solrj.request.UpdateRequest.ACTION;
 import org.apache.solr.client.solrj.response.MultiCoreResponse;
 import org.apache.solr.common.SolrInputDocument;
+import org.apache.solr.core.SolrCore;
 
 
 /**
@@ -37,17 +38,30 @@
   @Override public String getSolrConfigFile() { return getSolrHome()+"core0/conf/solrconfig.xml"; }
   
 
+  @Override
+  protected final SolrServer getSolrServer()
+  {
+    throw new UnsupportedOperationException();
+  }
+  
+  @Override
+  protected final SolrServer createNewSolrServer()
+  {
+    throw new UnsupportedOperationException();
+  }
+
+  protected abstract SolrServer getSolrCore0();
+  protected abstract SolrServer getSolrCore1();
+  protected abstract SolrServer getSolrAdmin();
+  
+
   public void testMultiCore() throws Exception
   {
-    SolrServer solr = getSolrServer();
-    
     UpdateRequest up = new UpdateRequest();
     up.setAction( ACTION.COMMIT, true, true );
-    up.setCore( "core0" );
     up.deleteByQuery( "*:*" );
-    up.process( solr );
-    up.setCore( "core1" );
-    up.process( solr );
+    up.process( getSolrCore0() );
+    up.process( getSolrCore1() );
     up.clear();
     
     // Add something to each core
@@ -56,30 +70,26 @@
     doc.setField( "core0", "yup" );
    
     // Add to core0
-    up.setCore( "core0" );
     up.add( doc );
-    up.process( solr );
+    up.process( getSolrCore0() );
 
     // You can't add it to core1
     try {
-      up.setCore( "core1" );
-      up.process( solr );
+      up.process( getSolrCore1() );
       fail( "Can't add core0 field to core1!" );
     }
     catch( Exception ex ) {}
 
     // Add to core1
-    up.setCore( "core1" );
     doc.setField( "id", "BBB" );
     doc.setField( "core1", "yup" );
     doc.removeField( "core0" );
     up.add( doc );
-    up.process( solr );
+    up.process( getSolrCore1() );
 
     // You can't add it to core1
     try {
-      up.setCore( "core0" );
-      up.process( solr );
+      up.process( getSolrCore0() );
       fail( "Can't add core1 field to core0!" );
     }
     catch( Exception ex ) {}
@@ -87,28 +97,25 @@
     // now Make sure AAA is in 0 and BBB in 1
     SolrQuery q = new SolrQuery();
     QueryRequest r = new QueryRequest( q );
-    r.setCore( "core0" );
     q.setQuery( "id:AAA" );
-    assertEquals( 1, r.process( solr ).getResults().size() );
-    r.setCore( "core1" );
-    assertEquals( 0, r.process( solr ).getResults().size() );
+    assertEquals( 1, r.process( getSolrCore0() ).getResults().size() );
+    assertEquals( 0, r.process( getSolrCore1() ).getResults().size() );
     
     // Now test Changing the default core
-    solr.setDefaultCore( "core0" );
-    assertEquals( 1, solr.query( new SolrQuery( "id:AAA" ) ).getResults().size() );
-    assertEquals( 0, solr.query( new SolrQuery( "id:BBB" ) ).getResults().size() );
-
-    solr.setDefaultCore( "core1" );
-    assertEquals( 0, solr.query( new SolrQuery( "id:AAA" ) ).getResults().size() );
-    assertEquals( 1, solr.query( new SolrQuery( "id:BBB" ) ).getResults().size() );
+    assertEquals( 1, getSolrCore0().query( new SolrQuery( "id:AAA" ) ).getResults().size() );
+    assertEquals( 0, getSolrCore0().query( new SolrQuery( "id:BBB" ) ).getResults().size() );
+
+    assertEquals( 0, getSolrCore1().query( new SolrQuery( "id:AAA" ) ).getResults().size() );
+    assertEquals( 1, getSolrCore1().query( new SolrQuery( "id:BBB" ) ).getResults().size() );
   
     // Now test reloading it should have a newer open time
     String name = "core0";
-    MultiCoreResponse mcr = MultiCoreRequest.getStatus( name, solr );
+    SolrServer coreadmin = getSolrAdmin();
+    MultiCoreResponse mcr = MultiCoreRequest.getStatus( name, coreadmin );
     long before = mcr.getStartTime( name ).getTime();
-    MultiCoreRequest.reloadCore( name, solr );
+    MultiCoreRequest.reloadCore( name, coreadmin );
     
-    mcr = MultiCoreRequest.getStatus( name, solr );
+    mcr = MultiCoreRequest.getStatus( name, coreadmin );
     long after = mcr.getStartTime( name ).getTime();
     assertTrue( "should have more recent time: "+after+","+before, after > before );
   }

Modified: lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/MultiCoreEmbeddedTest.java
URL: http://svn.apache.org/viewvc/lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/MultiCoreEmbeddedTest.java?rev=617933&r1=617932&r2=617933&view=diff
==============================================================================
--- lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/MultiCoreEmbeddedTest.java (original)
+++ lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/MultiCoreEmbeddedTest.java Sat Feb  2 16:15:33 2008
@@ -31,8 +31,6 @@
  */
 public class MultiCoreEmbeddedTest extends MultiCoreExampleTestBase {
 
-  SolrServer server;
-  
   @Override public void setUp() throws Exception 
   {
     super.setUp();
@@ -40,20 +38,23 @@
     File home = new File( getSolrHome() );
     File f = new File( home, "multicore.xml" );
     MultiCore.getRegistry().load( getSolrHome(), f );
-    
-    // setup the server...
-    server = createNewSolrServer();
   }
 
   @Override
-  protected SolrServer getSolrServer()
+  protected SolrServer getSolrCore0()
   {
-    return server;
+    return new EmbeddedSolrServer( "core0" );
   }
 
   @Override
-  protected SolrServer createNewSolrServer()
+  protected SolrServer getSolrCore1()
   {
-    return new EmbeddedSolrServer();
+    return new EmbeddedSolrServer( "core1" );
   }
+
+  @Override
+  protected SolrServer getSolrAdmin()
+  {
+    return new EmbeddedSolrServer( "core0" );
+  } 
 }

Modified: lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/MultiCoreExampleJettyTest.java
URL: http://svn.apache.org/viewvc/lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/MultiCoreExampleJettyTest.java?rev=617933&r1=617932&r2=617933&view=diff
==============================================================================
--- lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/MultiCoreExampleJettyTest.java (original)
+++ lucene/solr/trunk/client/java/solrj/test/org/apache/solr/client/solrj/embedded/MultiCoreExampleJettyTest.java Sat Feb  2 16:15:33 2008
@@ -31,7 +31,6 @@
  */
 public class MultiCoreExampleJettyTest extends MultiCoreExampleTestBase {
 
-  SolrServer server;
   JettySolrRunner jetty;
 
   static final int port = 8984; // not 8983
@@ -44,7 +43,6 @@
     jetty = new JettySolrRunner( context, port );
     jetty.start();
     
-    server = this.createNewSolrServer();
   }
 
   @Override public void tearDown() throws Exception 
@@ -53,18 +51,30 @@
     jetty.stop();  // stop the server
   }
   
+
   @Override
-  protected SolrServer getSolrServer()
+  protected SolrServer getSolrCore0()
   {
-    return server;
+    return createServer( "core0" );
   }
 
   @Override
-  protected SolrServer createNewSolrServer()
+  protected SolrServer getSolrCore1()
+  {
+    return createServer( "core1" );
+  }
+
+  @Override
+  protected SolrServer getSolrAdmin()
+  {
+    return createServer( "" );
+  } 
+  
+  private SolrServer createServer( String name )
   {
     try {
       // setup the server...
-      String url = "http://localhost:"+port+context;
+      String url = "http://localhost:"+port+context+"/"+name;
       CommonsHttpSolrServer s = new CommonsHttpSolrServer( url );
       s.setConnectionTimeout(100); // 1/10th sec
       s.setDefaultMaxConnectionsPerHost(100);