From 3917a50c033f0e640a0b1b4e67056188d670bb15 Mon Sep 17 00:00:00 2001 From: wjw Date: Fri, 23 May 2014 15:04:52 +0800 Subject: [PATCH] format code use STS --- .../clients/jedis/JedisSentinelPool.java | 474 +++++++++--------- 1 file changed, 237 insertions(+), 237 deletions(-) diff --git a/src/main/java/redis/clients/jedis/JedisSentinelPool.java b/src/main/java/redis/clients/jedis/JedisSentinelPool.java index 224ca99..72602ee 100644 --- a/src/main/java/redis/clients/jedis/JedisSentinelPool.java +++ b/src/main/java/redis/clients/jedis/JedisSentinelPool.java @@ -14,287 +14,287 @@ import redis.clients.util.Pool; public class JedisSentinelPool extends Pool { - protected GenericObjectPoolConfig poolConfig; + protected GenericObjectPoolConfig poolConfig; - protected int timeout = Protocol.DEFAULT_TIMEOUT; + protected int timeout = Protocol.DEFAULT_TIMEOUT; - protected String password; + protected String password; - protected int database = Protocol.DEFAULT_DATABASE; + protected int database = Protocol.DEFAULT_DATABASE; - protected Set masterListeners = new HashSet(); + protected Set masterListeners = new HashSet(); - protected Logger log = Logger.getLogger(getClass().getName()); + protected Logger log = Logger.getLogger(getClass().getName()); - public JedisSentinelPool(String masterName, Set sentinels, - final GenericObjectPoolConfig poolConfig) { - this(masterName, sentinels, poolConfig, Protocol.DEFAULT_TIMEOUT, null, - Protocol.DEFAULT_DATABASE); - } - - public JedisSentinelPool(String masterName, Set sentinels) { - this(masterName, sentinels, new GenericObjectPoolConfig(), - Protocol.DEFAULT_TIMEOUT, null, Protocol.DEFAULT_DATABASE); - } - - public JedisSentinelPool(String masterName, Set sentinels, - String password) { - this(masterName, sentinels, new GenericObjectPoolConfig(), - Protocol.DEFAULT_TIMEOUT, password); - } - - public JedisSentinelPool(String masterName, Set sentinels, - final GenericObjectPoolConfig poolConfig, int timeout, - final String password) { - this(masterName, sentinels, poolConfig, timeout, password, - Protocol.DEFAULT_DATABASE); - } - - public JedisSentinelPool(String masterName, Set sentinels, - final GenericObjectPoolConfig poolConfig, final int timeout) { - this(masterName, sentinels, poolConfig, timeout, null, - Protocol.DEFAULT_DATABASE); - } - - public JedisSentinelPool(String masterName, Set sentinels, - final GenericObjectPoolConfig poolConfig, final String password) { - this(masterName, sentinels, poolConfig, Protocol.DEFAULT_TIMEOUT, - password); - } - - public JedisSentinelPool(String masterName, Set sentinels, - final GenericObjectPoolConfig poolConfig, int timeout, - final String password, final int database) { - this.poolConfig = poolConfig; - this.timeout = timeout; - this.password = password; - this.database = database; - - HostAndPort master = initSentinels(sentinels, masterName); - initPool(master); - } - - public void returnBrokenResource(final Jedis resource) { - if (resource != null) { - returnBrokenResourceObject(resource); - } - } - - public void returnResource(final Jedis resource) { - if (resource != null) { - resource.resetState(); - returnResourceObject(resource); - } - } - - private volatile HostAndPort currentHostMaster; - - public void destroy() { - for (MasterListener m : masterListeners) { - m.shutdown(); + public JedisSentinelPool(String masterName, Set sentinels, + final GenericObjectPoolConfig poolConfig) { + this(masterName, sentinels, poolConfig, Protocol.DEFAULT_TIMEOUT, null, + Protocol.DEFAULT_DATABASE); } - super.destroy(); - } - - public HostAndPort getCurrentHostMaster() { - return currentHostMaster; - } - - private void initPool(HostAndPort master) { - if (!master.equals(currentHostMaster)) { - currentHostMaster = master; - log.info("Created JedisPool to master at " + master); - initPool(poolConfig, - new JedisFactory(master.getHost(), master.getPort(), - timeout, password, database)); + public JedisSentinelPool(String masterName, Set sentinels) { + this(masterName, sentinels, new GenericObjectPoolConfig(), + Protocol.DEFAULT_TIMEOUT, null, Protocol.DEFAULT_DATABASE); } - } - private HostAndPort initSentinels(Set sentinels, - final String masterName) { + public JedisSentinelPool(String masterName, Set sentinels, + String password) { + this(masterName, sentinels, new GenericObjectPoolConfig(), + Protocol.DEFAULT_TIMEOUT, password); + } - HostAndPort master = null; - boolean running = true; + public JedisSentinelPool(String masterName, Set sentinels, + final GenericObjectPoolConfig poolConfig, int timeout, + final String password) { + this(masterName, sentinels, poolConfig, timeout, password, + Protocol.DEFAULT_DATABASE); + } - outer: while (running) { + public JedisSentinelPool(String masterName, Set sentinels, + final GenericObjectPoolConfig poolConfig, final int timeout) { + this(masterName, sentinels, poolConfig, timeout, null, + Protocol.DEFAULT_DATABASE); + } - log.info("Trying to find master from available Sentinels..."); + public JedisSentinelPool(String masterName, Set sentinels, + final GenericObjectPoolConfig poolConfig, final String password) { + this(masterName, sentinels, poolConfig, Protocol.DEFAULT_TIMEOUT, + password); + } - for (String sentinel : sentinels) { + public JedisSentinelPool(String masterName, Set sentinels, + final GenericObjectPoolConfig poolConfig, int timeout, + final String password, final int database) { + this.poolConfig = poolConfig; + this.timeout = timeout; + this.password = password; + this.database = database; - final HostAndPort hap = toHostAndPort(Arrays.asList(sentinel - .split(":"))); + HostAndPort master = initSentinels(sentinels, masterName); + initPool(master); + } - log.fine("Connecting to Sentinel " + hap); - - try { - Jedis jedis = new Jedis(hap.getHost(), hap.getPort()); - - if (master == null) { - master = toHostAndPort(jedis - .sentinelGetMasterAddrByName(masterName)); - log.fine("Found Redis master at " + master); - jedis.disconnect(); - break outer; - } - } catch (JedisConnectionException e) { - log.warning("Cannot connect to sentinel running @ " + hap - + ". Trying next one."); + public void returnBrokenResource(final Jedis resource) { + if (resource != null) { + returnBrokenResourceObject(resource); } - } - - try { - log.severe("All sentinels down, cannot determine where is " - + masterName + " master is running... sleeping 1000ms."); - Thread.sleep(1000); - } catch (InterruptedException e) { - e.printStackTrace(); - } } - log.info("Redis master running at " + master - + ", starting Sentinel listeners..."); - - for (String sentinel : sentinels) { - final HostAndPort hap = toHostAndPort(Arrays.asList(sentinel - .split(":"))); - MasterListener masterListener = new MasterListener(masterName, - hap.getHost(), hap.getPort()); - masterListeners.add(masterListener); - masterListener.start(); + public void returnResource(final Jedis resource) { + if (resource != null) { + resource.resetState(); + returnResourceObject(resource); + } } - return master; - } + private volatile HostAndPort currentHostMaster; - private HostAndPort toHostAndPort(List getMasterAddrByNameResult) { - String host = getMasterAddrByNameResult.get(0); - int port = Integer.parseInt(getMasterAddrByNameResult.get(1)); + public void destroy() { + for (MasterListener m : masterListeners) { + m.shutdown(); + } - return new HostAndPort(host, port); - } - - protected class JedisPubSubAdapter extends JedisPubSub { - @Override - public void onMessage(String channel, String message) { + super.destroy(); } - @Override - public void onPMessage(String pattern, String channel, String message) { + public HostAndPort getCurrentHostMaster() { + return currentHostMaster; } - @Override - public void onPSubscribe(String pattern, int subscribedChannels) { + private void initPool(HostAndPort master) { + if (!master.equals(currentHostMaster)) { + currentHostMaster = master; + log.info("Created JedisPool to master at " + master); + initPool(poolConfig, + new JedisFactory(master.getHost(), master.getPort(), + timeout, password, database)); + } } - @Override - public void onPUnsubscribe(String pattern, int subscribedChannels) { - } + private HostAndPort initSentinels(Set sentinels, + final String masterName) { - @Override - public void onSubscribe(String channel, int subscribedChannels) { - } + HostAndPort master = null; + boolean running = true; - @Override - public void onUnsubscribe(String channel, int subscribedChannels) { - } - } + outer: while (running) { - protected class MasterListener extends Thread { + log.info("Trying to find master from available Sentinels..."); - protected String masterName; - protected String host; - protected int port; - protected long subscribeRetryWaitTimeMillis = 5000; - protected Jedis j; - protected AtomicBoolean running = new AtomicBoolean(false); + for (String sentinel : sentinels) { - protected MasterListener() { - } + final HostAndPort hap = toHostAndPort(Arrays.asList(sentinel + .split(":"))); - public MasterListener(String masterName, String host, int port) { - this.masterName = masterName; - this.host = host; - this.port = port; - } + log.fine("Connecting to Sentinel " + hap); - public MasterListener(String masterName, String host, int port, - long subscribeRetryWaitTimeMillis) { - this(masterName, host, port); - this.subscribeRetryWaitTimeMillis = subscribeRetryWaitTimeMillis; - } + try { + Jedis jedis = new Jedis(hap.getHost(), hap.getPort()); - public void run() { - - running.set(true); - - while (running.get()) { - - j = new Jedis(host, port); - - try { - j.subscribe(new JedisPubSubAdapter() { - @Override - public void onMessage(String channel, String message) { - log.fine("Sentinel " + host + ":" + port - + " published: " + message + "."); - - String[] switchMasterMsg = message.split(" "); - - if (switchMasterMsg.length > 3) { - - if (masterName.equals(switchMasterMsg[0])) { - initPool(toHostAndPort(Arrays.asList( - switchMasterMsg[3], - switchMasterMsg[4]))); - } else { - log.fine("Ignoring message on +switch-master for master name " - + switchMasterMsg[0] - + ", our master name is " - + masterName); + if (master == null) { + master = toHostAndPort(jedis + .sentinelGetMasterAddrByName(masterName)); + log.fine("Found Redis master at " + master); + jedis.disconnect(); + break outer; + } + } catch (JedisConnectionException e) { + log.warning("Cannot connect to sentinel running @ " + hap + + ". Trying next one."); } - - } else { - log.severe("Invalid message received on Sentinel " - + host - + ":" - + port - + " on channel +switch-master: " - + message); - } } - }, "+switch-master"); - } catch (JedisConnectionException e) { - - if (running.get()) { - log.severe("Lost connection to Sentinel at " + host - + ":" + port - + ". Sleeping 5000ms and retrying."); try { - Thread.sleep(subscribeRetryWaitTimeMillis); - } catch (InterruptedException e1) { - e1.printStackTrace(); + log.severe("All sentinels down, cannot determine where is " + + masterName + " master is running... sleeping 1000ms."); + Thread.sleep(1000); + } catch (InterruptedException e) { + e.printStackTrace(); } - } else { - log.fine("Unsubscribing from Sentinel at " + host + ":" - + port); - } } - } + + log.info("Redis master running at " + master + + ", starting Sentinel listeners..."); + + for (String sentinel : sentinels) { + final HostAndPort hap = toHostAndPort(Arrays.asList(sentinel + .split(":"))); + MasterListener masterListener = new MasterListener(masterName, + hap.getHost(), hap.getPort()); + masterListeners.add(masterListener); + masterListener.start(); + } + + return master; } - public void shutdown() { - try { - log.fine("Shutting down listener on " + host + ":" + port); - running.set(false); - // This isn't good, the Jedis object is not thread safe - j.disconnect(); - } catch (Exception e) { - log.severe("Caught exception while shutting down: " - + e.getMessage()); - } + private HostAndPort toHostAndPort(List getMasterAddrByNameResult) { + String host = getMasterAddrByNameResult.get(0); + int port = Integer.parseInt(getMasterAddrByNameResult.get(1)); + + return new HostAndPort(host, port); + } + + protected class JedisPubSubAdapter extends JedisPubSub { + @Override + public void onMessage(String channel, String message) { + } + + @Override + public void onPMessage(String pattern, String channel, String message) { + } + + @Override + public void onPSubscribe(String pattern, int subscribedChannels) { + } + + @Override + public void onPUnsubscribe(String pattern, int subscribedChannels) { + } + + @Override + public void onSubscribe(String channel, int subscribedChannels) { + } + + @Override + public void onUnsubscribe(String channel, int subscribedChannels) { + } + } + + protected class MasterListener extends Thread { + + protected String masterName; + protected String host; + protected int port; + protected long subscribeRetryWaitTimeMillis = 5000; + protected Jedis j; + protected AtomicBoolean running = new AtomicBoolean(false); + + protected MasterListener() { + } + + public MasterListener(String masterName, String host, int port) { + this.masterName = masterName; + this.host = host; + this.port = port; + } + + public MasterListener(String masterName, String host, int port, + long subscribeRetryWaitTimeMillis) { + this(masterName, host, port); + this.subscribeRetryWaitTimeMillis = subscribeRetryWaitTimeMillis; + } + + public void run() { + + running.set(true); + + while (running.get()) { + + j = new Jedis(host, port); + + try { + j.subscribe(new JedisPubSubAdapter() { + @Override + public void onMessage(String channel, String message) { + log.fine("Sentinel " + host + ":" + port + + " published: " + message + "."); + + String[] switchMasterMsg = message.split(" "); + + if (switchMasterMsg.length > 3) { + + if (masterName.equals(switchMasterMsg[0])) { + initPool(toHostAndPort(Arrays.asList( + switchMasterMsg[3], + switchMasterMsg[4]))); + } else { + log.fine("Ignoring message on +switch-master for master name " + + switchMasterMsg[0] + + ", our master name is " + + masterName); + } + + } else { + log.severe("Invalid message received on Sentinel " + + host + + ":" + + port + + " on channel +switch-master: " + + message); + } + } + }, "+switch-master"); + + } catch (JedisConnectionException e) { + + if (running.get()) { + log.severe("Lost connection to Sentinel at " + host + + ":" + port + + ". Sleeping 5000ms and retrying."); + try { + Thread.sleep(subscribeRetryWaitTimeMillis); + } catch (InterruptedException e1) { + e1.printStackTrace(); + } + } else { + log.fine("Unsubscribing from Sentinel at " + host + ":" + + port); + } + } + } + } + + public void shutdown() { + try { + log.fine("Shutting down listener on " + host + ":" + port); + running.set(false); + // This isn't good, the Jedis object is not thread safe + j.disconnect(); + } catch (Exception e) { + log.severe("Caught exception while shutting down: " + + e.getMessage()); + } + } } - } } \ No newline at end of file