Class ConfigValueMap<K,​V,​S>

    • Field Detail

      • supplier

        @NotNull
        protected final @NotNull java.util.function.Supplier<? extends java.util.Map<K,​V>> supplier
      • sourceClass

        @NotNull
        protected final @NotNull java.lang.Class<? super S> sourceClass
      • keyClass

        @NotNull
        protected final @NotNull java.lang.Class<K> keyClass
      • valueClass

        @NotNull
        protected final @NotNull java.lang.Class<V> valueClass
      • keyParser

        @NotNull
        protected final @NotNull ConfigDataFunction<java.lang.String,​K> keyParser
      • keySerializer

        @NotNull
        protected final @NotNull ConfigDataFunction<K,​java.lang.String> keySerializer
      • valueSerializer

        @NotNull
        protected final @NotNull ConfigDataFunction<V,​java.lang.Object> valueSerializer
    • Constructor Detail

      • ConfigValueMap

        protected ConfigValueMap​(@NotNull
                                 @NotNull ValueManifest<java.util.Map<K,​V>> manifest,
                                 @NotNull
                                 @NotNull java.lang.Class<? super S> sourceClass,
                                 @NotNull
                                 @NotNull java.util.function.Supplier<? extends java.util.Map<K,​V>> mapObjSupplier,
                                 @NotNull
                                 @NotNull java.lang.Class<K> keyClass,
                                 @NotNull
                                 @NotNull ConfigDataFunction<java.lang.String,​K> keyParser,
                                 @NotNull
                                 @NotNull java.lang.Class<V> valueClass,
                                 @NotNull
                                 @NotNull ConfigDataFunction<S,​V> valueParser,
                                 @NotNull
                                 @NotNull ConfigDataFunction<K,​java.lang.String> keySerializer,
                                 @NotNull
                                 @NotNull ConfigDataFunction<V,​java.lang.Object> valueSerializer)
    • Method Detail

      • builderOf

        @NotNull
        public static <K,​V> @NotNull ConfigMapCreator<K,​V> builderOf​(@NotNull
                                                                                 @NotNull java.lang.Class<K> keyClass,
                                                                                 @NotNull
                                                                                 @NotNull java.lang.Class<V> valueClass)
      • getSourceClass

        @NotNull
        public @NotNull java.lang.Class<? super S> getSourceClass()
      • getKeyClass

        @NotNull
        public @NotNull java.lang.Class<K> getKeyClass()
      • getValueClass

        @NotNull
        public @NotNull java.lang.Class<V> getValueClass()
      • getKeyParser

        @NotNull
        public @NotNull ConfigDataFunction<java.lang.String,​K> getKeyParser()
      • getKeySerializer

        @NotNull
        public @NotNull ConfigDataFunction<K,​java.lang.String> getKeySerializer()
      • getValueSerializer

        @NotNull
        public @NotNull ConfigDataFunction<V,​java.lang.Object> getValueSerializer()
      • getSource

        public abstract S getSource​(ConfigurationWrapper<?> section,
                                    java.lang.String dataKey)
      • get

        @NotNull
        public @NotNull java.util.Map<K,​V> get()
        Description copied from class: ConfigValue
        得到该配置的设定值(即读取到的值)。
        若初始化时未写入默认值,则可以通过 ConfigValue.getOrDefault() 方法在该设定值为空时获取默认值。
        Specified by:
        get in class ConfigValue<java.util.Map<K,​V>>
        Returns:
        设定值
      • get

        public V get​(java.lang.Object key)
        Specified by:
        get in interface java.util.Map<K,​V>
      • getNotNull

        public V getNotNull​(java.lang.Object key)
      • set

        public void set​(@Nullable
                        @Nullable java.util.Map<K,​V> value)
        Description copied from class: ConfigValue
        设定该配置的值。
        设定后,不会自动保存配置文件;若需要保存,请调用 ConfigurationProvider.save() 方法。
        Specified by:
        set in class ConfigValue<java.util.Map<K,​V>>
        Parameters:
        value - 配置的值
      • modifyValue

        @NotNull
        public <T> T modifyValue​(java.util.function.Function<java.util.Map<K,​V>,​T> function)
      • modifyMap

        @NotNull
        public @NotNull java.util.Map<K,​V> modifyMap​(java.util.function.Consumer<java.util.Map<K,​V>> consumer)
      • size

        public int size()
        Specified by:
        size in interface java.util.Map<K,​V>
      • isEmpty

        public boolean isEmpty()
        Specified by:
        isEmpty in interface java.util.Map<K,​V>
      • containsKey

        public boolean containsKey​(java.lang.Object key)
        Specified by:
        containsKey in interface java.util.Map<K,​V>
      • containsValue

        public boolean containsValue​(java.lang.Object value)
        Specified by:
        containsValue in interface java.util.Map<K,​V>
      • put

        @Nullable
        public V put​(K key,
                     V value)
        Specified by:
        put in interface java.util.Map<K,​V>
      • remove

        public V remove​(java.lang.Object key)
        Specified by:
        remove in interface java.util.Map<K,​V>
      • putAll

        public void putAll​(@NotNull
                           @NotNull java.util.Map<? extends K,​? extends V> m)
        Specified by:
        putAll in interface java.util.Map<K,​V>
      • clear

        public void clear()
        Specified by:
        clear in interface java.util.Map<K,​V>
      • keySet

        @NotNull
        public @NotNull java.util.Set<K> keySet()
        Specified by:
        keySet in interface java.util.Map<K,​V>
      • values

        @NotNull
        public @NotNull java.util.Collection<V> values()
        Specified by:
        values in interface java.util.Map<K,​V>
      • entrySet

        @NotNull
        public @NotNull @Unmodifiable java.util.Set<java.util.Map.Entry<K,​V>> entrySet()
        Specified by:
        entrySet in interface java.util.Map<K,​V>