Files
ffsaf-site/src/main/java/fr/titionfire/ffsaf/utils/JsonConsumer.java
2024-01-11 22:53:09 +01:00

29 lines
727 B
Java

package fr.titionfire.ffsaf.utils;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.core.TreeNode;
import java.util.function.Consumer;
import static fr.titionfire.ffsaf.net2.Client_Thread.MAPPER;
public class JsonConsumer<T> implements Consumer<T> {
private final Class<T> clazz;
private final Consumer<T> consumer;
public JsonConsumer(Class<T> clazz, Consumer<T> consumer){
this.clazz = clazz;
this.consumer = consumer;
}
public void castAndAccept (TreeNode message) throws JsonProcessingException {
this.accept(MAPPER.treeToValue(message, clazz));
}
@Override
public void accept(T t) {
consumer.accept(t);
}
}