CtrlK
BlogDocsLog inGet started
Tessl Logo

tessl/maven-io-quarkus--quarkus-bom

Cloud Native, Container First Java framework for building efficient Java applications with fast startup times and low memory usage

Pending
Overview
Eval results
Files

reactive-programming.mddocs/

Reactive Programming

Quarkus provides reactive programming support with Mutiny, reactive messaging, and event-driven architecture for building scalable asynchronous applications.

Mutiny Reactive Types

Uni Type

public class Uni<T> {
    public static <T> Uni<T> createFrom();
    public Uni<Void> subscribe();
    public <R> Uni<R> map(Function<? super T, ? extends R> mapper);
    public <R> Uni<R> flatMap(Function<? super T, Uni<? extends R>> mapper);
    public Uni<T> onFailure(Class<? extends Throwable> typeOfFailure);
}

Represents a single asynchronous value or failure.

Multi Type

public class Multi<T> {
    public static <T> Multi<T> createFrom();
    public Multi<T> filter(Predicate<? super T> predicate);
    public <R> Multi<R> map(Function<? super T, ? extends R> mapper);
    public Multi<T> onItem();
}

Represents a stream of asynchronous values.

Reactive Messaging

Message Annotations

@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
public @interface Incoming {
    String value();
}

@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
public @interface Outgoing {
    String value();
}

Annotations for reactive message processing.

Usage Example:

@ApplicationScoped
public class MessageProcessor {
    
    @Incoming("input-channel")
    @Outgoing("output-channel")
    public String process(String message) {
        return message.toUpperCase();
    }
}

Install with Tessl CLI

npx tessl i tessl/maven-io-quarkus--quarkus-bom

docs

cdi-dependency-injection.md

configuration.md

core-runtime.md

data-persistence.md

index.md

reactive-programming.md

rest-web-services.md

scheduling.md

security.md

testing.md

tile.json