Class DataContainerBuilder<S extends DataContainerBuilder<S,​T,​D>,​T extends DataContainer<D>,​D>

  • All Implemented Interfaces:
    java.util.function.Supplier<java.util.concurrent.CompletableFuture<T>>, org.comroid.api.Builder<T>, org.comroid.api.Provider<T>, org.comroid.api.Provider.Now<T>, org.comroid.api.SelfDeclared<S>

    public abstract class DataContainerBuilder<S extends DataContainerBuilder<S,​T,​D>,​T extends DataContainer<D>,​D>
    extends java.lang.Object
    implements org.comroid.api.Builder<T>, org.comroid.api.SelfDeclared<S>
    • Nested Class Summary

      • Nested classes/interfaces inherited from interface org.comroid.api.Provider

        org.comroid.api.Provider.Now<T extends java.lang.Object>, org.comroid.api.Provider.Support
    • Constructor Summary

      Constructors 
      Constructor Description
      DataContainerBuilder​(java.lang.Class<T> type, D dependencyObject)  
    • Method Summary

      All Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method Description
      T build()  
      protected abstract T mergeVarCarrier​(DataContainer<D> dataContainer)  
      <V> S with​(VarBind<V,​? super D,​?,​?> bind, V value)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      • Methods inherited from interface org.comroid.api.Builder

        now
      • Methods inherited from interface org.comroid.api.Provider.Now

        get, isInstant
      • Methods inherited from interface org.comroid.api.SelfDeclared

        self
    • Constructor Detail

      • DataContainerBuilder

        public DataContainerBuilder​(java.lang.Class<T> type,
                                    @Nullable
                                    D dependencyObject)
    • Method Detail

      • with

        public final <V> S with​(VarBind<V,​? super D,​?,​?> bind,
                                V value)
      • build

        public final T build()
        Specified by:
        build in interface org.comroid.api.Builder<S extends DataContainerBuilder<S,​T,​D>>
      • mergeVarCarrier

        protected abstract T mergeVarCarrier​(DataContainer<D> dataContainer)