Class ProcessingSettings


  • public class ProcessingSettings
    extends java.lang.Object
    Task processing settings.
    Since:
    01.10.2021
    • Method Detail

      • getThreadCount

        @Nonnull
        public java.lang.Integer getThreadCount()
        Get number of threads for processing tasks in the queue.
        Returns:
        Number of processing threads.
      • getProcessingMode

        @Nonnull
        public ProcessingMode getProcessingMode()
        Get task processing mode in the queue.
        Returns:
        Task processing mode.
      • builder

        public static ProcessingSettings.Builder builder()
        Create a new builder for processing settings.
        Returns:
        A new builder for processing settings.
      • getName

        @Nonnull
        protected java.lang.String getName()
        Name of setting
        Returns:
        name
      • getDiffEvaluator

        @Nonnull
        protected java.util.function.BiFunction<ProcessingSettings,​ProcessingSettings,​java.lang.String> getDiffEvaluator()
        Function evaluates difference between new and old value. 1st argument - old value, 2nd argument - new value.
        Returns:
        difference between two values
      • getThis

        @Nonnull
        protected ProcessingSettings getThis()
        Return typed reference of current object
        Returns:
        current object
      • copyFields

        protected void copyFields​(@Nonnull
                                  ProcessingSettings newValue)
        Copy fields of new object to current object.
        Parameters:
        newValue - new value
      • equals

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

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

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • setValue

        public final java.util.Optional<java.lang.String> setValue​(@Nonnull
                                                                   T newValue)
        Sets new value for current setting. Notifies observer when property is changed.
        Parameters:
        newValue - new value for setting
        Returns:
        diff between old value and new value. Returns empty object when no changes detected.
        See Also:
        DynamicSetting.registerObserver(BiConsumer)
      • registerObserver

        public final void registerObserver​(java.util.function.BiConsumer<T,​T> observer)
        Register observer to track setting changes.
        Parameters:
        observer - consumer which will be notified on property change. 1st argument - old value, 2nd argument - new value