当前位置: 首页 > wzjs >正文

网站免费建站广告机黄冈推广平台

网站免费建站广告机,黄冈推广平台,海口网红,wordpress修改code标签jira超时时间没有提供公开接口配置,那只能上魔改了 一般来说也就是三样,继承 放射 改源码 一、找代码定义 先看常见的创建client的代码 JiraRestClient restClient AsynchronousJiraRestClientFactory().createWithBasicHttpAuthentication(jiraServ…

jira超时时间没有提供公开接口配置,那只能上魔改了
一般来说也就是三样,继承 放射 改源码

一、找代码定义

先看常见的创建client的代码

JiraRestClient restClient = AsynchronousJiraRestClientFactory().createWithBasicHttpAuthentication(jiraServerUri, username, password);

跟踪实现代码

 @Overridepublic JiraRestClient createWithBasicHttpAuthentication(final URI serverUri, final String username, final String password) {return create(serverUri, new BasicHttpAuthenticationHandler(username, password));}

实际调用上面的方法

 @Overridepublic JiraRestClient create(final URI serverUri, final AuthenticationHandler authenticationHandler) {final DisposableHttpClient httpClient = new AsynchronousHttpClientFactory().createClient(serverUri, authenticationHandler);return new AsynchronousJiraRestClient(serverUri, httpClient);}

这个里面有个AsynchronousHttpClientFactory.createClient
点进去定义如下

public DisposableHttpClient createClient(final URI serverUri, final AuthenticationHandler authenticationHandler) {final HttpClientOptions options = new HttpClientOptions();final DefaultHttpClientFactory defaultHttpClientFactory = new DefaultHttpClientFactory(new NoOpEventPublisher(),new RestClientApplicationProperties(serverUri),new ThreadLocalContextManager() {@Overridepublic Object getThreadLocalContext() {return null;}@Overridepublic void setThreadLocalContext(Object context) {}@Overridepublic void clearThreadLocalContext() {}});final HttpClient httpClient = defaultHttpClientFactory.create(options);return new AtlassianHttpClientDecorator(httpClient, authenticationHandler) {@Overridepublic void destroy() throws Exception {defaultHttpClientFactory.dispose(httpClient);}};}

代码里的HttpClientOptions 这个类就是用来定义超时间的

    private long connectionTimeout = 5 * 1000;private long socketTimeout = 20 * 1000;private long requestTimeout = 30 * 3000;

二、魔改实现设置超时时间

改造超时时间,这里使用继承

定义CustomAsynchronousJiraRestClientFactory继承AsynchronousJiraRestClientFactory支持传入HttpClientOptions

CustomAsynchronousJiraRestClientFactory.java

import com.atlassian.httpclient.api.factory.HttpClientOptions;
import com.atlassian.jira.rest.client.internal.async.AsynchronousJiraRestClientFactory;public class CustomAsynchronousJiraRestClientFactory extends AsynchronousJiraRestClientFactory {private final HttpClientOptions options;public CustomAsynchronousJiraRestClientFactory(HttpClientOptions options) {super();this.options = options;}protected HttpClientOptions createHttpClientOptions() {return options;}
}

自定义JiraClientFactory,创建时将options传入上面的factory,后续无差别

JiraClientFactory.java

import com.atlassian.httpclient.api.factory.HttpClientOptions;
import com.atlassian.jira.rest.client.api.JiraRestClient;import java.net.URI;
import java.util.concurrent.TimeUnit;public class JiraClientFactory {public static JiraRestClient createJiraRestClient(String jiraUrl, String username, String password) {URI uri = URI.create(jiraUrl);// 创建自定义的 HttpClientOptionsHttpClientOptions options = createCustomHttpClientOptions();// 创建 CustomAsynchronousJiraRestClientFactory 实例并传递 HttpClientOptionsCustomAsynchronousJiraRestClientFactory factory = new CustomAsynchronousJiraRestClientFactory(options);// 创建 JiraRestClientreturn factory.createWithBasicHttpAuthentication(uri, username, password);}public static HttpClientOptions createCustomHttpClientOptions() {HttpClientOptions options = new HttpClientOptions();options.setConnectionTimeout(10, TimeUnit.SECONDS); // 设置连接超时时间为10秒options.setSocketTimeout(30, TimeUnit.SECONDS);     // 设置读取超时时间为30秒options.setRequestTimeout(60, TimeUnit.SECONDS);     // 设置请求超时时间为60秒return options;}}

调用示例

JiraRestClient jiraRestClient1 = JiraClientFactory.createJiraRestClient(jiraUrl, jiraUsername, jiraPassword);

http://www.dtcms.com/wzjs/832603.html

相关文章:

  • 网站游戏怎么制作长春市防疫最新消息数据
  • 四川省乐山市建设银行网站wordpress站点标题字数
  • 总结企业网站建设的流程php 简单购物网站
  • 企业网站带数据库dw做的网站
  • 东莞seo建站推广费用全球首个完全响应式网站自助建设平台在中国诞生
  • 广州品牌网站运营个网站需要什么条件
  • 沈阳平台网站建设江苏建设考试网官网
  • 发卡网站搭建教程模板素材图片
  • 站酷设计网站官网入口下载中国建筑工业出版社
  • 麻涌网站仿做wordpress最漂亮主题
  • 美食网站建设的重要性wordpress 增加 SEO
  • 网站初期缺点建站系统哪个比较好
  • 北京网站建设appwordpress网站建设要钱吗
  • 怎么用word做一个网站微信网站技术方案
  • 专门做汽车内饰的网站百度关键词价格查询软件
  • 重庆展示型网站制作群晖 wordpress 端口 转发
  • 手机搭建平台网站wordpress logo不显示
  • 自助建站申请自己建网站写小说
  • 网站设计工资怎么样wordpress添加dplayer
  • 手机管理网站天元建设集团有限公司简介
  • nodejs可以做网站吗dw网页设计免费下载
  • wordpress技术站主题wordpress 关闭伪静态
  • 宝宝投票网站怎么做的长沙商城网站制作
  • 周口市住房和城乡建设局网站wordpress如何更换域名
  • 电子商务网站特点网站建设价类型
  • phpcms做视频网站首页怎么删除安装wordpress
  • 在线网站seo诊断我朋友是做卖网站的
  • 更新网站的步骤app下载安装官方网站
  • 手机网站地址十大SEO网站外链建设误区
  • 上海网站推广网站开发教程pdf