/** * Creates a {@link MembershipStatus} that marks a machine as being * non-functional (i.e. inactive) and in need of service. The * {@link Machine} should be replaced and should not be terminated (it is * kept alive for troubleshooting). * * @return */ public static MembershipStatus awaitingService() { return new MembershipStatus(false, false); }
MembershipStatus membershipStatus = MembershipStatus.defaultStatus(); Optional<String> membershipStatusTag = getTagValue(instance, ScalingTags.MEMBERSHIP_STATUS_TAG); if (membershipStatusTag.isPresent()) {
@Override public boolean test(Machine machine) { return machine.getMembershipStatus().isEvictable(); } }
@Override public boolean test(Machine machine) { return isAllocated().test(machine) && machine.getMembershipStatus().isActive(); } }
MembershipStatus membershipStatus = MembershipStatus.defaultStatus(); if (server.getMetadata().containsKey(Constants.MEMBERSHIP_STATUS_TAG)) { membershipStatus = JsonUtils.toObject(
/** * Creates a {@link MembershipStatus} that marks a machine as being * non-functional (i.e. inactive) and in need of replacement. The * {@link Machine} should be replaced and can be terminated. * * @return */ public static MembershipStatus disposable() { return new MembershipStatus(false, true); }
/** * Creates a default {@link MembershipStatus} that marks a machine both * active and evictable. * * @return */ public static MembershipStatus defaultStatus() { return new MembershipStatus(true, true); }
/** * Creates a {@link MembershipStatus} that marks a machine as blessed (or a * permanent pool member that cannot be evicted). * * @return */ public static MembershipStatus blessed() { return new MembershipStatus(true, false); }