Author: suat
Date: Thu Jul 12 06:12:00 2012
New Revision: 1360536
URL: http://svn.apache.org/viewvc?rev=1360536&view=rev
Log:
STANBOL-684: Added controls to check whether the provided cores are managed by
ManagedSolrServerImpl and they are in active state.
Modified:
incubator/stanbol/trunk/commons/solr/managed/src/main/java/org/apache/stanbol/commons/solr/managed/impl/ManagedSolrServerImpl.java
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=1360536&r1=1360535&r2=1360536&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
Thu Jul 12 06:12:00 2012
@@ -1220,6 +1220,15 @@ public class ManagedSolrServerImpl imple
* name of the second core
*/
public void swapCores(String core1, String core2) {
+ if (!(isManagedIndex(core1) && isManagedIndex(core2))) {
+ throw new IllegalArgumentException(String.format(
+ "Both core names (%s,%s) must correspond to a managed index",
core1, core2));
+ }
+ if (!(managedCores.isInState(ManagedIndexState.ACTIVE, core1) &&
managedCores.isInState(
+ ManagedIndexState.ACTIVE, core2))) {
+ throw new IllegalStateException(String.format(
+ "Both cores (%s,%s) should be in ManagedIndexState.ACTIVE
state", core1, core2));
+ }
Object token = new Object();
synchronized (serverInUser) {
serverInUser.add(token);