private Map<Serializable, Serializable> getEntryFromCacheForPattern(final String componentName, final String memberToken) { Map<Serializable, Serializable> retval = new Hashtable<Serializable, Serializable>(); for (GMSCacheable c : cache.keySet()) { if (componentName.equals(c.getComponentName())) { if (memberToken.equals(c.getMemberTokenId())) { retval.put((Serializable) c.getKey(), (Serializable) cache.get(c)); } } } return retval; }
public Map<GMSCacheable, Object> getFromCache(final Object key) { final Map<GMSCacheable, Object> retval = new Hashtable<GMSCacheable, Object>(); for (GMSCacheable c : cache.keySet()) { if (key.equals(c.getComponentName()) || key.equals(c.getMemberTokenId()) || key.equals(c.getKey())) { retval.put(c, cache.get(c)); } } return retval; }
private Map<Serializable, Serializable> getEntryFromCacheForPattern(final String componentName, final String memberToken) { Map<Serializable, Serializable> retval = new Hashtable<Serializable, Serializable>(); for (GMSCacheable c : cache.keySet()) { if (componentName.equals(c.getComponentName())) { if (memberToken.equals(c.getMemberTokenId())) { retval.put((Serializable) c.getKey(), (Serializable) cache.get(c)); } } } return retval; }
public Map<GMSCacheable, Object> getFromCache(final Object key) { final Map<GMSCacheable, Object> retval = new Hashtable<GMSCacheable, Object>(); for (GMSCacheable c : cache.keySet()) { if (key.equals(c.getComponentName()) || key.equals(c.getMemberTokenId()) || key.equals(c.getKey())) { retval.put(c, cache.get(c)); } } return retval; }
public Map<Serializable, Serializable> getAllMemberDetails(final Serializable key) { final Map<Serializable, Serializable> retval = new HashMap<Serializable, Serializable>(); if (isWatchdog()) { return retval; } final Map<GMSCacheable, Object> ret = ctx.getDistributedStateCache().getFromCache(key); for (Map.Entry<GMSCacheable, Object> entry: ret.entrySet()) { GMSCacheable c = entry.getKey(); if (c.getComponentName().equals(MEMBER_DETAILS)) { retval.put(c.getMemberTokenId(), (Serializable) entry.getValue()); } } return retval; }
public Map<Serializable, Serializable> getAllMemberDetails(final Serializable key) { final Map<Serializable, Serializable> retval = new HashMap<Serializable, Serializable>(); if (isWatchdog()) { return retval; } final Map<GMSCacheable, Object> ret = ctx.getDistributedStateCache().getFromCache(key); for (Map.Entry<GMSCacheable, Object> entry: ret.entrySet()) { GMSCacheable c = entry.getKey(); if (c.getComponentName().equals(MEMBER_DETAILS)) { retval.put(c.getMemberTokenId(), (Serializable) entry.getValue()); } } return retval; }
private void removeRecoveryAppointments( final Map<GMSCacheable, Object> fromCache, final String failedMemberToken, final String componentName) throws GMSException { if (isWatchdog()) { return; } final DistributedStateCache dsc = getGMSContext() .getDistributedStateCache(); for (final Map.Entry<GMSCacheable, Object> entry : fromCache.entrySet()) { final GMSCacheable cKey = entry.getKey(); if (cKey.getKey().equals(failedMemberToken) && cKey.getComponentName().equals(componentName) && entry.getValue().toString().startsWith(REC_APPOINTED_STATE)) { if (logger.isLoggable(Level.FINE)){ logger.log(Level.FINE, "remove RecoveryAppointment componentName: " + componentName + " failedMember:" + failedMemberToken + "value=" + entry.getValue().toString()); } dsc.removeFromCache(cKey.getComponentName(), cKey.getMemberTokenId(), (Serializable) cKey.getKey()); } } }
private void removeRecoveryAppointments( final Map<GMSCacheable, Object> fromCache, final String failedMemberToken, final String componentName) throws GMSException { if (isWatchdog()) { return; } final DistributedStateCache dsc = getGMSContext() .getDistributedStateCache(); for (final Map.Entry<GMSCacheable, Object> entry : fromCache.entrySet()) { final GMSCacheable cKey = entry.getKey(); if (cKey.getKey().equals(failedMemberToken) && cKey.getComponentName().equals(componentName) && entry.getValue().toString().startsWith(REC_APPOINTED_STATE)) { if (logger.isLoggable(Level.FINE)){ logger.log(Level.FINE, "remove RecoveryAppointment componentName: " + componentName + " failedMember:" + failedMemberToken + "value=" + entry.getValue().toString()); } dsc.removeFromCache(cKey.getComponentName(), cKey.getMemberTokenId(), (Serializable) cKey.getKey()); } } }
private List<String> getRecoveriesInProgressByFailedMember(final String token) { final List<String> tokens = new ArrayList<String>(); final DistributedStateCache dsc = getGMSContext().getDistributedStateCache(); final Map<GMSCacheable, Object> entries = dsc.getFromCache(token); for (Map.Entry<GMSCacheable,Object> entry : entries.entrySet()) { GMSCacheable gmsCacheable = entry.getKey(); //if this member is recovering someone else if (token.equals(gmsCacheable.getMemberTokenId()) && !token.equals(gmsCacheable.getKey())) { if (entry.getValue() instanceof String) { if (((String) entry.getValue()).startsWith(REC_PROGRESS_STATE)) { if (logger.isLoggable(Level.FINER)){ logger.log(Level.FINER, new StringBuffer("Failed Member ").append(token) .append(" had recovery-in-progress for ") .append(gmsCacheable.getKey()).append(" when ") .append(token).append(" failed. ").toString()); } tokens.add((String) gmsCacheable.getKey()); RecoveryTargetSelector.setRecoverySelectionState( getGMSContext().getServerIdentityToken(), (String) gmsCacheable.getKey(), getGMSContext().getGroupName()); } } } } return tokens; }
private List<String> getRecoveriesInProgressByFailedMember(final String token) { final List<String> tokens = new ArrayList<String>(); final DistributedStateCache dsc = getGMSContext().getDistributedStateCache(); final Map<GMSCacheable, Object> entries = dsc.getFromCache(token); for (Map.Entry<GMSCacheable,Object> entry : entries.entrySet()) { GMSCacheable gmsCacheable = entry.getKey(); //if this member is recovering someone else if (token.equals(gmsCacheable.getMemberTokenId()) && !token.equals(gmsCacheable.getKey())) { if (entry.getValue() instanceof String) { if (((String) entry.getValue()).startsWith(REC_PROGRESS_STATE)) { if (logger.isLoggable(Level.FINER)){ logger.log(Level.FINER, new StringBuffer("Failed Member ").append(token) .append(" had recovery-in-progress for ") .append(gmsCacheable.getKey()).append(" when ") .append(token).append(" failed. ").toString()); } tokens.add((String) gmsCacheable.getKey()); RecoveryTargetSelector.setRecoverySelectionState( getGMSContext().getServerIdentityToken(), (String) gmsCacheable.getKey(), getGMSContext().getGroupName()); } } } } return tokens; }
GMSCacheable gmsCacheable = entry.getKey(); if (token.equals(gmsCacheable.getMemberTokenId()) && !token.equals(gmsCacheable.getKey())) { if (entry.getValue() instanceof String) { if (((String) entry.getValue()).startsWith(REC_APPOINTED_STATE) && !currentCoreMembers.contains(gmsCacheable.getKey())) { try { dsc.removeFromCache(gmsCacheable.getComponentName(), gmsCacheable.getMemberTokenId(), (Serializable) gmsCacheable.getKey()); RecoveryTargetSelector.setRecoverySelectionState(
GMSCacheable gmsCacheable = entry.getKey(); if (token.equals(gmsCacheable.getMemberTokenId()) && !token.equals(gmsCacheable.getKey())) { if (entry.getValue() instanceof String) { if (((String) entry.getValue()).startsWith(REC_APPOINTED_STATE) && !currentCoreMembers.contains(gmsCacheable.getKey())) { try { dsc.removeFromCache(gmsCacheable.getComponentName(), gmsCacheable.getMemberTokenId(), (Serializable) gmsCacheable.getKey()); RecoveryTargetSelector.setRecoverySelectionState(
if (componentName.equals(c.getComponentName())) { //if this member is being recovered by someone if (memberToken.equals(c.getKey())) { //if this is an old record of a self recovery then ignore if (!memberToken.equals(c.getMemberTokenId())) { if (((String) entry.getValue()) .startsWith(REC_PROGRESS_STATE)) {
if (componentName.equals(c.getComponentName())) { //if this member is being recovered by someone if (memberToken.equals(c.getKey())) { //if this is an old record of a self recovery then ignore if (!memberToken.equals(c.getMemberTokenId())) { if (((String) entry.getValue()) .startsWith(REC_PROGRESS_STATE)) {