com.despegar.jdbc.galera.policies.MasterSortingNodesPolicy Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of galera-java-client Show documentation
Show all versions of galera-java-client Show documentation
A simple Java client for MariaDB Galera Cluster and Percona XtraDB Cluster. It is designed to be an
alternative to connect JVM app to
MariaDB/Percona galera nodes without HAProxy
package com.despegar.jdbc.galera.policies;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.util.Arrays;
import java.util.List;
/**
* We choose master choosing always the first active node sorted alphabetically
*/
public class MasterSortingNodesPolicy implements ElectionNodePolicy {
private static final Logger LOG = LoggerFactory.getLogger(MasterSortingNodesPolicy.class);
public String chooseNode(List activeNodes) {
String[] nodes = activeNodes.toArray(new String[activeNodes.size()]);
Arrays.sort(nodes);
String master = nodes[0];
LOG.info("Master node selected {}", master);
return master;
}
@Override
public String getName() {
return "MasterSortingNodes";
}
}