@Override public boolean evaluate(Instance obj) { return obj.getRemoved() != null; }
public static String getInstanceName(Instance instance) { if (instance != null && instance.getRemoved() == null) { return instance.getUuid(); } else { return null; } }
@Override public boolean isError() { return this.instance != null && (ERROR_STATES.contains(this.instance.getState()) || this.instance.getRemoved() != null); }
@Override public boolean evaluate(Instance obj) { if ((startOnce && ERROR_STATES.contains(obj.getState())) || obj.getRemoved() != null || (!startOnce && BAD_ALLOCATING_STATES.contains(obj.getState()))) { String error = TransitioningUtils.getTransitioningError(obj); String message = "Bad instance [" + key(instance) + "] in state [" + obj.getState() + "]"; if (StringUtils.isNotBlank(error)) { message = message + ": " + error; } throw new RuntimeException(message); } return context.objectManager.find(InstanceHostMap.class, INSTANCE_HOST_MAP.INSTANCE_ID, instance.getId()).size() > 0; }
@Override public List<? extends Instance> getInstances(Object obj) { if (!(obj instanceof HealthcheckInstanceHostMap)) { return null; } HealthcheckInstanceHostMap hostMap = (HealthcheckInstanceHostMap) obj; List<Instance> instances = new ArrayList<>(); HealthcheckInstance hInstance = objectManager.loadResource(HealthcheckInstance.class, hostMap.getHealthcheckInstanceId()); if (hInstance == null || hInstance.getRemoved() != null) { return instances; } Instance instance = objectManager.loadResource(Instance.class, hInstance.getInstanceId()); if (instance != null && instance.getRemoved() == null) { instances.add(instance); } return instances; } }
@Override public boolean evaluate(Instance obj) { if (obj.getRemoved() != null) { throw new TimeoutException("Instance is removed"); } if (ERROR_STATES.contains(obj.getState())) { throw new TimeoutException("Instance encountered an error"); } if (isStartOnce(obj)) { return START_ONCE_STATES.contains(obj.getState()); } InstanceHostMap ihm = objectManager.findAny(InstanceHostMap.class, INSTANCE_HOST_MAP.INSTANCE_ID, obj.getId(), INSTANCE_HOST_MAP.STATE, CommonStatesConstants.ACTIVE, INSTANCE_HOST_MAP.REMOVED, null); return ihm != null; }
if (instance == null || instance.getRemoved() != null) { return null;
public void cleanupUpgradedInstances(Service service) { List<? extends ServiceExposeMap> maps = exposeMapDao.getInstancesSetForUpgrade(service.getId()); List<Instance> waitList = new ArrayList<>(); for (ServiceExposeMap map : maps) { Instance instance = objectManager.loadResource(Instance.class, map.getInstanceId()); if (instance == null || instance.getRemoved() != null || instance.getState().equals( CommonStatesConstants.REMOVING)) { continue; } try { objectProcessMgr.scheduleProcessInstanceAsync(InstanceConstants.PROCESS_REMOVE, instance, null); } catch (ProcessCancelException ex) { // in case instance was manually restarted objectProcessMgr.scheduleProcessInstanceAsync(InstanceConstants.PROCESS_STOP, instance, ProcessUtils.chainInData(new HashMap<String, Object>(), InstanceConstants.PROCESS_STOP, InstanceConstants.PROCESS_REMOVE)); } } for (Instance instance : waitList) { resourceMntr.waitForState(instance, CommonStatesConstants.REMOVED); } }
List<String> invalidStates = Arrays.asList(CommonStatesConstants.REMOVING, CommonStatesConstants.REMOVED, InstanceConstants.STATE_ERRORING, InstanceConstants.STATE_ERROR); if (instance.getRemoved() != null || invalidStates.contains(instance.getState())) { continue;
if (i.getRemoved() != null) { continue;
setState(from.getState()); setCreated(from.getCreated()); setRemoved(from.getRemoved()); setRemoveTime(from.getRemoveTime()); setData(from.getData());