1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package com.atlassian.jira.rest.client.internal.async;
17
18 import com.atlassian.httpclient.api.HttpClient;
19 import com.atlassian.jira.rest.client.api.AuthenticationHandler;
20 import com.atlassian.jira.rest.client.api.JiraRestClient;
21 import com.atlassian.jira.rest.client.api.JiraRestClientFactory;
22 import com.atlassian.jira.rest.client.auth.BasicHttpAuthenticationHandler;
23
24 import java.net.URI;
25
26
27
28
29
30
31 public class AsynchronousJiraRestClientFactory implements JiraRestClientFactory {
32
33 @Override
34 public JiraRestClient create(final URI serverUri, final AuthenticationHandler authenticationHandler) {
35 final DisposableHttpClient httpClient = new AsynchronousHttpClientFactory()
36 .createClient(serverUri, authenticationHandler);
37 return new AsynchronousJiraRestClient(serverUri, httpClient);
38 }
39
40 @Override
41 public JiraRestClient createWithBasicHttpAuthentication(final URI serverUri, final String username, final String password) {
42 return create(serverUri, new BasicHttpAuthenticationHandler(username, password));
43 }
44
45 @Override
46 public JiraRestClient create(final URI serverUri, final HttpClient httpClient) {
47 final DisposableHttpClient disposableHttpClient = new AsynchronousHttpClientFactory().createClient(httpClient);
48 return new AsynchronousJiraRestClient(serverUri, disposableHttpClient);
49 }
50 }