Class DefaultTypedConfigGetter

java.lang.Object
org.eclipse.jgit.lib.DefaultTypedConfigGetter
All Implemented Interfaces:
TypedConfigGetter

public class DefaultTypedConfigGetter extends Object implements TypedConfigGetter
An TypedConfigGetter that throws IllegalArgumentException on invalid values.
Since:
4.9
  • Constructor Details

    • DefaultTypedConfigGetter

      public DefaultTypedConfigGetter()
  • Method Details

    • getBoolean

      public boolean getBoolean(Config config, String section, String subsection, String name, boolean defaultValue)
      Get a boolean value from a git Config.
      Specified by:
      getBoolean in interface TypedConfigGetter
      Parameters:
      config - to get the value from
      section - section the key is grouped within.
      subsection - subsection name, such a remote or branch name.
      name - name of the key to get.
      defaultValue - default value to return if no value was present.
      Returns:
      true if any value or defaultValue is true, false for missing or explicit false
    • getEnum

      public <T extends Enum<?>> T getEnum(Config config, T[] all, String section, String subsection, String name, T defaultValue)
      Parse an enumeration from a git Config.
      Specified by:
      getEnum in interface TypedConfigGetter
      Parameters:
      config - to get the value from
      all - all possible values in the enumeration which should be recognized. Typically EnumType.values().
      section - section the key is grouped within.
      subsection - subsection name, such a remote or branch name.
      name - name of the key to get.
      defaultValue - default value to return if no value was present.
      Returns:
      the selected enumeration value, or defaultValue.
    • getInt

      public int getInt(Config config, String section, String subsection, String name, int defaultValue)
      Obtain an integer value from a git Config.
      Specified by:
      getInt in interface TypedConfigGetter
      Parameters:
      config - to get the value from
      section - section the key is grouped within.
      subsection - subsection name, such a remote or branch name.
      name - name of the key to get.
      defaultValue - default value to return if no value was present.
      Returns:
      an integer value from the configuration, or defaultValue.
    • getLong

      public long getLong(Config config, String section, String subsection, String name, long defaultValue)
      Obtain a long value from a git Config.
      Specified by:
      getLong in interface TypedConfigGetter
      Parameters:
      config - to get the value from
      section - section the key is grouped within.
      subsection - subsection name, such a remote or branch name.
      name - name of the key to get.
      defaultValue - default value to return if no value was present.
      Returns:
      a long value from the configuration, or defaultValue.
    • getTimeUnit

      public long getTimeUnit(Config config, String section, String subsection, String name, long defaultValue, TimeUnit wantUnit)
      Parse a numerical time unit, such as "1 minute", from a git Config.
      Specified by:
      getTimeUnit in interface TypedConfigGetter
      Parameters:
      config - to get the value from
      section - section the key is in.
      subsection - subsection the key is in, or null if not in a subsection.
      name - the key name.
      defaultValue - default value to return if no value was present.
      wantUnit - the units of defaultValue and the return value, as well as the units to assume if the value does not contain an indication of the units.
      Returns:
      the value, or defaultValue if not set, expressed in units.
    • match

      private static boolean match(String a, String... cases)
    • notTimeUnit

      private static IllegalArgumentException notTimeUnit(String section, String subsection, String name, String valueString)
    • getRefSpecs

      @NonNull public List<RefSpec> getRefSpecs(Config config, String section, String subsection, String name)
      Parse a list of RefSpecs from a git Config.
      Specified by:
      getRefSpecs in interface TypedConfigGetter
      Parameters:
      config - to get the list from
      section - section the key is in.
      subsection - subsection the key is in, or null if not in a subsection.
      name - the key name.
      Returns:
      a possibly empty list of RefSpecs