package sk.stuba.fiit.perconik.eclipse.jgit.lib; import java.util.Set; import org.eclipse.jgit.lib.Constants; import sk.stuba.fiit.perconik.utilities.constant.IntegralConstant; import sk.stuba.fiit.perconik.utilities.constant.IntegralConstantSupport; /** * Git object types. * * @see Constants * * @author Pavol Zbell * @since 1.0 */ public enum GitObjectType implements IntegralConstant { /** * @see Constants#OBJ_BAD */ UNKNOWN(Constants.OBJ_BAD), /** * @see Constants#OBJ_BLOB */ BLOB(Constants.OBJ_BLOB), /** * @see Constants#OBJ_COMMIT */ COMMIT(Constants.OBJ_COMMIT), /** * @see Constants#OBJ_EXT */ EXTENDED(Constants.OBJ_EXT), /** * @see Constants#OBJ_OFS_DELTA */ OFFSET_DELTA(Constants.OBJ_OFS_DELTA), /** * @see Constants#OBJ_REF_DELTA */ REFERENCE_DELTA(Constants.OBJ_REF_DELTA), /** * @see Constants#OBJ_TAG */ TAG(Constants.OBJ_TAG), /** * @see Constants#OBJ_TREE */ TREE(Constants.OBJ_TREE), /** * @see Constants#OBJ_TYPE_5 */ RESERVED(Constants.OBJ_TYPE_5); private static final IntegralConstantSupport<GitObjectType> integers = IntegralConstantSupport.of(GitObjectType.class); private final int value; private GitObjectType(final int value) { this.value = value; } public static Set<Integer> valuesAsIntegers() { return integers.getIntegers(); } public static GitObjectType valueOf(final int value) { return integers.getConstant(value); } public int getValue() { return this.value; } }