package de.plushnikov.constructor;
import lombok.RequiredArgsConstructor;
import java.util.HashMap;
import java.util.Map;
public class RequiredArgsConstructorWithGeneric157 {
@RequiredArgsConstructor(staticName = "of")
private static class Foo<T, E extends Exception> {
private final Map<T, E> bar;
Map<T, E> buildBar() {
return bar;
}
}
public static void main(String[] args) {
Foo<String, IllegalArgumentException> foo = new Foo<>(new HashMap<String, IllegalArgumentException>());
System.out.println(foo);
HashMap<Integer, IllegalStateException> hashMap = new HashMap<>();
Foo<Integer, IllegalStateException> myFoo = Foo.of(hashMap);
Map<Integer, IllegalStateException> bar = myFoo.buildBar();
System.out.println(bar);
Foo<Integer, NullPointerException> exceptionFoo = Foo.of(new HashMap<Integer, NullPointerException>());
System.out.println(exceptionFoo.buildBar());
}
}