You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by an...@apache.org on 2014/09/02 23:00:32 UTC

svn commit: r1622121 - in /lucene/dev/trunk/solr: ./ core/src/test/org/apache/solr/cloud/ solrj/src/java/org/apache/solr/client/solrj/request/

Author: anshum
Date: Tue Sep  2 21:00:31 2014
New Revision: 1622121

URL: http://svn.apache.org/r1622121
Log:
SOLR-6073: Deprecate helper methods for CollectionsAPI SolrJ calls. Move towards using builder design for the calls.

Modified:
    lucene/dev/trunk/solr/CHANGES.txt
    lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/AliasIntegrationTest.java
    lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/CollectionsAPIAsyncDistributedZkTest.java
    lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/CollectionsAPIDistributedZkTest.java
    lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/MultiThreadedOCPTest.java
    lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/SharedFSAutoReplicaFailoverTest.java
    lucene/dev/trunk/solr/solrj/src/java/org/apache/solr/client/solrj/request/CollectionAdminRequest.java

Modified: lucene/dev/trunk/solr/CHANGES.txt
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/CHANGES.txt?rev=1622121&r1=1622120&r2=1622121&view=diff
==============================================================================
--- lucene/dev/trunk/solr/CHANGES.txt (original)
+++ lucene/dev/trunk/solr/CHANGES.txt Tue Sep  2 21:00:31 2014
@@ -55,6 +55,11 @@ Upgrading from Solr 4.x
   the "suggestions" subsection, and now are directly under "spellcheck".
   See SOLR-3029 for more information.
 
+* The CollectionsAPI SolrJ calls createCollection(), reloadCollection(),
+  deleteCollection(), requestStatus(), createShard(), splitShard(), deleteShard(),
+  createAlias() and deleteAlias() which were deprecated in 4.11 have been removed.
+  The new usage involves a builder style construction of the call.
+
 Detailed Change List
 ----------------------
 
@@ -97,6 +102,9 @@ Other Changes
   removes "experimental" warning from two places: replication handler details
   command and DataImportHandler responses. (ehatcher)
 
+* SOLR-6073: Remove helper methods from CollectionsRequest (SolrJ) for CollectionsAPI
+  calls and move to a builder design for the same. (Anshum Gupta)
+
 ==================  4.11.0 =================
 
 Consult the LUCENE_CHANGES.txt file for additional, low level, changes in this release
@@ -110,6 +118,13 @@ Apache UIMA 2.3.1
 Apache ZooKeeper 3.4.6
 Noggit 0.6
 
+Upgrading from Solr 4.10
+----------------------
+* The CollectionsAPI SolrJ calls createCollection(), reloadCollection(),
+  deleteCollection(), requestStatus(), createShard(), splitShard(), deleteShard(),
+  createAlias() and deleteAlias() have been deprecated. The new usage involves a
+  builder style construction of the call.
+
 Detailed Change List
 ----------------------
 
@@ -157,7 +172,8 @@ Other Changes
 
 * SOLR-6445: Upgrade Noggit to verion 0.6 to support more flexible JSON input (Noble Paul , Yonik Seeley)
 
-
+* SOLR-6073: Remove helper methods from CollectionsRequest (SolrJ) for CollectionsAPI
+  calls and move to a builder design for the same. (Anshum Gupta)
 ==================  4.10.0 =================
 
 Consult the LUCENE_CHANGES.txt file for additional, low level, changes in this release

Modified: lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/AliasIntegrationTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/AliasIntegrationTest.java?rev=1622121&r1=1622120&r2=1622121&view=diff
==============================================================================
--- lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/AliasIntegrationTest.java (original)
+++ lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/AliasIntegrationTest.java Tue Sep  2 21:00:31 2014
@@ -29,6 +29,8 @@ import org.apache.solr.client.solrj.embe
 import org.apache.solr.client.solrj.impl.CloudSolrServer;
 import org.apache.solr.client.solrj.impl.HttpSolrServer;
 import org.apache.solr.client.solrj.request.CollectionAdminRequest;
+import org.apache.solr.client.solrj.request.CollectionAdminRequest.CreateAlias;
+import org.apache.solr.client.solrj.request.CollectionAdminRequest.DeleteAlias;
 import org.apache.solr.client.solrj.request.QueryRequest;
 import org.apache.solr.client.solrj.request.UpdateRequest;
 import org.apache.solr.client.solrj.response.QueryResponse;
