All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.elastisys.scale.cloudpool.commons.scaledown.VictimSelectionStrategy Maven / Gradle / Ivy

There is a newer version: 5.2.3
Show newest version
package com.elastisys.scale.cloudpool.commons.scaledown;

import java.util.Collection;

import com.elastisys.scale.cloudpool.api.types.Machine;

/**
 * Represents a policy for which machine instance, from a collection of machine
 * instances, to select for (eventual) termination when a scale-down of a
 * scaling group is ordered.
 */
public interface VictimSelectionStrategy {

    /**
     * Selects which instance, from a collection of machine instances, to
     * schedule for (eventual) termination.
     *
     * @param candidates
     *            The collection of machines eligible for termination.
     * @return The selected victim machine instance.
     */
    Machine selectVictim(Collection candidates);
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy