Advertisement
Guest User

Untitled

a guest
Mar 10th, 2016
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.13 KB | None | 0 0
  1. package com.mycompany.testproject;
  2.  
  3. import java.io.IOException;
  4. import java.io.UnsupportedEncodingException;
  5. import javax.ws.rs.client.ClientBuilder;
  6. import javax.ws.rs.client.ClientRequestContext;
  7. import javax.ws.rs.client.ClientRequestFilter;
  8. import javax.ws.rs.client.Entity;
  9. import javax.ws.rs.client.WebTarget;
  10. import javax.ws.rs.core.MediaType;
  11. import javax.ws.rs.core.MultivaluedHashMap;
  12. import javax.ws.rs.core.MultivaluedMap;
  13. import javax.xml.bind.DatatypeConverter;
  14.  
  15. class Authenticator implements ClientRequestFilter {
  16.  
  17.     private final String user;
  18.     private final String password;
  19.  
  20.     public Authenticator(String user, String password) {
  21.         this.user = user;
  22.         this.password = password;
  23.     }
  24.  
  25.     @Override
  26.     public void filter(ClientRequestContext requestContext) throws IOException {
  27.         MultivaluedMap<String, Object> headers = requestContext.getHeaders();
  28.         final String basicAuthentication = getBasicAuthentication();
  29.         headers.add("Authorization", basicAuthentication);
  30.  
  31.     }
  32.  
  33.     private String getBasicAuthentication() {
  34.         String token = this.user + ":" + this.password;
  35.         try {
  36.             return "BASIC " + DatatypeConverter.printBase64Binary(token.getBytes("UTF-8"));
  37.         } catch (UnsupportedEncodingException ex) {
  38.             throw new IllegalStateException("Cannot encode with UTF-8", ex);
  39.         }
  40.     }
  41. }
  42.  
  43. public class App {
  44.  
  45.     public static void main(String[] args) throws Exception {
  46.  
  47.         WebTarget path = ClientBuilder.newClient()
  48.                 .target("https://api.mailgun.net/v3/samples.mailgun.org/messages")
  49.                 .register(new Authenticator("api", "key-3ax6xnjp29jd6fds4gc373sgvjxteol0"));
  50.  
  51.         MultivaluedMap<String, String> formData = new MultivaluedHashMap<>();
  52.         formData.add("from", "Formularz Kontaktowy <kontakt@reservly.com>");
  53.         formData.add("to", "tomaszdudzik.web@gmail.com");
  54.         formData.add("subject", "Temat wiadomości");
  55.         formData.add("text", "Treść wiadomości");
  56.  
  57.         path.request(MediaType.APPLICATION_FORM_URLENCODED).post(Entity.form(formData));
  58.     }
  59.  
  60. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement