View Javadoc

1   package com.atlassian.sal.core.net;
2   
3   import com.atlassian.sal.api.net.Request.MethodType;
4   import com.atlassian.sal.api.user.UserManager;
5   import com.atlassian.sal.core.trusted.CertificateFactory;
6   
7   import org.apache.http.client.protocol.HttpClientContext;
8   import org.apache.http.impl.client.CloseableHttpClient;
9   import org.slf4j.Logger;
10  import org.slf4j.LoggerFactory;
11  
12  /**
13   * Does NOT support json/xml oject marshalling. Use the atlassian-rest implementation of
14   * {@link com.atlassian.sal.api.net.RequestFactory} instead.
15   */
16  public class HttpClientTrustedRequestFactory extends HttpClientRequestFactory
17  {
18      private static final Logger log = LoggerFactory.getLogger(HttpClientTrustedRequestFactory.class);
19  
20      private final UserManager userManager;
21      private final CertificateFactory certificateFactory;
22  
23      public HttpClientTrustedRequestFactory(final UserManager userManager, final CertificateFactory certificateFactory)
24      {
25          this.userManager = userManager;
26          this.certificateFactory = certificateFactory;
27      }
28  
29      /* (non-Javadoc)
30           * @see com.atlassian.sal.api.net.RequestFactory#createMethod(com.atlassian.sal.api.net.Request.MethodType, java.lang.String)
31           */
32      public HttpClientTrustedRequest createTrustedRequest(final MethodType methodType, final String url)
33      {
34          final CloseableHttpClient httpClient = createHttpClient();
35          final HttpClientContext clientContext = createClientContext();
36          return new HttpClientTrustedRequest(userManager, certificateFactory, httpClient, clientContext, methodType, url);
37      }
38  }