public <OUT> Join.WindowingBuilder<LEFT, RIGHT, KEY, OUT> using( BinaryFunctor<Optional<LEFT>, Optional<RIGHT>, OUT> functor) { final BinaryFunctor<LEFT, RIGHT, OUT> wrappedFunctor = (left, right, context) -> functor.apply(Optional.ofNullable(left), Optional.ofNullable(right), context); return new Join.WindowingBuilder<>(name, left, right, leftKeyExtractor, rightKeyExtractor, keyClass, wrappedFunctor, Join.Type.FULL); } }
public <OUT> Join.WindowingBuilder<LEFT, RIGHT, KEY, OUT> using( BinaryFunctor<Optional<LEFT>, Optional<RIGHT>, OUT> functor) { final BinaryFunctor<LEFT, RIGHT, OUT> wrappedFunctor = (left, right, context) -> functor.apply(Optional.ofNullable(left), Optional.ofNullable(right), context); return new Join.WindowingBuilder<>(name, left, right, leftKeyExtractor, rightKeyExtractor, keyClass, wrappedFunctor, Join.Type.FULL); } }
public <OUT> Join.WindowingBuilder<LEFT, RIGHT, KEY, OUT> using( BinaryFunctor<Optional<LEFT>, RIGHT, OUT> functor) { final BinaryFunctor<LEFT, RIGHT, OUT> wrappedFunctor = (left, right, context) -> functor.apply(Optional.ofNullable(left), right, context); return new Join.WindowingBuilder<>(name, left, right, leftKeyExtractor, rightKeyExtractor, keyClass, wrappedFunctor, Join.Type.RIGHT); } }
public <OUT> Join.WindowingBuilder<LEFT, RIGHT, KEY, OUT> using( BinaryFunctor<LEFT, RIGHT, OUT> functor) { return new Join.WindowingBuilder<>( name, left, right, leftKeyExtractor, rightKeyExtractor, keyClass, functor, Join.Type.INNER); } }
public <OUT> Join.WindowingBuilder<LEFT, RIGHT, KEY, OUT> using( BinaryFunctor<LEFT, RIGHT, OUT> functor) { return new Join.WindowingBuilder<>( name, left, right, leftKeyExtractor, rightKeyExtractor, keyClass, functor, Join.Type.INNER); } }
public <OUT> Join.WindowingBuilder<LEFT, RIGHT, KEY, OUT> using( BinaryFunctor<Optional<LEFT>, RIGHT, OUT> functor) { final BinaryFunctor<LEFT, RIGHT, OUT> wrappedFunctor = (left, right, context) -> functor.apply(Optional.ofNullable(left), right, context); return new Join.WindowingBuilder<>(name, left, right, leftKeyExtractor, rightKeyExtractor, keyClass, wrappedFunctor, Join.Type.RIGHT); } }
public <OUT> Join.WindowingBuilder<LEFT, RIGHT, KEY, OUT> using( BinaryFunctor<LEFT, Optional<RIGHT>, OUT> functor) { final BinaryFunctor<LEFT, RIGHT, OUT> wrappedFunctor = (left, right, context) -> functor.apply(left, Optional.ofNullable(right), context); return new Join.WindowingBuilder<>(name, left, right, leftKeyExtractor, rightKeyExtractor, keyClass, wrappedFunctor, Join.Type.LEFT); } }
public <OUT> Join.WindowingBuilder<LEFT, RIGHT, KEY, OUT> using( BinaryFunctor<LEFT, Optional<RIGHT>, OUT> functor) { final BinaryFunctor<LEFT, RIGHT, OUT> wrappedFunctor = (left, right, context) -> functor.apply(left, Optional.ofNullable(right), context); return new Join.WindowingBuilder<>(name, left, right, leftKeyExtractor, rightKeyExtractor, keyClass, wrappedFunctor, Join.Type.LEFT); } }