@@ -265,7 +267,10 @@ public class AliasIntegrationTest extend
       request.setPath("/admin/collections");
       server.request(request);
     } else {
-      CollectionAdminRequest.CreateAlias.createAlias(alias, collections, server);
+      CreateAlias request = new CreateAlias();
+      request.setCollectionName(alias);
+      request.setAliasedCollections(collections);
+      request.process(server);
     }
     server.shutdown();
   }
@@ -282,7 +287,9 @@ public class AliasIntegrationTest extend
       request.setPath("/admin/collections");
       server.request(request);
     } else {
-      CollectionAdminRequest.deleteAlias(alias,server);
+      DeleteAlias request = new DeleteAlias();
+      request.setCollectionName(alias);
+      request.process(server);
     }
     server.shutdown();
   }

Modified: lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/CollectionsAPIAsyncDistributedZkTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/CollectionsAPIAsyncDistributedZkTest.java?rev=1622121&r1=1622120&r2=1622121&view=diff
==============================================================================
--- lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/CollectionsAPIAsyncDistributedZkTest.java (original)
+++ lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/CollectionsAPIAsyncDistributedZkTest.java Tue Sep  2 21:00:31 2014
@@ -22,6 +22,9 @@ import org.apache.solr.client.solrj.Solr
 import org.apache.solr.client.solrj.SolrServerException;
 import org.apache.solr.client.solrj.impl.HttpSolrServer;
 import org.apache.solr.client.solrj.request.CollectionAdminRequest;
+import org.apache.solr.client.solrj.request.CollectionAdminRequest.Create;
+import org.apache.solr.client.solrj.request.CollectionAdminRequest.RequestStatus;
+import org.apache.solr.client.solrj.request.CollectionAdminRequest.SplitShard;
 import org.apache.solr.client.solrj.response.CollectionAdminResponse;
 import org.apache.solr.common.util.NamedList;
 import org.apache.solr.update.DirectUpdateHandler2;
@@ -67,14 +70,25 @@ public class CollectionsAPIAsyncDistribu
 
   private void testSolrJAPICalls() throws Exception {
     SolrServer server = createNewSolrServer("", getBaseUrl((HttpSolrServer) clients.get(0)));
-    CollectionAdminRequest.createCollection("testasynccollectioncreation", 1, "conf1", server, "1001");
-    String state = null;
 
-    state = getRequestStateAfterCompletion("1001", MAX_TIMEOUT_SECONDS, server);
+    Create createCollectionRequest = new Create();
+    createCollectionRequest.setCollectionName("testasynccollectioncreation");
+    createCollectionRequest.setNumShards(1);
+    createCollectionRequest.setConfigName("conf1");
+    createCollectionRequest.setAsyncId("1001");
+    createCollectionRequest.process(server);
+
+    String state = getRequestStateAfterCompletion("1001", MAX_TIMEOUT_SECONDS, server);
 
     assertEquals("CreateCollection task did not complete!", "completed", state);
 
-    CollectionAdminRequest.createCollection("testasynccollectioncreation", 1, "conf1", server, "1002");
+
+    createCollectionRequest = new Create();
+    createCollectionRequest.setCollectionName("testasynccollectioncreation");
+    createCollectionRequest.setNumShards(1);
+    createCollectionRequest.setConfigName("conf1");
+    createCollectionRequest.setAsyncId("1002");
+    createCollectionRequest.process(server);
 
     state = getRequestStateAfterCompletion("1002", MAX_TIMEOUT_SECONDS, server);
 
@@ -88,7 +102,12 @@ public class CollectionsAPIAsyncDistribu
     state = getRequestStateAfterCompletion("1003", MAX_TIMEOUT_SECONDS, server);
     assertEquals("Add replica did not complete", "completed", state);
 
-    CollectionAdminRequest.splitShard("testasynccollectioncreation", "shard1", server, "1004");
+
+    SplitShard splitShardRequest = new SplitShard();
+    splitShardRequest.setCollectionName("testasynccollectioncreation");
+    splitShardRequest.setShardName("shard1");
+    splitShardRequest.setAsyncId("1004");
+    splitShardRequest.process(server);
 
     state = getRequestStateAfterCompletion("1004", MAX_TIMEOUT_SECONDS * 2, server);
 
@@ -111,7 +130,9 @@ public class CollectionsAPIAsyncDistribu
   }
 
   private String getRequestState(String requestId, SolrServer server) throws IOException, SolrServerException {
-    CollectionAdminResponse response = CollectionAdminRequest.requestStatus(requestId, server);
+    RequestStatus request = new RequestStatus();
+    request.setRequestId(requestId);
+    CollectionAdminResponse response = request.process(server);
     NamedList innerResponse = (NamedList) response.getResponse().get("status");
     return (String) innerResponse.get("state");
   }

