Module com.speedment.runtime.join
Interface JoinBuilder4<T0,T1,T2,T3>
-
- Type Parameters:
T0- the first entity typeT1- the second entity typeT2- the third entity typeT3- the fourth entity type
- All Superinterfaces:
HasDefaultBuild<com.speedment.common.tuple.nullable.Tuple4OfNullables<T0,T1,T2,T3>>,HasJoins<JoinBuilder4.AfterJoin<T0,T1,T2,T3,?>,JoinBuilder5<T0,T1,T2,T3,?>>,HasWhere<T3,JoinBuilder4<T0,T1,T2,T3>>
public interface JoinBuilder4<T0,T1,T2,T3> extends HasJoins<JoinBuilder4.AfterJoin<T0,T1,T2,T3,?>,JoinBuilder5<T0,T1,T2,T3,?>>, HasWhere<T3,JoinBuilder4<T0,T1,T2,T3>>, HasDefaultBuild<com.speedment.common.tuple.nullable.Tuple4OfNullables<T0,T1,T2,T3>>
Join Builder stage used when only 4 tables has been specified so far.- Since:
- 3.1.1
- Author:
- Per Minborg, Emil Forslund
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description default Join<com.speedment.common.tuple.nullable.Tuple4OfNullables<T0,T1,T2,T3>>build()Creates and returns a new Join object where elements in the Join object's stream method is of a defaultTupletype.<T> Join<T>build(QuadFunction<T0,T1,T2,T3,T> constructor)Creates and returns a new Join object where elements in the Join object's stream method is created using the providedconstructor.<T4> JoinBuilder5<T0,T1,T2,T3,T4>crossJoin(com.speedment.runtime.config.identifier.TableIdentifier<T4> joinedTable)Adds the providedjoinedTableto the collection of joined tables.<T4> JoinBuilder4.AfterJoin<T0,T1,T2,T3,T4>innerJoinOn(com.speedment.runtime.field.trait.HasComparableOperators<T4,?> joinedField)Adds the providedjoinedFieldto the collection of joined column/tables.<T4> JoinBuilder4.AfterJoin<T0,T1,T2,T3,T4>leftJoinOn(com.speedment.runtime.field.trait.HasComparableOperators<T4,?> joinedField)Adds the providedjoinedFieldto the collection of joined column/tables.<T4> JoinBuilder4.AfterJoin<T0,T1,T2,T3,T4>rightJoinOn(com.speedment.runtime.field.trait.HasComparableOperators<T4,?> joinedField)Adds the providedjoinedFieldto the collection of joined column/tables.
-
-
-
Method Detail
-
innerJoinOn
<T4> JoinBuilder4.AfterJoin<T0,T1,T2,T3,T4> innerJoinOn(com.speedment.runtime.field.trait.HasComparableOperators<T4,?> joinedField)
Description copied from interface:HasJoinsAdds the providedjoinedFieldto the collection of joined column/tables. Elements are joined from the table of the providedjoinedFieldusing an INNER JOIN whereby rows from two tables are present only if there is a match between the joining columns. Thus, rows that do not have matches in the joining columns will not be present in the result.- Specified by:
innerJoinOnin interfaceHasJoins<T0,T1>- Type Parameters:
T4- entity type- Parameters:
joinedField- to add to the current join builder- Returns:
- a builder where the provided
joinedFieldis added
-
leftJoinOn
<T4> JoinBuilder4.AfterJoin<T0,T1,T2,T3,T4> leftJoinOn(com.speedment.runtime.field.trait.HasComparableOperators<T4,?> joinedField)
Description copied from interface:HasJoinsAdds the providedjoinedFieldto the collection of joined column/tables. Elements are joined from the table of the providedjoinedFieldusing an LEFT JOIN whereby rows from two tables are present either if there is a match between the joining columns or for each row from previously existing table(s).Unmatched rows will have entities from the table in the given
joinedFieldset tonull- Specified by:
leftJoinOnin interfaceHasJoins<T0,T1>- Type Parameters:
T4- entity type- Parameters:
joinedField- to add to the current join builder- Returns:
- a builder where the provided
joinedFieldis added
-
rightJoinOn
<T4> JoinBuilder4.AfterJoin<T0,T1,T2,T3,T4> rightJoinOn(com.speedment.runtime.field.trait.HasComparableOperators<T4,?> joinedField)
Description copied from interface:HasJoinsAdds the providedjoinedFieldto the collection of joined column/tables. Elements are joined from the table of the providedjoinedFieldusing an RIGHT JOIN whereby rows from two tables are present either if there is a match between the joining columns or for each row from the table for the providedjoinedField.Unmatched rows will have entities from the table in the given
joinedFieldset tonull- Specified by:
rightJoinOnin interfaceHasJoins<T0,T1>- Type Parameters:
T4- entity type- Parameters:
joinedField- to add to the current join builder- Returns:
- a builder where the provided
joinedFieldis added
-
crossJoin
<T4> JoinBuilder5<T0,T1,T2,T3,T4> crossJoin(com.speedment.runtime.config.identifier.TableIdentifier<T4> joinedTable)
Description copied from interface:HasJoinsAdds the providedjoinedTableto the collection of joined tables. Elements are joined from the table of the providedjoinedTableusing an CROSS JOIN whereby all combination of rows using all tables(s) are produced.
-
build
default Join<com.speedment.common.tuple.nullable.Tuple4OfNullables<T0,T1,T2,T3>> build()
Description copied from interface:HasDefaultBuildCreates and returns a new Join object where elements in the Join object's stream method is of a defaultTupletype.- Specified by:
buildin interfaceHasDefaultBuild<T0>- Returns:
- a new Join object where elements in the Join object's stream
method is of a default
Tupletype
-
build
<T> Join<T> build(QuadFunction<T0,T1,T2,T3,T> constructor)
Creates and returns a new Join object where elements in the Join object's stream method is created using the providedconstructor.- Type Parameters:
T- the type of element in the Join object's stream method.- Parameters:
constructor- to use to create stream elements.- Returns:
- a new Join object where elements in the Join object's stream
method is of a default
Tupletype - Throws:
NullPointerException- if the providedconstructorisnullIllegalStateException- if fields that are added via theon()method refers to tables that are not a part of the join.
-
-