
io.vertx.up.uca.rs.mime.parse.EpsilonIncome Maven / Gradle / Ivy
package io.vertx.up.uca.rs.mime.parse;
import io.vertx.ext.web.RoutingContext;
import io.vertx.up.atom.Epsilon;
import io.vertx.up.atom.agent.Event;
import io.vertx.up.eon.ID;
import io.vertx.up.eon.Values;
import io.vertx.up.exception.WebException;
import io.vertx.up.fn.Fn;
import io.vertx.up.log.Annal;
import io.vertx.up.runtime.ZeroSerializer;
import io.vertx.up.uca.rs.Filler;
import io.vertx.up.util.Ut;
import javax.ws.rs.DefaultValue;
import java.lang.annotation.Annotation;
import java.lang.reflect.Method;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.ConcurrentMap;
import java.util.stream.Collectors;
/**
* Help to extract epsilon
*/
public class EpsilonIncome implements Income>> {
private static final Annal LOGGER = Annal.get(EpsilonIncome.class);
private static final ConcurrentMap> POOL_ATOMIC = new ConcurrentHashMap<>();
@Override
public List> in(final RoutingContext context,
final Event event)
throws WebException {
final Method method = event.getAction();
final Class>[] paramTypes = method.getParameterTypes();
final Annotation[][] annoTypes = method.getParameterAnnotations();
final List> args = new ArrayList<>();
for (int idx = 0; idx < paramTypes.length; idx++) {
/* For each field specification **/
final Epsilon
© 2015 - 2025 Weber Informatics LLC | Privacy Policy