Modified: lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/CollectionsAPIDistributedZkTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/CollectionsAPIDistributedZkTest.java?rev=1622121&r1=1622120&r2=1622121&view=diff
==============================================================================
--- lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/CollectionsAPIDistributedZkTest.java (original)
+++ lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/CollectionsAPIDistributedZkTest.java Tue Sep  2 21:00:31 2014
@@ -255,10 +255,14 @@ public class CollectionsAPIDistributedZk
     Map<String, NamedList<Integer>> coresStatus;
     Map<String, NamedList<Integer>> nodesStatus;
 
-    response = CollectionAdminRequest.createCollection("solrj_collection",
-                                                       2, 2, null,
-                                                       null, "conf1", "myOwnField",
-                                                       server);
+    CollectionAdminRequest.Create createCollectionRequest = new CollectionAdminRequest.Create();
+    createCollectionRequest.setCollectionName("solrj_collection");
+    createCollectionRequest.setNumShards(2);
+    createCollectionRequest.setReplicationFactor(2);
+    createCollectionRequest.setConfigName("conf1");
+    createCollectionRequest.setRouterField("myOwnField");
+    response = createCollectionRequest.process(server);
+
     assertEquals(0, response.getStatus());
     assertTrue(response.isSuccess());
     coresStatus = response.getCollectionCoresStatus();
@@ -269,59 +273,104 @@ public class CollectionsAPIDistributedZk
       assertTrue(status.get("QTime") > 0);
     }
 
-    response = CollectionAdminRequest.createCollection("solrj_implicit",
-                                                       "shardA,shardB", "conf1", server);
+    // TODO: This test tries to validates defaulting to implicit router.
+    createCollectionRequest = new CollectionAdminRequest.Create();
+    createCollectionRequest.setCollectionName("solrj_implicit");
+    createCollectionRequest.setShards("shardA,shardB");
+    createCollectionRequest.setConfigName("conf1");
+    createCollectionRequest.setRouterName("implicit");
+    response = createCollectionRequest.process(server);
+
     assertEquals(0, response.getStatus());
     assertTrue(response.isSuccess());
     coresStatus = response.getCollectionCoresStatus();
     assertEquals(2, coresStatus.size());
 
-    response = CollectionAdminRequest.createShard("solrj_implicit", "shardC", server);
+    CollectionAdminRequest.CreateShard createShardRequest = new CollectionAdminRequest
+        .CreateShard();
+    createShardRequest.setCollectionName("solrj_implicit");
+    createShardRequest.setShardName("shardC");
+    response = createShardRequest.process(server);
+
     assertEquals(0, response.getStatus());
     assertTrue(response.isSuccess());
     coresStatus = response.getCollectionCoresStatus();
     assertEquals(1, coresStatus.size());
     assertEquals(0, (int) coresStatus.get("solrj_implicit_shardC_replica1").get("status"));
 
-    response = CollectionAdminRequest.deleteShard("solrj_implicit", "shardC", server);
+    CollectionAdminRequest.DeleteShard deleteShardRequest = new CollectionAdminRequest
+        .DeleteShard();
+    deleteShardRequest.setCollectionName("solrj_implicit");
+    deleteShardRequest.setShardName("shardC");
+    response = deleteShardRequest.process(server);
+
     assertEquals(0, response.getStatus());
     assertTrue(response.isSuccess());
     nodesStatus = response.getCollectionNodesStatus();
     assertEquals(1, nodesStatus.size());
 
-    response = CollectionAdminRequest.deleteCollection("solrj_implicit", server);
+    CollectionAdminRequest.Delete deleteCollectionRequest = new CollectionAdminRequest.Delete();
+    deleteCollectionRequest.setCollectionName("solrj_implicit");
+    response = deleteCollectionRequest.process(server);
+
     assertEquals(0, response.getStatus());
     assertTrue(response.isSuccess());
     nodesStatus = response.getCollectionNodesStatus();
     assertEquals(2, nodesStatus.size());
 
-    response = CollectionAdminRequest.createCollection("conf1", 4, "conf1", server);
+    createCollectionRequest = new CollectionAdminRequest.Create();
+    createCollectionRequest.setCollectionName("conf1");
+    createCollectionRequest.setNumShards(4);
+    createCollectionRequest.setConfigName("conf1");
+    response = createCollectionRequest.process(server);
+
     assertEquals(0, response.getStatus());
     assertTrue(response.isSuccess());
 
