Newer
Older
commitconf24 / snippets / MovieResponse.java
import java.util.UUID;

sealed interface MovieResponse {
    record MovieCreated(UUID id) implements MovieResponse {}
    sealed interface MovieError extends MovieResponse {
        record DuplicatedMovie(UUID id) implements MovieError {}
        record InvalidDuration(int duration) implements MovieError {}
        record InvalidYear(int year) implements MovieError {}
        record InvalidStars(int stats) implements MovieError {}
        record EmptyTitle() implements MovieError {}
        record EmptyDirector() implements MovieError {}
        record EmptyCast() implements MovieError {}
        record DuplicatedActor(String actor) implements MovieError {}
    }
}