-
- All Known Implementing Classes:
DefaultTypedConfigGetter
public interface TypedConfigGetterSomething that knows how to convert plain strings from a gitConfigto typed values.- Since:
- 4.9
-
-
Field Summary
Fields Modifier and Type Field Description static intUNSET_INTUseInteger#MIN_VALUEas unset int value
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description booleangetBoolean(Config config, String section, String subsection, String name, boolean defaultValue)Get a boolean value from a gitConfig.<T extends Enum<?>>
TgetEnum(Config config, T[] all, String section, String subsection, String name, T defaultValue)Parse an enumeration from a gitConfig.intgetInt(Config config, String section, String subsection, String name, int defaultValue)Obtain an integer value from a gitConfig.intgetIntInRange(Config config, String section, String subsection, String name, int minValue, int maxValue, int defaultValue)Obtain an integer value from a gitConfigwhich must be in given range.longgetLong(Config config, String section, String subsection, String name, long defaultValue)Obtain a long value from a gitConfig.default PathgetPath(Config config, String section, String subsection, String name, FS fs, File resolveAgainst, Path defaultValue)Parse a string value from a gitConfigand treat it as a file path, replacing a ~/ prefix by the user's home directory.List<RefSpec>getRefSpecs(Config config, String section, String subsection, String name)longgetTimeUnit(Config config, String section, String subsection, String name, long defaultValue, TimeUnit wantUnit)Parse a numerical time unit, such as "1 minute", from a gitConfig.
-
-
-
Field Detail
-
UNSET_INT
static final int UNSET_INT
UseInteger#MIN_VALUEas unset int value- Since:
- 6.1
- See Also:
- Constant Field Values
-
-
Method Detail
-
getBoolean
boolean getBoolean(Config config, String section, String subsection, String name, boolean defaultValue)
Get a boolean value from a gitConfig.- Parameters:
config- to get the value fromsection- 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
<T extends Enum<?>> T getEnum(Config config, T[] all, String section, String subsection, String name, T defaultValue)
Parse an enumeration from a gitConfig.- Parameters:
config- to get the value fromall- all possible values in the enumeration which should be recognized. TypicallyEnumType.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
int getInt(Config config, String section, String subsection, String name, int defaultValue)
Obtain an integer value from a gitConfig.- Parameters:
config- to get the value fromsection- 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.
-
getIntInRange
int getIntInRange(Config config, String section, String subsection, String name, int minValue, int maxValue, int defaultValue)
Obtain an integer value from a gitConfigwhich must be in given range.- Parameters:
config- to get the value fromsection- section the key is grouped within.subsection- subsection name, such a remote or branch name.name- name of the key to get.minValue- minimal valuemaxValue- maximum valuedefaultValue- default value to return if no value was present. Use#UNSET_INTto set the default to unset.- Returns:
- an integer value from the configuration, or defaultValue.
#UNSET_INTif unset. - Since:
- 6.1
-
getLong
long getLong(Config config, String section, String subsection, String name, long defaultValue)
Obtain a long value from a gitConfig.- Parameters:
config- to get the value fromsection- 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
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 gitConfig.- Parameters:
config- to get the value fromsection- 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 ofdefaultValueand 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
defaultValueif not set, expressed inunits.
-
getPath
default Path getPath(Config config, String section, String subsection, String name, @NonNull FS fs, File resolveAgainst, Path defaultValue)
Parse a string value from a gitConfigand treat it as a file path, replacing a ~/ prefix by the user's home directory.Note: this may throw
InvalidPathExceptionif the string is not a valid path.- Parameters:
config- to get the path from.section- section the key is in.subsection- subsection the key is in, or null if not in a subsection.name- the key name.fs- to use to convert the string into a path.resolveAgainst- directory to resolve the path against if it is a relative path.defaultValue- to return if no value was present- Returns:
- the
Path, ordefaultValueif not set - Since:
- 5.10
-
getRefSpecs
@NonNull List<RefSpec> getRefSpecs(Config config, String section, String subsection, String name)
- Parameters:
config- to get the list fromsection- 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
-
-