package com.l7tech.gateway.common.spring.remoting.http;

import com.l7tech.gateway.common.spring.remoting.ssl.SSLTrustFailureHandler;
import com.l7tech.util.Functions.NullaryThrows;
import org.jetbrains.annotations.Nullable;

public interface ConfigurableHttpInvokerRequestExecutor {
   <R, E extends Throwable> R doWithSession(String var1, int var2, @Nullable String var3, NullaryThrows<R, E> var4) throws E;

   <R, E extends Throwable> R doWithTrustFailureHandler(SSLTrustFailureHandler var1, NullaryThrows<R, E> var2) throws E;

   default <R, E extends Throwable> R doWithTrustFailureHandler(String var1, SSLTrustFailureHandler var2, NullaryThrows<R, E> var3) throws E {
      return this.doWithTrustFailureHandler(var2, var3);
   }
}
