Class BasicAuthWire

java.lang.Object
com.jcabi.http.wire.BasicAuthWire
All Implemented Interfaces:
Wire

@Immutable public final class BasicAuthWire extends Object implements Wire
Wire with HTTP basic authentication based on user info of URI.

This wire converts user info from URI into "Authorization" HTTP header, for example:

 String html = new JdkRequest("http://jeff:12345@example.com")
   .through(BasicAuthWire.class)
   .fetch()
   .body();

In this example, an additional HTTP header Authorization will be added with a value Basic amVmZjoxMjM0NQ==.

The class is immutable and thread-safe.

Since:
0.10
See Also:
  • Constructor Details

    • BasicAuthWire

      public BasicAuthWire(Wire wire)
      Public ctor.
      Parameters:
      wire - Original wire
  • Method Details

    • send

      public Response send(Request req, String home, String method, Collection<Map.Entry<String,String>> headers, InputStream content, int connect, int read) throws IOException
      Description copied from interface: Wire
      Send request and return response.
      Specified by:
      send in interface Wire
      Parameters:
      req - Request
      home - URI to fetch
      method - HTTP method
      headers - Headers
      content - HTTP body
      connect - The connect timeout
      read - The read timeout
      Returns:
      Response obtained
      Throws:
      IOException - if fails