Added elasticLastShardRouter

This commit is contained in:
eliaporciani
2019-05-23 11:07:59 +02:00
committed by Tom Page
parent 53072dcaf5
commit 4d16999a77

View File

@@ -0,0 +1,33 @@
package org.alfresco.solr.tracker;
import org.alfresco.solr.client.Acl;
import org.alfresco.solr.client.Node;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
* Routes a document only if the shardInstance matches the provided shardId
*/
public class ElasticLastShardRouter implements DocRouter {
protected final static Logger log = LoggerFactory.getLogger(ExplicitRouter.class);
private final DBIDRouter fallback = new DBIDRouter();
public ElasticLastShardRouter() {
}
@Override
public boolean routeAcl(int shardCount, int shardInstance, Acl acl) {
//all acls go to all shards.
return true;
}
@Override
public boolean routeNode(int shardCount, int shardInstance, Node node) {
int explicitShardId = node.getExplicitShardId();
return explicitShardId == shardInstance;
}
}