Class ImmutableSection

    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      @NotNull @UnmodifiableView java.util.Map<java.lang.String,​java.lang.Object> asMap()
      Get this section as a map.
      java.lang.String childPath​(java.lang.String path)  
      boolean contains​(@NotNull java.lang.String path)
      Check if the given path is present.
      boolean containsValue​(@NotNull java.lang.String path)
      Check if the value of given path is present.
      @NotNull ImmutableSection createSection​(@NotNull java.lang.String path, @NotNull java.util.Map<?,​?> data)
      Creates a new ConfigureSection with specified values.
      boolean equals​(java.lang.Object obj)  
      void forEach​(@NotNull java.util.function.BiConsumer<java.lang.String,​java.lang.Object> action)
      Iterates over all key-values in this section (include child sections)
      @Nullable java.lang.Object get​(@NotNull java.lang.String path)
      Get the origin value of the path.
      <T> T get​(@NotNull java.lang.String path, @NotNull DataFunction<@Nullable java.lang.Object,​T> parser)
      Get the value of the path using a parser function, if the path does not exist, return NULL.
      <T> T get​(@NotNull java.lang.String path, @NotNull java.lang.Class<T> type)
      Get the value of the path for specific type, if the path does not exist, return null.
      <T> T get​(@NotNull java.lang.String path, T defaultValue, @NotNull DataFunction<java.lang.Object,​T> parser)
      Get the value of the path using a parser function, if the path does not exist, return the default value.
      <T> T get​(@NotNull java.lang.String path, T defaults, @NotNull java.lang.Class<T> clazz)
      Get the value of the path for specific type, if the path does not exist, return the default value.
      boolean getBoolean​(@NotNull java.lang.String path)
      Get the value as a Boolean from the specified path.
      @Nullable java.lang.Boolean getBoolean​(@NotNull java.lang.String path, @Nullable java.lang.Boolean def)
      Get the value as a Boolean from the specified path.
      @Nullable java.lang.Byte getByte​(@NotNull java.lang.String path)
      Get the value as a Byte from the specified path.
      @Nullable java.lang.Byte getByte​(@NotNull java.lang.String path, @Nullable java.lang.Byte def)
      Get the value as a Byte from the specified path.
      @NotNull java.util.List<java.lang.Byte> getByteList​(@NotNull java.lang.String path)
      Get a list of bytes from the section
      @Nullable java.lang.Character getChar​(@NotNull java.lang.String path)
      Get the value as a Character from the specified path.
      @Nullable java.lang.Character getChar​(@NotNull java.lang.String path, @Nullable java.lang.Character def)
      Get the value as a Character from the specified path.
      @NotNull java.util.List<java.lang.Character> getCharList​(@NotNull java.lang.String path)
      Get a list of char from the section
      <T,​C extends java.util.Collection<T>>
      C
      getCollection​(@NotNull java.lang.String path, @NotNull java.util.function.Supplier<C> constructor, @NotNull DataFunction<java.lang.Object,​T> parser)
      Get the specific type of collection from the section.
      @Nullable java.lang.Double getDouble​(@NotNull java.lang.String path)
      Get the value as a Double from the specified path.
      @Nullable java.lang.Double getDouble​(@NotNull java.lang.String path, @Nullable java.lang.Double def)
      Get the value as a Double from the specified path.
      @NotNull java.util.List<java.lang.Double> getDoubleList​(@NotNull java.lang.String path)
      Get a list of double from the section
      @Nullable java.lang.Float getFloat​(@NotNull java.lang.String path)
      Get the value as a Float from the specified path.
      @Nullable java.lang.Float getFloat​(@NotNull java.lang.String path, @Nullable java.lang.Float def)
      Get the value as a Float from the specified path.
      @NotNull java.util.List<java.lang.Float> getFloatList​(@NotNull java.lang.String path)
      Get a list of floats from the section
      @Nullable java.lang.Integer getInt​(@NotNull java.lang.String path)
      Get the value as a Integer from the specified path.
      @Nullable java.lang.Integer getInt​(@NotNull java.lang.String path, @Nullable java.lang.Integer def)
      Get the value as a Integer from the specified path.
      @NotNull java.util.List<java.lang.Integer> getIntegerList​(@NotNull java.lang.String path)
      Get a list of integer from the section
      @NotNull @UnmodifiableView java.util.Set<java.lang.String> getKeys​(boolean deep)
      Gets a set containing all keys in this section.
      @Nullable java.util.List<?> getList​(@NotNull java.lang.String path)
      Get the value as a List from the specified path.
      <V> @NotNull java.util.List<V> getList​(@NotNull java.lang.String path, @NotNull DataFunction<java.lang.Object,​V> parser)
      Get a list of values from the section
      @Nullable java.lang.Long getLong​(@NotNull java.lang.String path)
      Get the value as a Long from the specified path.
      @Nullable java.lang.Long getLong​(@NotNull java.lang.String path, @Nullable java.lang.Long def)
      Get the value as a Long from the specified path.
      @NotNull java.util.List<java.lang.Long> getLongList​(@NotNull java.lang.String path)
      Get a list of long from the section
      @Nullable ConfigureSection getSection​(@NotNull java.lang.String path)
      Get the value as a ConfigureSection from the specified path.
      @Nullable java.lang.Short getShort​(@NotNull java.lang.String path)
      Get the value as a Short from the specified path.
      @Nullable java.lang.Short getShort​(@NotNull java.lang.String path, @Nullable java.lang.Short def)
      Get the value as a Short from the specified path.
      @Nullable java.lang.String getString​(@NotNull java.lang.String path)
      Get the value as a String from the specified path.
      @Nullable java.lang.String getString​(@NotNull java.lang.String path, @Nullable java.lang.String def)
      Get the value as a String from the specified path.
      @NotNull java.util.List<java.lang.String> getStringList​(@NotNull java.lang.String path)
      Get a list of strings from the section
      @NotNull @UnmodifiableView java.util.Map<java.lang.String,​java.lang.Object> getValues​(boolean deep)
      Gets a set containing all values in this section.
      int hashCode()  
      boolean isBoolean​(@NotNull java.lang.String path)
      Predicate the value of given path is a Boolean.
      @Nullable java.lang.Boolean isByte​(@NotNull java.lang.String path)
      Predicate the value of given path is a Byte.
      boolean isChar​(@NotNull java.lang.String path)
      Predicate the value of given path is a Character.
      boolean isDouble​(@NotNull java.lang.String path)
      Predicate the value of given path is a Double.
      boolean isEmpty()
      Gets if this section is empty.
      boolean isFloat​(@NotNull java.lang.String path)
      Predicate the value of given path is a Float.
      boolean isInt​(@NotNull java.lang.String path)
      Predicate the value of given path is a Integer.
      boolean isList​(@NotNull java.lang.String path)
      Predicate the value of given path is a List.
      boolean isLong​(@NotNull java.lang.String path)
      Predicate the value of given path is a Long.F
      boolean isRoot()
      Gets if this section is a root section.
      boolean isSection​(@NotNull java.lang.String path)
      Predicate the value of given path is a ConfigureSection.
      boolean isShort​(@NotNull java.lang.String path)
      Predicate the value of given path is a Short.
      boolean isString​(@NotNull java.lang.String path)
      Predicate the value of given path is a String.
      <T> boolean isType​(@NotNull java.lang.String path, @NotNull java.lang.Class<T> typeClass)
      Predicate the value of given path is specific type.
      @NotNull @UnmodifiableView java.util.Set<java.lang.String> keys()
      Gets a set containing all primary keys in this section.
      static ImmutableSection of​(@NotNull ConfigureSection section)  
      @Nullable ImmutableSection parent()
      Gets the parent section of this section.
      @NotNull java.lang.String path()
      Get the current section's path from ConfigureSection.parent() of this section.
      char pathSeparator()
      Get the path separator for the section.
      void remove​(@NotNull java.lang.String path)
      Removes the value at the given path.
      void set​(@NotNull java.lang.String path, @Nullable java.lang.Object value)
      Sets the value at the given path.
      java.util.stream.Stream<java.util.Map.Entry<java.lang.String,​java.lang.Object>> stream()
      Create a stream of all values in this section.
      @NotNull java.util.stream.Stream<?> stream​(@NotNull java.lang.String path)
      Get the specific type of steam from the section.
      <T> @NotNull java.util.stream.Stream<T> stream​(@NotNull java.lang.String path, @NotNull java.util.function.Function<java.lang.Object,​T> parser)
      Get the specific type of steam from the section.
      @NotNull @UnmodifiableView java.util.Map<java.lang.String,​java.lang.Object> values()
      Gets a set containing all key-values in this section.
      • Methods inherited from class java.lang.Object

        clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
    • Method Detail

      • parent

        @Nullable
        public @Nullable ImmutableSection parent()
        Description copied from interface: ConfigureSection
        Gets the parent section of this section.

        For root sections, this will return null.

        Specified by:
        parent in interface ConfigureSection
        Returns:
        Parent section, or null if this is a root section.
      • getValues

        @NotNull
        public @NotNull @UnmodifiableView java.util.Map<java.lang.String,​java.lang.Object> getValues​(boolean deep)
        Description copied from interface: ConfigureSection
        Gets a set containing all values in this section.

        If deep is set to true, then this will contain all the keys within any child ConfigureSections (and their children paths).

        If deep is set to false, then this will contain only the keys of any direct children, and not their own children.

        Specified by:
        getValues in interface ConfigureSection
        Parameters:
        deep - Whether to get a deep list.
        Returns:
        Map of data values contained within this Section.
      • set

        public void set​(@NotNull
                        @NotNull java.lang.String path,
                        @Nullable
                        @Nullable java.lang.Object value)
        Description copied from interface: ConfigureSection
        Sets the value at the given path.

        Null values will be kept, if you want to remove a value use ConfigureSection.remove(String) Path separator depends on holder's StandardOptions.PATH_SEPARATOR

        Specified by:
        set in interface ConfigureSection
        Parameters:
        path - The path to set the value at.
        value - The value to set.
      • get

        @Nullable
        public @Nullable java.lang.Object get​(@NotNull
                                              @NotNull java.lang.String path)
        Description copied from interface: ConfigureSection
        Get the origin value of the path.
        Specified by:
        get in interface ConfigureSection
        Parameters:
        path - The path to get the value from.
        Returns:
        The value at the path, or null if not found.
      • getSection

        @Nullable
        public @Nullable ConfigureSection getSection​(@NotNull
                                                     @NotNull java.lang.String path)
        Description copied from interface: ConfigureSection
        Get the value as a ConfigureSection from the specified path.
        Specified by:
        getSection in interface ConfigureSection
        Parameters:
        path - The path to get the section.
        Returns:
        The section if the path exists and is a section, otherwise null.
      • pathSeparator

        public char pathSeparator()
        Description copied from interface: ConfigureSection
        Get the path separator for the section.
        Specified by:
        pathSeparator in interface ConfigureSection
        Returns:
        The path separator
      • isRoot

        public boolean isRoot()
        Description copied from interface: ConfigureSection
        Gets if this section is a root section.
        Specified by:
        isRoot in interface ConfigureSection
        Returns:
        True if this section is a root section, false otherwise.
      • isEmpty

        public boolean isEmpty()
        Description copied from interface: ConfigureSection
        Gets if this section is empty.
        Specified by:
        isEmpty in interface ConfigureSection
        Returns:
        True if this section is empty, false otherwise.
      • getKeys

        @NotNull
        public @NotNull @UnmodifiableView java.util.Set<java.lang.String> getKeys​(boolean deep)
        Description copied from interface: ConfigureSection
        Gets a set containing all keys in this section.

        If deep is set to true, then this will contain all the keys within any child ConfigureSections (and their children paths).

        If deep is set to false, then this will contain only the keys of any direct children, and not their own children.

        Specified by:
        getKeys in interface ConfigureSection
        Parameters:
        deep - Whether to get a deep list.
        Returns:
        Set of keys contained within this Section.
      • keys

        @NotNull
        public @NotNull @UnmodifiableView java.util.Set<java.lang.String> keys()
        Description copied from interface: ConfigureSection
        Gets a set containing all primary keys in this section.
        Specified by:
        keys in interface ConfigureSection
        Returns:
        Set of keys contained within this Section.
      • values

        @NotNull
        public @NotNull @UnmodifiableView java.util.Map<java.lang.String,​java.lang.Object> values()
        Description copied from interface: ConfigureSection
        Gets a set containing all key-values in this section.
        Specified by:
        values in interface ConfigureSection
        Returns:
        Map of data values contained within this Section.
        See Also:
        ConfigureSection.getValues(boolean)
      • asMap

        @NotNull
        public @NotNull @UnmodifiableView java.util.Map<java.lang.String,​java.lang.Object> asMap()
        Description copied from interface: ConfigureSection
        Get this section as a map.

        In this map, child ConfigureSections will also be represented as Maps.

        Specified by:
        asMap in interface ConfigureSection
        Returns:
        Map of data values contained within this Section.
      • stream

        public java.util.stream.Stream<java.util.Map.Entry<java.lang.String,​java.lang.Object>> stream()
        Description copied from interface: ConfigureSection
        Create a stream of all values in this section.
        Specified by:
        stream in interface ConfigureSection
        Returns:
        Stream of all values in this section.
      • forEach

        public void forEach​(@NotNull
                            @NotNull java.util.function.BiConsumer<java.lang.String,​java.lang.Object> action)
        Description copied from interface: ConfigureSection
        Iterates over all key-values in this section (include child sections)
        Specified by:
        forEach in interface ConfigureSection
        Parameters:
        action - The action to apply to each key.
      • contains

        public boolean contains​(@NotNull
                                @NotNull java.lang.String path)
        Description copied from interface: ConfigureSection
        Check if the given path is present.

        Path separator depends on holder's StandardOptions.PATH_SEPARATOR

        Specified by:
        contains in interface ConfigureSection
        Parameters:
        path - The path to check.
        Returns:
        True if the value is present, false otherwise.
      • containsValue

        public boolean containsValue​(@NotNull
                                     @NotNull java.lang.String path)
        Description copied from interface: ConfigureSection
        Check if the value of given path is present.

        Path separator depends on holder's StandardOptions.PATH_SEPARATOR

        Specified by:
        containsValue in interface ConfigureSection
        Parameters:
        path - The path to check.
        Returns:
        True if the value is present, false otherwise.
      • isType

        public <T> boolean isType​(@NotNull
                                  @NotNull java.lang.String path,
                                  @NotNull
                                  @NotNull java.lang.Class<T> typeClass)
        Description copied from interface: ConfigureSection
        Predicate the value of given path is specific type.
        Specified by:
        isType in interface ConfigureSection
        Type Parameters:
        T - The type to check.
        Parameters:
        path - The path to check.
        typeClass - The type's class
        Returns:
        True if the value is present and is the correct type, false otherwise.
      • isList

        public boolean isList​(@NotNull
                              @NotNull java.lang.String path)
        Description copied from interface: ConfigureSection
        Predicate the value of given path is a List.
        Specified by:
        isList in interface ConfigureSection
        Parameters:
        path - The path to check.
        Returns:
        True if the value is present and is a list, false otherwise.
      • getList

        @Nullable
        public @Nullable java.util.List<?> getList​(@NotNull
                                                   @NotNull java.lang.String path)
        Description copied from interface: ConfigureSection
        Get the value as a List from the specified path.
        Specified by:
        getList in interface ConfigureSection
        Parameters:
        path - The path to get the List.
        Returns:
        The list if the path exists and is a list, otherwise null.
      • isSection

        public boolean isSection​(@NotNull
                                 @NotNull java.lang.String path)
        Description copied from interface: ConfigureSection
        Predicate the value of given path is a ConfigureSection.
        Specified by:
        isSection in interface ConfigureSection
        Parameters:
        path - The path to check.
        Returns:
        True if the value is present and is a section, false otherwise.
      • get

        @Nullable
        public <T> T get​(@NotNull
                         @NotNull java.lang.String path,
                         @NotNull
                         @NotNull java.lang.Class<T> type)
        Description copied from interface: ConfigureSection
        Get the value of the path for specific type, if the path does not exist, return null.
        Specified by:
        get in interface ConfigureSection
        Type Parameters:
        T - The type of the value
        Parameters:
        path - The path to get the value from.
        type - The type class of the value
        Returns:
        The value at the path, or the default value if not found.
      • get

        @Nullable
        public <T> T get​(@NotNull
                         @NotNull java.lang.String path,
                         @NotNull
                         @NotNull DataFunction<@Nullable java.lang.Object,​T> parser)
        Description copied from interface: ConfigureSection
        Get the value of the path using a parser function, if the path does not exist, return NULL.
        Specified by:
        get in interface ConfigureSection
        Type Parameters:
        T - The type of the value
        Parameters:
        path - The path to get the value from.
        parser - The function to parse the value
        Returns:
        The value at the path, or null if not found.
      • get

        @Nullable
        public <T> T get​(@NotNull
                         @NotNull java.lang.String path,
                         T defaults,
                         @NotNull
                         @NotNull java.lang.Class<T> clazz)
        Description copied from interface: ConfigureSection
        Get the value of the path for specific type, if the path does not exist, return the default value.
        Specified by:
        get in interface ConfigureSection
        Type Parameters:
        T - The type of the value
        Parameters:
        path - The path to get the value from.
        defaults - The default value to return if the path does not exist.
        clazz - The type class of the value
        Returns:
        The value at the path, or the default value if not found.
      • get

        @Nullable
        public <T> T get​(@NotNull
                         @NotNull java.lang.String path,
                         T defaultValue,
                         @NotNull
                         @NotNull DataFunction<java.lang.Object,​T> parser)
        Description copied from interface: ConfigureSection
        Get the value of the path using a parser function, if the path does not exist, return the default value.
        Specified by:
        get in interface ConfigureSection
        Type Parameters:
        T - The type of the value
        Parameters:
        path - The path to get the value from.
        defaultValue - The default value to return if the path does not exist.
        parser - The function to parse the value
        Returns:
        The value at the path, or the default value if not found.
      • isBoolean

        public boolean isBoolean​(@NotNull
                                 @NotNull java.lang.String path)
        Description copied from interface: ConfigureSection
        Predicate the value of given path is a Boolean.
        Specified by:
        isBoolean in interface ConfigureSection
        Parameters:
        path - The path to check.
        Returns:
        True if the value is present and is a boolean, false otherwise.
      • getBoolean

        public boolean getBoolean​(@NotNull
                                  @NotNull java.lang.String path)
        Description copied from interface: ConfigureSection
        Get the value as a Boolean from the specified path.
        Specified by:
        getBoolean in interface ConfigureSection
        Parameters:
        path - The path to get the boolean.
        Returns:
        The boolean if the path exists and is a boolean, otherwise false.
      • getBoolean

        @Nullable
        public @Nullable java.lang.Boolean getBoolean​(@NotNull
                                                      @NotNull java.lang.String path,
                                                      @Nullable
                                                      @Nullable java.lang.Boolean def)
        Description copied from interface: ConfigureSection
        Get the value as a Boolean from the specified path.
        Specified by:
        getBoolean in interface ConfigureSection
        Parameters:
        path - The path to get the boolean.
        def - The default value to return if the path does not exist.
        Returns:
        The boolean if the path exists and is a boolean, otherwise the default value.
      • isByte

        @Nullable
        public @Nullable java.lang.Boolean isByte​(@NotNull
                                                  @NotNull java.lang.String path)
        Description copied from interface: ConfigureSection
        Predicate the value of given path is a Byte.
        Specified by:
        isByte in interface ConfigureSection
        Parameters:
        path - The path to check.
        Returns:
        True if the value is present and is a byte, false otherwise.
      • getByte

        @Nullable
        public @Nullable java.lang.Byte getByte​(@NotNull
                                                @NotNull java.lang.String path)
        Description copied from interface: ConfigureSection
        Get the value as a Byte from the specified path.
        Specified by:
        getByte in interface ConfigureSection
        Parameters:
        path - The path to get the byte.
        Returns:
        The byte if the path exists and is a byte, otherwise 0.
      • getByte

        @Nullable
        public @Nullable java.lang.Byte getByte​(@NotNull
                                                @NotNull java.lang.String path,
                                                @Nullable
                                                @Nullable java.lang.Byte def)
        Description copied from interface: ConfigureSection
        Get the value as a Byte from the specified path.
        Specified by:
        getByte in interface ConfigureSection
        Parameters:
        path - The path to get the byte.
        def - The default value to return if the path does not exist.
        Returns:
        The byte if the path exists and is a byte, otherwise the default value.
      • isShort

        public boolean isShort​(@NotNull
                               @NotNull java.lang.String path)
        Description copied from interface: ConfigureSection
        Predicate the value of given path is a Short.
        Specified by:
        isShort in interface ConfigureSection
        Parameters:
        path - The path to check.
        Returns:
        True if the value is present and is a short, false otherwise.
      • getShort

        @Nullable
        public @Nullable java.lang.Short getShort​(@NotNull
                                                  @NotNull java.lang.String path)
        Description copied from interface: ConfigureSection
        Get the value as a Short from the specified path.
        Specified by:
        getShort in interface ConfigureSection
        Parameters:
        path - The path to get the short.
        Returns:
        The short if the path exists and is a short, otherwise 0.
      • getShort

        @Nullable
        public @Nullable java.lang.Short getShort​(@NotNull
                                                  @NotNull java.lang.String path,
                                                  @Nullable
                                                  @Nullable java.lang.Short def)
        Description copied from interface: ConfigureSection
        Get the value as a Short from the specified path.
        Specified by:
        getShort in interface ConfigureSection
        Parameters:
        path - The path to get the short.
        def - The default value to return if the path does not exist.
        Returns:
        The short if the path exists and is a short, otherwise the default value.
      • isInt

        public boolean isInt​(@NotNull
                             @NotNull java.lang.String path)
        Description copied from interface: ConfigureSection
        Predicate the value of given path is a Integer.
        Specified by:
        isInt in interface ConfigureSection
        Parameters:
        path - The path to check.
        Returns:
        True if the value is present and is an int, false otherwise.
      • getInt

        @Nullable
        public @Nullable java.lang.Integer getInt​(@NotNull
                                                  @NotNull java.lang.String path)
        Description copied from interface: ConfigureSection
        Get the value as a Integer from the specified path.
        Specified by:
        getInt in interface ConfigureSection
        Parameters:
        path - The path to get the int.
        Returns:
        The int if the path exists and is an int, otherwise 0.
      • getInt

        @Nullable
        public @Nullable java.lang.Integer getInt​(@NotNull
                                                  @NotNull java.lang.String path,
                                                  @Nullable
                                                  @Nullable java.lang.Integer def)
        Description copied from interface: ConfigureSection
        Get the value as a Integer from the specified path.
        Specified by:
        getInt in interface ConfigureSection
        Parameters:
        path - The path to get the int.
        def - The default value to return if the path does not exist.
        Returns:
        The int if the path exists and is an int, otherwise the default value.
      • isLong

        public boolean isLong​(@NotNull
                              @NotNull java.lang.String path)
        Description copied from interface: ConfigureSection
        Predicate the value of given path is a Long.F
        Specified by:
        isLong in interface ConfigureSection
        Parameters:
        path - The path to check.
        Returns:
        True if the value is present and is a long, false otherwise.
      • getLong

        @Nullable
        public @Nullable java.lang.Long getLong​(@NotNull
                                                @NotNull java.lang.String path)
        Description copied from interface: ConfigureSection
        Get the value as a Long from the specified path.
        Specified by:
        getLong in interface ConfigureSection
        Parameters:
        path - The path to get the long.
        Returns:
        The long if the path exists and is a long, otherwise 0.
      • getLong

        @Nullable
        public @Nullable java.lang.Long getLong​(@NotNull
                                                @NotNull java.lang.String path,
                                                @Nullable
                                                @Nullable java.lang.Long def)
        Description copied from interface: ConfigureSection
        Get the value as a Long from the specified path.
        Specified by:
        getLong in interface ConfigureSection
        Parameters:
        path - The path to get the long.
        def - The default value to return if the path does not exist.
        Returns:
        The long if the path exists and is a long, otherwise the default value.
      • isFloat

        public boolean isFloat​(@NotNull
                               @NotNull java.lang.String path)
        Description copied from interface: ConfigureSection
        Predicate the value of given path is a Float.
        Specified by:
        isFloat in interface ConfigureSection
        Parameters:
        path - The path to check.
        Returns:
        True if the value is present and is a float, false otherwise.
      • getFloat

        @Nullable
        public @Nullable java.lang.Float getFloat​(@NotNull
                                                  @NotNull java.lang.String path)
        Description copied from interface: ConfigureSection
        Get the value as a Float from the specified path.
        Specified by:
        getFloat in interface ConfigureSection
        Parameters:
        path - The path to get the float.
        Returns:
        The float if the path exists and is a float, otherwise 0.
      • getFloat

        @Nullable
        public @Nullable java.lang.Float getFloat​(@NotNull
                                                  @NotNull java.lang.String path,
                                                  @Nullable
                                                  @Nullable java.lang.Float def)
        Description copied from interface: ConfigureSection
        Get the value as a Float from the specified path.
        Specified by:
        getFloat in interface ConfigureSection
        Parameters:
        path - The path to get the float.
        def - The default value to return if the path does not exist.
        Returns:
        The float if the path exists and is a float, otherwise the default value.
      • isDouble

        public boolean isDouble​(@NotNull
                                @NotNull java.lang.String path)
        Description copied from interface: ConfigureSection
        Predicate the value of given path is a Double.
        Specified by:
        isDouble in interface ConfigureSection
        Parameters:
        path - The path to check.
        Returns:
        True if the value is present and is a double, false otherwise.
      • getDouble

        @Nullable
        public @Nullable java.lang.Double getDouble​(@NotNull
                                                    @NotNull java.lang.String path)
        Description copied from interface: ConfigureSection
        Get the value as a Double from the specified path.
        Specified by:
        getDouble in interface ConfigureSection
        Parameters:
        path - The path to get the double.
        Returns:
        The double if the path exists and is a double, otherwise 0.
      • getDouble

        @Nullable
        public @Nullable java.lang.Double getDouble​(@NotNull
                                                    @NotNull java.lang.String path,
                                                    @Nullable
                                                    @Nullable java.lang.Double def)
        Description copied from interface: ConfigureSection
        Get the value as a Double from the specified path.
        Specified by:
        getDouble in interface ConfigureSection
        Parameters:
        path - The path to get the double.
        def - The default value to return if the path does not exist.
        Returns:
        The double if the path exists and is a double, otherwise the default value.
      • isChar

        public boolean isChar​(@NotNull
                              @NotNull java.lang.String path)
        Description copied from interface: ConfigureSection
        Predicate the value of given path is a Character.
        Specified by:
        isChar in interface ConfigureSection
        Parameters:
        path - The path to check.
        Returns:
        True if the value is present and is a char, false otherwise.
      • getChar

        @Nullable
        public @Nullable java.lang.Character getChar​(@NotNull
                                                     @NotNull java.lang.String path)
        Description copied from interface: ConfigureSection
        Get the value as a Character from the specified path.
        Specified by:
        getChar in interface ConfigureSection
        Parameters:
        path - The path to get the char.
        Returns:
        The char if the path exists and is a char, otherwise null.
      • getChar

        @Nullable
        public @Nullable java.lang.Character getChar​(@NotNull
                                                     @NotNull java.lang.String path,
                                                     @Nullable
                                                     @Nullable java.lang.Character def)
        Description copied from interface: ConfigureSection
        Get the value as a Character from the specified path.
        Specified by:
        getChar in interface ConfigureSection
        Parameters:
        path - The path to get the char.
        def - The default value to return if the path does not exist.
        Returns:
        The char if the path exists and is a char, otherwise the default value.
      • isString

        public boolean isString​(@NotNull
                                @NotNull java.lang.String path)
        Description copied from interface: ConfigureSection
        Predicate the value of given path is a String.
        Specified by:
        isString in interface ConfigureSection
        Parameters:
        path - The path to check.
        Returns:
        True if the value is present and is a string, false otherwise.
      • getString

        @Nullable
        public @Nullable java.lang.String getString​(@NotNull
                                                    @NotNull java.lang.String path)
        Description copied from interface: ConfigureSection
        Get the value as a String from the specified path.
        Specified by:
        getString in interface ConfigureSection
        Parameters:
        path - The path to get the string.
        Returns:
        The string if the path exists and is a string, otherwise null.
      • getString

        @Nullable
        public @Nullable java.lang.String getString​(@NotNull
                                                    @NotNull java.lang.String path,
                                                    @Nullable
                                                    @Nullable java.lang.String def)
        Description copied from interface: ConfigureSection
        Get the value as a String from the specified path.
        Specified by:
        getString in interface ConfigureSection
        Parameters:
        path - The path to get the string.
        def - The default value to return if the path does not exist.
        Returns:
        The string if the path exists and is a string, otherwise the default value.
      • getList

        @NotNull
        public <V> @NotNull java.util.List<V> getList​(@NotNull
                                                      @NotNull java.lang.String path,
                                                      @NotNull
                                                      @NotNull DataFunction<java.lang.Object,​V> parser)
        Description copied from interface: ConfigureSection
        Get a list of values from the section

        If the path does not exist, an empty list will be returned
        Any changes please use ConfigureSection.set(String, Object) after changes

        Specified by:
        getList in interface ConfigureSection
        Type Parameters:
        V - The type of the values
        Parameters:
        path - The path to get the list from
        parser - The function to parse the values
        Returns:
        The list of values
      • getCollection

        @NotNull
        public <T,​C extends java.util.Collection<T>> C getCollection​(@NotNull
                                                                           @NotNull java.lang.String path,
                                                                           @NotNull
                                                                           @NotNull java.util.function.Supplier<C> constructor,
                                                                           @NotNull
                                                                           @NotNull DataFunction<java.lang.Object,​T> parser)
        Description copied from interface: ConfigureSection
        Get the specific type of collection from the section.
        Specified by:
        getCollection in interface ConfigureSection
        Type Parameters:
        T - The type of the values
        C - The type of the collection
        Parameters:
        path - The path to get the collection from
        constructor - The constructor of the collection
        parser - The function to parse the values
        Returns:
        The collection of values
      • stream

        @NotNull
        public @NotNull java.util.stream.Stream<?> stream​(@NotNull
                                                          @NotNull java.lang.String path)
        Description copied from interface: ConfigureSection
        Get the specific type of steam from the section.
        Specified by:
        stream in interface ConfigureSection
        Parameters:
        path - The path to get the stream from
        Returns:
        The stream of values
      • stream

        @NotNull
        public <T> @NotNull java.util.stream.Stream<T> stream​(@NotNull
                                                              @NotNull java.lang.String path,
                                                              @NotNull
                                                              @NotNull java.util.function.Function<java.lang.Object,​T> parser)
        Description copied from interface: ConfigureSection
        Get the specific type of steam from the section.
        Specified by:
        stream in interface ConfigureSection
        Type Parameters:
        T - The type of the values
        Parameters:
        path - The path to get the stream from
        parser - The function to parse the values
        Returns:
        The stream of values
      • childPath

        public java.lang.String childPath​(java.lang.String path)
        Specified by:
        childPath in interface ConfigureSection
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • equals

        public boolean equals​(java.lang.Object obj)
        Overrides:
        equals in class java.lang.Object