All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.vertx.up.uca.rs.mime.resolver.SolveResolver Maven / Gradle / Ivy

There is a newer version: 0.9.0
Show newest version
package io.vertx.up.uca.rs.mime.resolver;

import io.vertx.ext.web.RoutingContext;
import io.vertx.up.annotations.Contract;
import io.vertx.up.atom.Epsilon;
import io.vertx.up.exception.web._500InternalServerException;
import io.vertx.up.log.Annal;
import io.vertx.up.uca.rs.mime.Resolver;
import io.vertx.up.uca.rs.mime.Solve;

import java.util.Objects;

public class SolveResolver implements Resolver {

    private static final Annal LOGGER = Annal.get(SolveResolver.class);
    @Contract
    private transient Solve internalResolver;

    @Override
    public Epsilon resolve(final RoutingContext context, final Epsilon income) {
        if (Objects.isNull(this.internalResolver)) {
            throw new _500InternalServerException(this.getClass(), "Solve instance is null");
        } else {
            // Default content from `context`
            final String content = context.getBodyAsString();
            LOGGER.info("( Resolver ) Solve Type: {0}, Content = {1}",
                this.internalResolver.getClass(), content);
            final T processed = this.internalResolver.resolve(content);
            income.setValue(processed);
        }
        return income;
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy