Don't fork me!

1. Introduction

2. intro

combine streams with: Flux.merge, Flux.zip, Flux.first, …​

create streams with: Flux.just, Flux.fromIterable, Flux.range, Flux.interval, …​

transform streams with: Flux.skip, Flux.map, Flux.flatMap, Flux.filter

docker / docker-compose
./mvnw
./mvnw package docker-compose:up -P docker
./mvnw docker-compose:down -P docker

./gradlew
./gradlew composeUp
./gradlew composeDown

3. Implementations

links:

build
package daggerok;

import lombok.extern.slf4j.Slf4j;
import reactor.core.publisher.Flux;

@Slf4j
public class App {
  public static void main(String[] args) {
    Flux.range(0, 10)
        .map(integer -> integer * integer)
        .filter(integer -> integer % 3 != 0)
        .buffer(3)
        .subscribe(integers -> log.info("result: {}", integers));
  }
}
build
./mvnw -p ./map-filter-buffer/pom.xml
java -jar ./map-filter-buffer/target/*-all.jar

# gradle jar
./gradlew -b ./map-filter-buffer/build.gradle
java -jar ./map-filter-buffer/build/libs/*-all.jar
build
package daggerok;

import lombok.extern.slf4j.Slf4j;
import reactor.core.publisher.Flux;

@Slf4j
public class App {
  public static void main(String[] args) {
    Flux.range(0, 10)
        .map(integer -> integer * integer)
        .filter(integer -> integer % 3 != 0)
        .retry()
        .subscribe(integers -> log.info("result: {}", integers));
  }
}
build
./mvnw -p ./map-filter-retry/pom.xml
java -jar ./map-filter-retry/target/*-all.jar

# gradle jar
./gradlew -b ./map-filter-retry/build.gradle
java -jar ./map-filter-retry/build/libs/*-all.jar