Class GroupBind<T extends DataContainer<? extends D>,​D>


  • public final class GroupBind<T extends DataContainer<? extends D>,​D>
    extends java.lang.Object
    • Constructor Summary

      Constructors 
      Constructor Description
      GroupBind​(org.comroid.uniform.SerializationAdapter<?,​?,​?> serializationAdapter, java.lang.String groupName)  
      GroupBind​(org.comroid.uniform.SerializationAdapter<?,​?,​?> serializationAdapter, java.lang.String groupName, java.lang.Class<T> constructorClass)  
      GroupBind​(org.comroid.uniform.SerializationAdapter<?,​?,​?> serializationAdapter, java.lang.String groupName, org.comroid.api.Invocable<? super T> invocable)  
    • Constructor Detail

      • GroupBind

        public GroupBind​(org.comroid.uniform.SerializationAdapter<?,​?,​?> serializationAdapter,
                         java.lang.String groupName)
      • GroupBind

        public GroupBind​(org.comroid.uniform.SerializationAdapter<?,​?,​?> serializationAdapter,
                         java.lang.String groupName,
                         java.lang.Class<T> constructorClass)
      • GroupBind

        public GroupBind​(org.comroid.uniform.SerializationAdapter<?,​?,​?> serializationAdapter,
                         java.lang.String groupName,
                         org.comroid.api.Invocable<? super T> invocable)
    • Method Detail

      • getDirectChildren

        public java.util.List<? extends VarBind<?,​D,​?,​?>> getDirectChildren()
      • getConstructor

        public java.util.Optional<org.comroid.api.Invocable<? super T>> getConstructor()
      • getName

        public java.lang.String getName()
      • getParents

        public org.comroid.mutatio.span.Span<GroupBind<? super T,​D>> getParents()
      • getSubgroups

        public java.util.Collection<GroupBind<? extends T,​D>> getSubgroups()
      • combine

        public static <T extends DataContainer<? extends D>,​D> GroupBind<T,​D> combine​(java.lang.String groupName,
                                                                                                  GroupBind<?,​D>... parents)
      • combine

        public static <T extends DataContainer<? extends D>,​D> GroupBind<T,​D> combine​(java.lang.String groupName,
                                                                                                  org.comroid.api.Invocable<? super T> invocable,
                                                                                                  GroupBind<?,​D>... parents)
      • toString

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

        public java.util.Optional<GroupBind<? extends T,​D>> findGroupForData​(org.comroid.uniform.node.UniObjectNode data)
      • isValidData

        public boolean isValidData​(org.comroid.uniform.node.UniObjectNode data)
      • streamAllChildren

        public java.util.stream.Stream<? extends VarBind<?,​D,​?,​?>> streamAllChildren()
      • autoConstructor

        public org.comroid.api.Invocable<? super T> autoConstructor​(java.lang.Class<T> resultType,
                                                                    java.lang.Class<D> dependencyType)
      • subGroup

        public <R extends TGroupBind<R,​D> subGroup​(java.lang.String subGroupName)
      • subGroup

        public <R extends TGroupBind<R,​D> subGroup​(java.lang.String subGroupName,
                                                           java.lang.reflect.Constructor<? extends T> type)
      • subGroup

        public <R extends TGroupBind<R,​D> subGroup​(java.lang.String subGroupName,
                                                           org.comroid.api.Invocable<? super R> constructor)
      • createBind

        public BindBuilder<?,​D,​?,​?> createBind​(java.lang.String fieldName)
      • addChild

        @Internal
        public void addChild​(VarBind<?,​? super D,​?,​?> child)