package sk.stuba.fiit.perconik.eclipse.core.resources; import java.util.Set; import org.eclipse.core.resources.IncrementalProjectBuilder; import sk.stuba.fiit.perconik.utilities.constant.IntegralConstant; import sk.stuba.fiit.perconik.utilities.constant.IntegralConstantSupport; /** * Project build kinds. * * @see IncrementalProjectBuilder * * @author Pavol Zbell * @since 1.0 */ public enum ProjectBuildKind implements IntegralConstant { /** * @see IncrementalProjectBuilder#FULL_BUILD */ FULL(IncrementalProjectBuilder.FULL_BUILD), /** * @see IncrementalProjectBuilder#AUTO_BUILD */ AUTO(IncrementalProjectBuilder.AUTO_BUILD), /** * @see IncrementalProjectBuilder#INCREMENTAL_BUILD */ INCREMENTAL(IncrementalProjectBuilder.INCREMENTAL_BUILD), /** * @see IncrementalProjectBuilder#CLEAN_BUILD */ CLEAN(IncrementalProjectBuilder.CLEAN_BUILD); private static final IntegralConstantSupport<ProjectBuildKind> integers = IntegralConstantSupport.of(ProjectBuildKind.class); private final int value; private ProjectBuildKind(final int value) { this.value = value; } public static Set<Integer> valuesAsIntegers() { return integers.getIntegers(); } public static ProjectBuildKind valueOf(final int value) { return integers.getConstant(value); } public int getValue() { return this.value; } }