org.zalando.riptide.soap.SOAPRoute Maven / Gradle / Ivy
package org.zalando.riptide.soap;
import org.zalando.fauxpas.ThrowingConsumer;
import org.zalando.riptide.Route;
import javax.xml.soap.SOAPFault;
import javax.xml.ws.soap.SOAPFaultException;
import static org.springframework.http.HttpStatus.INTERNAL_SERVER_ERROR;
import static org.springframework.http.HttpStatus.OK;
import static org.zalando.riptide.Bindings.on;
import static org.zalando.riptide.Navigators.status;
import static org.zalando.riptide.Route.call;
import static org.zalando.riptide.RoutingTree.dispatch;
public final class SOAPRoute {
private SOAPRoute() {
}
public static Route soap(
final Class type,
final ThrowingConsumer consumer) {
return soap(call(type, consumer));
}
public static Route soap(final Route route) {
return dispatch(status(),
on(OK).call(route),
on(INTERNAL_SERVER_ERROR).call(SOAPFault.class, fault -> {
throw new SOAPFaultException(fault);
}));
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy