Showing
1 changed file
with
23 additions
and
19 deletions
@@ -603,12 +603,13 @@ public class UnionServiceImpl implements IUnionService,ApplicationEventPublisher | @@ -603,12 +603,13 @@ public class UnionServiceImpl implements IUnionService,ApplicationEventPublisher | ||
603 | union_type = String.valueOf(unionTypeMatch.getUnionTypeMatch()); | 603 | union_type = String.valueOf(unionTypeMatch.getUnionTypeMatch()); |
604 | } | 604 | } |
605 | String bean =buffer.append("UnionServiceImpl").append("_").append(union_type).toString(); | 605 | String bean =buffer.append("UnionServiceImpl").append("_").append(union_type).toString(); |
606 | - IUnionService uniteService = null; | 606 | + final IUnionService uniteService; |
607 | if(SpringContextUtil.containsBean(bean)){ | 607 | if(SpringContextUtil.containsBean(bean)){ |
608 | uniteService = SpringContextUtil.getBean(bean, IUnionService.class); | 608 | uniteService = SpringContextUtil.getBean(bean, IUnionService.class); |
609 | url = uniteService.getCallbackUrl(click,request); | 609 | url = uniteService.getCallbackUrl(click,request); |
610 | }else{ | 610 | }else{ |
611 | url = unionService.getCallbackUrl(click,request); | 611 | url = unionService.getCallbackUrl(click,request); |
612 | + uniteService = null; | ||
612 | } | 613 | } |
613 | if (StringUtils.isEmpty(url)) { | 614 | if (StringUtils.isEmpty(url)) { |
614 | log.info("activateUnion in success request is {}", request); | 615 | log.info("activateUnion in success request is {}", request); |
@@ -624,13 +625,26 @@ public class UnionServiceImpl implements IUnionService,ApplicationEventPublisher | @@ -624,13 +625,26 @@ public class UnionServiceImpl implements IUnionService,ApplicationEventPublisher | ||
624 | url += "?identify_id=" + click.getIdentify_id(); | 625 | url += "?identify_id=" + click.getIdentify_id(); |
625 | } | 626 | } |
626 | activeUnion.info("activateUnion in call url={}", url); | 627 | activeUnion.info("activateUnion in call url={}", url); |
627 | - //改成httpclient方式调用 | ||
628 | - Pair<Integer, String> pair; | ||
629 | - if (uniteService != null) { | ||
630 | - pair = uniteService.visitCallbackUrl(url); | ||
631 | - } else { | ||
632 | - pair = visitCallbackUrl(url); | ||
633 | - } | 628 | + final String finalUrl = url; |
629 | + final String finalUnionType = union_type; | ||
630 | + // 改成httpclient方式调用:异步 | ||
631 | + taskExecutor.execute(() -> { | ||
632 | + Pair<Integer, String> pair; | ||
633 | + if (uniteService != null) { | ||
634 | + pair = uniteService.visitCallbackUrl(finalUrl); | ||
635 | + } else { | ||
636 | + pair = visitCallbackUrl(finalUrl); | ||
637 | + } | ||
638 | + activeUnion.info("activateUnion call union success url={}, and result={}", finalUrl, pair); | ||
639 | + if (pair.getLeft() != 200) { | ||
640 | + log.warn("callback error with request={}", request); | ||
641 | + return; | ||
642 | + } | ||
643 | + // 如果来源是广点通,则把广点通的一些信息记入表,给之后做转化上报使用 | ||
644 | + if (finalUnionType.equals("3")) { | ||
645 | + saveUnionActivity(click, request); | ||
646 | + } | ||
647 | + }); | ||
634 | 648 | ||
635 | try{ | 649 | try{ |
636 | UnionCallbackLogs unionCallbackLogs = new UnionCallbackLogs(); | 650 | UnionCallbackLogs unionCallbackLogs = new UnionCallbackLogs(); |
@@ -640,23 +654,13 @@ public class UnionServiceImpl implements IUnionService,ApplicationEventPublisher | @@ -640,23 +654,13 @@ public class UnionServiceImpl implements IUnionService,ApplicationEventPublisher | ||
640 | unionCallbackLogs.setUrl(url); | 654 | unionCallbackLogs.setUrl(url); |
641 | unionCallbackLogs.setIdfa(request.getIdfa()); | 655 | unionCallbackLogs.setIdfa(request.getIdfa()); |
642 | unionCallbackLogs.setImei(request.getImei()); | 656 | unionCallbackLogs.setImei(request.getImei()); |
643 | - int code = pair.getLeft(); | 657 | + int code = 200 /*pair.getLeft()*/; |
644 | unionCallbackLogs.setResult(String.valueOf(code)); | 658 | unionCallbackLogs.setResult(String.valueOf(code)); |
645 | unionCallbackLogs.setCreatetime(DateUtils.getCurrentTimeSecond()); | 659 | unionCallbackLogs.setCreatetime(DateUtils.getCurrentTimeSecond()); |
646 | saveUnionCallbackLogs(unionCallbackLogs); | 660 | saveUnionCallbackLogs(unionCallbackLogs); |
647 | }catch (Exception e){ | 661 | }catch (Exception e){ |
648 | log.warn("save union_callback_logs e={}", e.getMessage()); | 662 | log.warn("save union_callback_logs e={}", e.getMessage()); |
649 | } | 663 | } |
650 | - | ||
651 | - activeUnion.info("activateUnion call union success url={}, and result={}", url, pair); | ||
652 | - if (pair.getLeft() != 200) { | ||
653 | - log.warn("callback error with request={}", request); | ||
654 | - return new UnionResponse(200, "callback error",result); | ||
655 | - } | ||
656 | - //如果来源是广点通,则把广点通的一些信息记入表,给之后做转化上报使用 | ||
657 | - if(union_type.equals("3")){ | ||
658 | - saveUnionActivity(click,request); | ||
659 | - } | ||
660 | } catch (Exception e) { | 664 | } catch (Exception e) { |
661 | log.error("callback error with request={}", request, e); | 665 | log.error("callback error with request={}", request, e); |
662 | //return new UnionResponse(204, "callback error"); | 666 | //return new UnionResponse(204, "callback error"); |
-
Please register or login to post a comment