-    response = CollectionAdminRequest.reloadCollection("conf1", server);
+    CollectionAdminRequest.Reload reloadCollectionRequest = new CollectionAdminRequest.Reload();
+    reloadCollectionRequest.setCollectionName("conf1");
+    response = reloadCollectionRequest.process(server);
+
     assertEquals(0, response.getStatus());
 
-    response = CollectionAdminRequest.createAlias("solrj_alias", "conf1,solrj_collection", server);
+    CollectionAdminRequest.CreateAlias createAliasRequest = new CollectionAdminRequest
+        .CreateAlias();
+    createAliasRequest.setCollectionName("solrj_alias");
+    createAliasRequest.setAliasedCollections("conf1,solrj_collection");
+    response = createAliasRequest.process(server);
+
     assertEquals(0, response.getStatus());
 
-    response = CollectionAdminRequest.deleteAlias("solrj_alias", server);
+    CollectionAdminRequest.DeleteAlias deleteAliasRequest = new CollectionAdminRequest.DeleteAlias();
+    deleteAliasRequest.setCollectionName("solrj_alias");
+    deleteAliasRequest.process(server);
+
     assertEquals(0, response.getStatus());
 
-    response = CollectionAdminRequest.splitShard("conf1", "shard1", server);
+    CollectionAdminRequest.SplitShard splitShardRequest = new CollectionAdminRequest.SplitShard();
+    splitShardRequest.setCollectionName("conf1");
+    splitShardRequest.setShardName("shard1");
+    response = splitShardRequest.process(server);
+
     assertEquals(0, response.getStatus());
     assertTrue(response.isSuccess());
     coresStatus = response.getCollectionCoresStatus();
     assertEquals(0, (int) coresStatus.get("conf1_shard1_0_replica1").get("status"));
     assertEquals(0, (int) coresStatus.get("conf1_shard1_0_replica1").get("status"));
 
-    response = CollectionAdminRequest.deleteCollection("conf1", server);
+    deleteCollectionRequest = new CollectionAdminRequest.Delete();
+    deleteCollectionRequest.setCollectionName("conf1");
+    response = deleteCollectionRequest.process(server);
+
     assertEquals(0, response.getStatus());
     nodesStatus = response.getCollectionNodesStatus();
     assertTrue(response.isSuccess());
     assertEquals(4, nodesStatus.size());
 
-    response = CollectionAdminRequest.deleteCollection("solrj_collection", server);
+    deleteCollectionRequest = new CollectionAdminRequest.Delete();
+    deleteCollectionRequest.setCollectionName("solrj_collection");
+    deleteCollectionRequest.process(server);
+
     assertEquals(0, response.getStatus());
     nodesStatus = response.getCollectionNodesStatus();
     assertTrue(response.isSuccess());
@@ -470,7 +519,6 @@ public class CollectionsAPIDistributedZk
     request = new QueryRequest(params);
     request.setPath("/admin/collections");
     gotExp = false;
