/** * returns the details of the member who caused this Signal to be generated * returns a Map containing key-value pairs constituting data pertaining to * the member's details * * @return Map <Serializable, Serializable> */ public Map<Serializable, Serializable> getMemberDetails () { return ctx.getDistributedStateCache() .getFromCacheForPattern(MEMBER_DETAILS, failedMember ); }
public void updateMemberDetails(final String memberToken, final Serializable key, final Serializable value) throws GMSException { if (isWatchdog()) { return; } ctx.getDistributedStateCache().addToCache(MEMBER_DETAILS, memberToken, key, value); }
/** * for this serverToken, use the map to derive key value pairs * that constitute data pertaining to this member's details * * @param serverToken - member token id for this member. * @param keyValuePairs - a Map containing key-value pairs * @throws com.sun.enterprise.ee.cms.core.GMSException * wraps underlying exception that caused adding of member details to fail. */ public void setMemberDetails(final String serverToken, final Map<? extends Object, ? extends Object> keyValuePairs) throws GMSException { if (isWatchdog()) { return; } for (Map.Entry<? extends Object, ? extends Object> entry : keyValuePairs.entrySet()) { ctx.getDistributedStateCache() .addToLocalCache(MEMBER_DETAILS, serverToken, (Serializable) entry.getKey(), (Serializable) entry.getValue()); } }
private List<String> getRecApptsHeldByFailedMember(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(); dsc.removeFromCache(gmsCacheable.getComponentName(), gmsCacheable.getMemberTokenId(), (Serializable) gmsCacheable.getKey());
final List<String> members = getAllCurrentMembers(); int count = 0; while (members.size() > 1 && !dsc.isFirstSyncDone()) { logger.log(Level.FINE, "Waiting for DSC first Sync"); try { entries = dsc.getFromCache(memberToken); for (Map.Entry<GMSCacheable, Object> entry : entries.entrySet()) { final GMSCacheable c = entry.getKey();
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 addPlannedShutdownSignals(final EventPacket packet) { final SystemAdvertisement advert = packet.getSystemAdvertisement(); final String token = advert.getName(); final DistributedStateCache dsc = getGMSContext().getDistributedStateCache(); final GMSConstants.shutdownType shutdownType; if (packet.getClusterViewEvent().equals(ClusterViewEvents.CLUSTER_STOP_EVENT)) { shutdownType = GMSConstants.shutdownType.GROUP_SHUTDOWN; } else { shutdownType = GMSConstants.shutdownType.INSTANCE_SHUTDOWN; if (dsc != null) { dsc.removeAllForMember(token); } } logger.log(Level.INFO, "plannedshutdownevent.announcement", new Object[]{token, shutdownType, groupName}); String gName = Utility.getGroupName(advert); if (gName == null) { logger.log(Level.WARNING, "systemadv.not.contain.customtag", CustomTagNames.GROUP_NAME); return; } long startTime = Utility.getStartTime(advert); if (startTime == Utility.NO_SUCH_TIME) { logger.log(Level.WARNING, "systemadv.not.contain.customtag", CustomTagNames.START_TIME); return; } signals.add(new PlannedShutdownSignalImpl(token, gName, startTime, shutdownType)); }
distributedStateCache.removeAll(); distributedStateCache = null;
private List<String> getRecApptsHeldByFailedMember(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(); dsc.removeFromCache(gmsCacheable.getComponentName(), gmsCacheable.getMemberTokenId(), (Serializable) gmsCacheable.getKey());
final List<String> members = getAllCurrentMembers(); int count = 0; while (members.size() > 1 && !dsc.isFirstSyncDone()) { logger.log(Level.FINE, "Waiting for DSC first Sync"); try { entries = dsc.getFromCache(memberToken); for (Map.Entry<GMSCacheable, Object> entry : entries.entrySet()) { final GMSCacheable c = entry.getKey();
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 addPlannedShutdownSignals(final EventPacket packet) { final SystemAdvertisement advert = packet.getSystemAdvertisement(); final String token = advert.getName(); final DistributedStateCache dsc = getGMSContext().getDistributedStateCache(); final GMSConstants.shutdownType shutdownType; if (packet.getClusterViewEvent().equals(ClusterViewEvents.CLUSTER_STOP_EVENT)) { shutdownType = GMSConstants.shutdownType.GROUP_SHUTDOWN; } else { shutdownType = GMSConstants.shutdownType.INSTANCE_SHUTDOWN; if (dsc != null) { dsc.removeAllForMember(token); } } logger.log(Level.INFO, "plannedshutdownevent.announcement", new Object[]{token, shutdownType, groupName}); String gName = Utility.getGroupName(advert); if (gName == null) { logger.log(Level.WARNING, "systemadv.not.contain.customtag", CustomTagNames.GROUP_NAME); return; } long startTime = Utility.getStartTime(advert); if (startTime == Utility.NO_SUCH_TIME) { logger.log(Level.WARNING, "systemadv.not.contain.customtag", CustomTagNames.START_TIME); return; } signals.add(new PlannedShutdownSignalImpl(token, gName, startTime, shutdownType)); }
distributedStateCache.removeAll(); distributedStateCache = null;
/** * returns the details of the member who caused this Signal to be generated * returns a Map containing key-value pairs constituting data pertaining to * the member's details * @return Map - <Serializable, Serializable> */ public Map<Serializable, Serializable> getMemberDetails ( ) { return ctx.getDistributedStateCache() .getFromCacheForPattern(MEMBER_DETAILS, memberToken ); }
final DistributedStateCache dsc = getGMSContext() .getDistributedStateCache(); dsc.removeFromCache(componentName, getGMSContext().getServerIdentityToken(), failedMemberToken); removeRecoveryAppointments(dsc.getFromCache(failedMemberToken), failedMemberToken, componentName); selfRecoveryList.remove(componentName + failedMemberToken);
public void updateMemberDetails(final String memberToken, final Serializable key, final Serializable value) throws GMSException { if (isWatchdog()) { return; } ctx.getDistributedStateCache().addToCache(MEMBER_DETAILS, memberToken, key, value); }
public void removeRecoveryAppointments(String failedMemberToken, String componentName) throws GMSException { DistributedStateCache dsc = getGMSContext().getDistributedStateCache(); removeRecoveryAppointments(dsc.getFromCache(failedMemberToken),failedMemberToken, componentName); }
/** * for this serverToken, use the map to derive key value pairs * that constitute data pertaining to this member's details * * @param serverToken - member token id for this member. * @param keyValuePairs - a Map containing key-value pairs * @throws com.sun.enterprise.ee.cms.core.GMSException * wraps underlying exception that caused adding of member details to fail. */ public void setMemberDetails(final String serverToken, final Map<? extends Object, ? extends Object> keyValuePairs) throws GMSException { if (isWatchdog()) { return; } for (Map.Entry<? extends Object, ? extends Object> entry : keyValuePairs.entrySet()) { ctx.getDistributedStateCache() .addToLocalCache(MEMBER_DETAILS, serverToken, (Serializable) entry.getKey(), (Serializable) entry.getValue()); } }