Module com.speedment.runtime.join
Interface JoinBuilder2<T0,T1>
-
- Type Parameters:
T0- the first entity typeT1- the second entity type
- All Superinterfaces:
HasDefaultBuild<com.speedment.common.tuple.nullable.Tuple2OfNullables<T0,T1>>,HasJoins<JoinBuilder2.AfterJoin<T0,T1,?>,JoinBuilder3<T0,T1,?>>,HasWhere<T1,JoinBuilder2<T0,T1>>
public interface JoinBuilder2<T0,T1> extends HasJoins<JoinBuilder2.AfterJoin<T0,T1,?>,JoinBuilder3<T0,T1,?>>, HasWhere<T1,JoinBuilder2<T0,T1>>, HasDefaultBuild<com.speedment.common.tuple.nullable.Tuple2OfNullables<T0,T1>>
Join Builder stage used when only 2 tables has been specified so far.- Since:
- 3.1.1
- Author:
- Per Minborg, Emil Forslund
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static interfaceJoinBuilder2.AfterJoin<T0,T1,T2>
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description default Join<com.speedment.common.tuple.nullable.Tuple2OfNullables<T0,T1>>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(BiFunction<T0,T1,T> constructor)Creates and returns a new Join object where elements in the Join object's stream method is created using the providedconstructor.<T2> JoinBuilder3<T0,T1,T2>crossJoin(com.speedment.runtime.config.identifier.TableIdentifier<T2> joinedTable)Adds the providedjoinedTableto the collection of joined tables.<T2> JoinBuilder2.AfterJoin<T0,T1,T2>innerJoinOn(com.speedment.runtime.field.trait.HasComparableOperators<T2,?> joinedField)Adds the providedjoinedFieldto the collection of joined column/tables.<T2> JoinBuilder2.AfterJoin<T0,T1,T2>leftJoinOn(com.speedment.runtime.field.trait.HasComparableOperators<T2,?> joinedField)Adds the providedjoinedFieldto the collection of joined column/tables.<T2> JoinBuilder2.AfterJoin<T0,T1,T2>rightJoinOn(com.speedment.runtime.field.trait.HasComparableOperators<T2,?> joinedField)Adds the providedjoinedFieldto the collection of joined column/tables.
-
-
-
Method Detail
-
innerJoinOn
<T2> JoinBuilder2.AfterJoin<T0,T1,T2> innerJoinOn(com.speedment.runtime.field.trait.HasComparableOperators<T2,?> 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:
T2- entity type- Parameters:
joinedField- to add to the current join builder- Returns:
- a builder where the provided
joinedFieldis added
-
leftJoinOn
<T2> JoinBuilder2.AfterJoin<T0,T1,T2> leftJoinOn(com.speedment.runtime.field.trait.HasComparableOperators<T2,?> 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:
T2- entity type- Parameters:
joinedField- to add to the current join builder- Returns:
- a builder where the provided
joinedFieldis added
-
rightJoinOn
<T2> JoinBuilder2.AfterJoin<T0,T1,T2> rightJoinOn(com.speedment.runtime.field.trait.HasComparableOperators<T2,?> 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:
T2- entity type- Parameters:
joinedField- to add to the current join builder- Returns:
- a builder where the provided
joinedFieldis added
-
crossJoin
<T2> JoinBuilder3<T0,T1,T2> crossJoin(com.speedment.runtime.config.identifier.TableIdentifier<T2> 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.Tuple2OfNullables<T0,T1>> 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(BiFunction<T0,T1,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 providedconstructorisnull
-
-