-    resp = null;
     try {
       resp = createNewSolrServer("", baseUrl).request(request);
     } catch (SolrException e) {

Modified: lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/MultiThreadedOCPTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/MultiThreadedOCPTest.java?rev=1622121&r1=1622120&r2=1622121&view=diff
==============================================================================
--- lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/MultiThreadedOCPTest.java (original)
+++ lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/MultiThreadedOCPTest.java Tue Sep  2 21:00:31 2014
@@ -21,7 +21,9 @@ import org.apache.solr.client.solrj.Solr
 import org.apache.solr.client.solrj.SolrServer;
 import org.apache.solr.client.solrj.SolrServerException;
 import org.apache.solr.client.solrj.impl.HttpSolrServer;
-import org.apache.solr.client.solrj.request.CollectionAdminRequest;
+import org.apache.solr.client.solrj.request.CollectionAdminRequest.Create;
+import org.apache.solr.client.solrj.request.CollectionAdminRequest.RequestStatus;
+import org.apache.solr.client.solrj.request.CollectionAdminRequest.SplitShard;
 import org.apache.solr.client.solrj.request.QueryRequest;
 import org.apache.solr.client.solrj.response.CollectionAdminResponse;
 import org.apache.solr.common.params.CollectionParams;
@@ -77,7 +79,12 @@ public class MultiThreadedOCPTest extend
     SolrServer server = createNewSolrServer("", getBaseUrl((HttpSolrServer) clients.get(0)));
 
     for(int i = 1 ; i <= NUM_COLLECTIONS ; i++) {
-      CollectionAdminRequest.createCollection("ocptest" + i, 4, "conf1", server, i + "");
+      Create createCollectionRequest = new Create();
+      createCollectionRequest.setCollectionName("ocptest" + i);
+      createCollectionRequest.setNumShards(4);
+      createCollectionRequest.setConfigName("conf1");
+      createCollectionRequest.setAsyncId(String.valueOf(i));
+      createCollectionRequest.process(server);
     }
 
     boolean pass = false;
@@ -107,10 +114,24 @@ public class MultiThreadedOCPTest extend
 
   private void testTaskExclusivity() throws IOException, SolrServerException {
     SolrServer server = createNewSolrServer("", getBaseUrl((HttpSolrServer) clients.get(0)));
-    CollectionAdminRequest.createCollection("ocptest_shardsplit", 4, "conf1", server, "1000");
-
-    CollectionAdminRequest.splitShard("ocptest_shardsplit", SHARD1, server, "1001");
-    CollectionAdminRequest.splitShard("ocptest_shardsplit", SHARD2, server, "1002");
+    Create createCollectionRequest = new Create();
+    createCollectionRequest.setCollectionName("ocptest_shardsplit");
+    createCollectionRequest.setNumShards(4);
+    createCollectionRequest.setConfigName("conf1");
+    createCollectionRequest.setAsyncId("1000");
+    createCollectionRequest.process(server);
+
+    SplitShard splitShardRequest = new SplitShard();
+    splitShardRequest.setCollectionName("ocptest_shardsplit");
+    splitShardRequest.setShardName(SHARD1);
+    splitShardRequest.setAsyncId("1001");
+    splitShardRequest.process(server);
+
+    splitShardRequest = new SplitShard();
+    splitShardRequest.setCollectionName("ocptest_shardsplit");
+    splitShardRequest.setShardName(SHARD2);
+    splitShardRequest.setAsyncId("1002");
+    splitShardRequest.process(server);
 
     int iterations = 0;
     while(true) {
@@ -147,13 +168,32 @@ public class MultiThreadedOCPTest extend
 
   private void testDeduplicationOfSubmittedTasks() throws IOException, SolrServerException {
     SolrServer server = createNewSolrServer("", getBaseUrl((HttpSolrServer) clients.get(0)));
-    CollectionAdminRequest.createCollection("ocptest_shardsplit2", 4, "conf1", server, "3000");
-
-    CollectionAdminRequest.splitShard("ocptest_shardsplit2", SHARD1, server, "3001");
-    CollectionAdminRequest.splitShard("ocptest_shardsplit2", SHARD2, server, "3002");
+    Create createCollectionRequest = new Create();
+    createCollectionRequest.setCollectionName("ocptest_shardsplit2");
+    createCollectionRequest.setNumShards(4);
+    createCollectionRequest.setConfigName("conf1");
+    createCollectionRequest.setAsyncId("3000");
+    createCollectionRequest.process(server);
+
+    SplitShard splitShardRequest = new SplitShard();
+    splitShardRequest.setCollectionName("ocptest_shardsplit2");
+    splitShardRequest.setShardName(SHARD1);
+    splitShardRequest.setAsyncId("3001");
+    splitShardRequest.process(server);
+
+    splitShardRequest = new SplitShard();
+    splitShardRequest.setCollectionName("ocptest_shardsplit2");
+    splitShardRequest.setShardName(SHARD2);
+    splitShardRequest.setAsyncId("3002");
+    splitShardRequest.process(server);
 
     // Now submit another task with the same id. At this time, hopefully the previous 3002 should still be in the queue.
-    CollectionAdminResponse response = CollectionAdminRequest.splitShard("ocptest_shardsplit2", SHARD1, server, "3002");
+    splitShardRequest = new SplitShard();
+    splitShardRequest.setCollectionName("ocptest_shardsplit2");
+    splitShardRequest.setShardName(SHARD1);
+    splitShardRequest.setAsyncId("3002");
+    CollectionAdminResponse response = splitShardRequest.process(server);
+
     NamedList r = response.getResponse();
     assertEquals("Duplicate request was supposed to exist but wasn't found. De-duplication of submitted task failed.",
         "Task with the same requestid already exists.", r.get("error"));
@@ -185,7 +225,11 @@ public class MultiThreadedOCPTest extend
     try {
 
       SolrServer server = createNewSolrServer("", getBaseUrl((HttpSolrServer) clients.get(0)));
-      CollectionAdminRequest.splitShard("collection1", SHARD1, server, "2000");
+      SplitShard splitShardRequest = new SplitShard();
+      splitShardRequest.setCollectionName("collection1");
+      splitShardRequest.setShardName(SHARD1);
+      splitShardRequest.setAsyncId("2000");
+      splitShardRequest.process(server);
 
       String state = getRequestState("2000", server);
       while (state.equals("submitted")) {
@@ -246,7 +290,10 @@ public class MultiThreadedOCPTest extend
   }
 
   private String getRequestState(String requestId, SolrServer server) throws IOException, SolrServerException {
-    CollectionAdminResponse response = CollectionAdminRequest.requestStatus(requestId, server);
+    RequestStatus requestStatusRequest = new RequestStatus();
+    requestStatusRequest.setRequestId(requestId);
+    CollectionAdminResponse response = requestStatusRequest.process(server);
+
     NamedList innerResponse = (NamedList) response.getResponse().get("status");
     return (String) innerResponse.get("state");
   }

Modified: lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/SharedFSAutoReplicaFailoverTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/SharedFSAutoReplicaFailoverTest.java?rev=1622121&r1=1622120&r2=1622121&view=diff
==============================================================================
--- lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/SharedFSAutoReplicaFailoverTest.java (original)
+++ lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/SharedFSAutoReplicaFailoverTest.java Tue Sep  2 21:00:31 2014
@@ -32,6 +32,7 @@ import org.apache.lucene.util.LuceneTest
 import org.apache.lucene.util.LuceneTestCase.Nightly;
 import org.apache.solr.SolrTestCaseJ4.SuppressSSL;
 import org.apache.solr.client.solrj.request.CollectionAdminRequest;
+import org.apache.solr.client.solrj.request.CollectionAdminRequest.Create;
 import org.apache.solr.client.solrj.response.CollectionAdminResponse;
 import org.apache.solr.cloud.hdfs.HdfsTestUtil;
 import org.apache.solr.common.cloud.ClusterStateUtil;
@@ -113,15 +114,31 @@ public class SharedFSAutoReplicaFailover
   // serially
   private void testBasics() throws Exception {
     String collection1 = "solrj_collection";
-    CollectionAdminResponse response = CollectionAdminRequest.createCollection(collection1, 2,
-        2, 2, null, "conf1", "myOwnField", true, cloudClient);
+    Create createCollectionRequest = new Create();
+    createCollectionRequest.setCollectionName(collection1);
+    createCollectionRequest.setNumShards(2);
+    createCollectionRequest.setReplicationFactor(2);
+    createCollectionRequest.setMaxShardsPerNode(2);
+    createCollectionRequest.setConfigName("conf1");
+    createCollectionRequest.setRouterField("myOwnField");
+    createCollectionRequest.setAutoAddReplicas(true);
+    CollectionAdminResponse response = createCollectionRequest.process(cloudClient);
+
     assertEquals(0, response.getStatus());
     assertTrue(response.isSuccess());
     waitForRecoveriesToFinish(collection1, false);
     
     String collection2 = "solrj_collection2";
-    CollectionAdminResponse response2 = CollectionAdminRequest.createCollection(collection2, 2,
-        2, 2, null, "conf1", "myOwnField", false, cloudClient);
+    createCollectionRequest = new Create();
+    createCollectionRequest.setCollectionName(collection2);
+    createCollectionRequest.setNumShards(2);
+    createCollectionRequest.setReplicationFactor(2);
+    createCollectionRequest.setMaxShardsPerNode(2);
+    createCollectionRequest.setConfigName("conf1");
+    createCollectionRequest.setRouterField("myOwnField");
+    createCollectionRequest.setAutoAddReplicas(false);
+    CollectionAdminResponse response2 = createCollectionRequest.process(getCommonCloudSolrServer());
+
     assertEquals(0, response2.getStatus());
     assertTrue(response2.isSuccess());
     

Modified: lucene/dev/trunk/solr/solrj/src/java/org/apache/solr/client/solrj/request/CollectionAdminRequest.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/solrj/src/java/org/apache/solr/client/solrj/request/CollectionAdminRequest.java?rev=1622121&r1=1622120&r2=1622121&view=diff
==============================================================================
--- lucene/dev/trunk/solr/solrj/src/java/org/apache/solr/client/solrj/request/CollectionAdminRequest.java (original)
+++ lucene/dev/trunk/solr/solrj/src/java/org/apache/solr/client/solrj/request/CollectionAdminRequest.java Tue Sep  2 21:00:31 2014
@@ -213,6 +213,12 @@ public class CollectionAdminRequest exte
     public String getRequestId() { return this.requestId; }
 
     @Override
+    public void setAsyncId(String asyncId) {
+      throw new SolrException(SolrException.ErrorCode.BAD_REQUEST, "You can not set async id for " +
+          "a REQUESTSTATUS call. Try setRequestId()." );
+    }
+
+    @Override
     public SolrParams getParams() {
       ModifiableSolrParams params = (ModifiableSolrParams) super.getParams();
       params.set("requestid", requestId);
@@ -375,235 +381,4 @@ public class CollectionAdminRequest exte
     res.setElapsedTime(endTime - startTime);
     return res;
   }
-
-  //---------------------------------------------------------------------------------------
-  //
-  //---------------------------------------------------------------------------------------
-
-  // creates collection using a compositeId router
-  public static CollectionAdminResponse createCollection( String name,
-                                                          Integer shards, Integer repl, Integer maxShards,
-                                                          String nodeSet,
-                                                          String conf,
-                                                          String routerField,
-                                                          SolrServer server) throws SolrServerException, IOException
-  {
-    return createCollection(name, shards, repl, maxShards, nodeSet, conf, routerField, server, null);
-  }
-  
-  // creates collection using a compositeId router
-  public static CollectionAdminResponse createCollection( String name,
-                                                          Integer shards, Integer repl, Integer maxShards,
-                                                          String nodeSet,
-                                                          String conf,
-                                                          String routerField,
-                                                          Boolean autoAddReplicas,
-                                                          SolrServer server) throws SolrServerException, IOException
-  {
-    Create req = new Create();
-    req.setCollectionName(name);
-    req.setRouterName("compositeId");
-    req.setNumShards(shards);
-    req.setReplicationFactor(repl);
-    req.setMaxShardsPerNode(maxShards);
-    req.setCreateNodeSet(nodeSet);
-    req.setConfigName(conf);
-    req.setRouterField(routerField);
-    req.setAutoAddReplicas(autoAddReplicas);
-    return req.process( server );
-  }
-
-  // creates collection using a compositeId router
-  public static CollectionAdminResponse createCollection( String name,
-                                                          Integer shards, Integer repl, Integer maxShards,
-                                                          String nodeSet,
-                                                          String conf,
-                                                          String routerField,
-                                                          SolrServer server,
-                                                          String asyncId) throws SolrServerException, IOException
-  {
-    Create req = new Create();
-    req.setCollectionName(name);
-    req.setRouterName("compositeId");
-    req.setNumShards(shards);
-    req.setReplicationFactor(repl);
-    req.setMaxShardsPerNode(maxShards);
-    req.setCreateNodeSet(nodeSet);
-    req.setConfigName(conf);
-    req.setRouterField(routerField);
-    req.setAsyncId(asyncId);
-    return req.process( server );
-  }
-
-  public static CollectionAdminResponse createCollection(String name, Integer shards,
-                                                        String conf,
-                                                        SolrServer server) throws SolrServerException, IOException {
-    return createCollection(name, shards, conf, server, null);
-  }
-
-  public static CollectionAdminResponse createCollection( String name,
-                                                          Integer shards, String conf,
-                                                          SolrServer server,
-                                                          String asyncId) throws SolrServerException, IOException
-  {
-    Create req = new Create();
-    req.setCollectionName(name);
-    req.setRouterName("compositeId");
-    req.setNumShards(shards);
-    req.setConfigName(conf);
-    req.setAsyncId(asyncId);
-    return req.process( server );
-  }
-
-  public static CollectionAdminResponse createCollection(String name,
-                                                         String shards, Integer repl, Integer maxShards,
-                                                         String nodeSet,
-                                                         String conf,
-                                                         String routerField,
-                                                         SolrServer server) throws SolrServerException, IOException {
-    return createCollection(name, shards, repl, maxShards, nodeSet, conf, routerField, server, null);
-  }
-
-  // creates a collection using an implicit router
-  public static CollectionAdminResponse createCollection( String name,
-                                                          String shards, Integer repl, Integer maxShards,
-                                                          String nodeSet,
-                                                          String conf,
-                                                          String routerField,
-                                                          SolrServer server,
-                                                          String asyncId) throws SolrServerException, IOException
-  {
-    Create req = new Create();
-    req.setCollectionName(name);
-    req.setRouterName("implicit");
-    req.setShards(shards);
-    req.setReplicationFactor(repl);
-    req.setMaxShardsPerNode(maxShards);
-    req.setCreateNodeSet(nodeSet);
-    req.setConfigName(conf);
-    req.setRouterField(routerField);
-    req.setAsyncId(asyncId);
-    return req.process( server );
-  }
-
-  public static CollectionAdminResponse createCollection( String name,
-                                                          String shards, String conf,
-                                                          SolrServer server) throws SolrServerException, IOException
-  {
-    return createCollection(name, shards, conf, server, null);
-  }
-
-  public static CollectionAdminResponse createCollection( String name,
-                                                          String shards, String conf,
-                                                          SolrServer server, String asyncId ) throws SolrServerException, IOException
-  {
-    Create req = new Create();
-    req.setCollectionName(name);
-    req.setRouterName("implicit");
-    req.setShards(shards);
-    req.setConfigName(conf);
-    req.setAsyncId(asyncId);
-    return req.process( server );
-  }
-
-  public static CollectionAdminResponse reloadCollection( String name, SolrServer server)
-      throws SolrServerException, IOException {
-    return reloadCollection(name, server, null);
-  }
-
-  public static CollectionAdminResponse reloadCollection( String name, SolrServer server, String asyncId )
-      throws SolrServerException, IOException
-  {
-    CollectionAdminRequest req = new Reload();
-    req.setCollectionName(name);
-    req.setAsyncId(asyncId);
-    return req.process( server );
-  }
-
-  public static CollectionAdminResponse deleteCollection( String name, SolrServer server)
-      throws SolrServerException, IOException
-  {
-    return deleteCollection(name, server, null);
-  }
-
-  public static CollectionAdminResponse deleteCollection( String name, SolrServer server,
-                                                          String asyncId)
-      throws SolrServerException, IOException
-  {
-    CollectionAdminRequest req = new Delete();
-    req.setCollectionName(name);
-    req.setAsyncId(asyncId);
-    return req.process( server );
-  }
-
-  public static CollectionAdminResponse requestStatus(String requestId, SolrServer server)
-      throws SolrServerException, IOException {
-    RequestStatus req = new RequestStatus();
-
-    req.setRequestId(requestId);
-    return req.process(server);
-  }
-
-  public static CollectionAdminResponse createShard( String name, String shard, String nodeSet, SolrServer server ) throws SolrServerException, IOException
-  {
-    CreateShard req = new CreateShard();
-    req.setCollectionName(name);
-    req.setShardName(shard);
-    req.setNodeSet(nodeSet);
-    return req.process( server );
-  }
-  public static CollectionAdminResponse createShard( String name, String shard, SolrServer server ) throws SolrServerException, IOException
-  {
-    return createShard(name, shard, null, server);
-  }
-
-  public static CollectionAdminResponse splitShard( String name, String shard, String ranges, SolrServer server ) throws SolrServerException, IOException
-  {
-    return splitShard(name, shard, ranges, server, null);
-  }
-
-  public static CollectionAdminResponse splitShard( String name, String shard, String ranges, SolrServer server,
-                                                    String asyncId) throws SolrServerException, IOException
-  {
-    SplitShard req = new SplitShard();
-    req.setCollectionName(name);
-    req.setShardName(shard);
-    req.setRanges(ranges);
-    req.setAsyncId(asyncId);
-    return req.process( server );
-  }
-
-  public static CollectionAdminResponse splitShard(String name, String shard, SolrServer server)
-      throws SolrServerException, IOException {
-    return splitShard(name, shard, null, server, null);
-  }
-
-  public static CollectionAdminResponse splitShard( String name, String shard, SolrServer server,
-                                                    String asyncId ) throws SolrServerException, IOException
-  {
-    return splitShard(name, shard, null, server, asyncId);
-  }
-
-  public static CollectionAdminResponse deleteShard( String name, String shard, SolrServer server ) throws SolrServerException, IOException
-  {
-    CollectionShardAdminRequest req = new DeleteShard();
-    req.setCollectionName(name);
-    req.setShardName(shard);
-    return req.process( server );
-  }
-
-  public static CollectionAdminResponse createAlias( String name, String collections, SolrServer server ) throws SolrServerException, IOException
-  {
-    CreateAlias req = new CreateAlias();
-    req.setCollectionName(name);
-    req.setAliasedCollections(collections);
-    return req.process( server );
-  }
-
-  public static CollectionAdminResponse deleteAlias( String name, SolrServer server ) throws SolrServerException, IOException
-  {
-    CollectionAdminRequest req = new DeleteAlias();
-    req.setCollectionName(name);
-    return req.process( server );
-  }
 }