This is an automated email from the ASF dual-hosted git repository.

dpavlov pushed a commit to branch ignite-10930
in repository https://gitbox.apache.org/repos/asf/ignite-teamcity-bot.git


The following commit(s) were added to refs/heads/ignite-10930 by this push:
     new 61d1ed0  IGNITE-10930: PR-less contributions: refactoring to use 
Ignited service
61d1ed0 is described below

commit 61d1ed0b0e3aa733cf150acef992d88c6b6887ec
Author: Dmitriy Pavlov <dpav...@apache.org>
AuthorDate: Tue Jan 15 13:24:41 2019 +0300

    IGNITE-10930: PR-less contributions: refactoring to use Ignited service
---
 .../ignite/ci/jira/ignited/IJiraIgnited.java       | 10 +++++++
 .../apache/ignite/ci/jira/ignited/JiraIgnited.java |  7 +++++
 .../ignite/ci/jira/pure/IJiraIntegration.java      |  1 -
 .../apache/ignite/ci/observer/ObserverTask.java    |  5 ----
 .../tcbot/visa/TcBotTriggerAndSignOffService.java  |  9 +++---
 .../ci/teamcity/ignited/TeamcityIgnitedImpl.java   | 35 ++++++++++++----------
 6 files changed, 42 insertions(+), 25 deletions(-)

diff --git 
a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/jira/ignited/IJiraIgnited.java
 
b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/jira/ignited/IJiraIgnited.java
index 17b80a8..420c9bc 100644
--- 
a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/jira/ignited/IJiraIgnited.java
+++ 
b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/jira/ignited/IJiraIgnited.java
@@ -16,6 +16,7 @@
  */
 package org.apache.ignite.ci.jira.ignited;
 
+import java.io.IOException;
 import java.util.Set;
 import org.apache.ignite.ci.jira.Ticket;
 import org.jetbrains.annotations.NotNull;
@@ -46,4 +47,13 @@ public interface IJiraIgnited {
      */
     String generateTicketUrl(String id);
 
+
+    /**
+     * @param ticket JIRA ticket full name. E.g 'IGNITE-5555'.
+     * @param comment Comment to be placed in the ticket conversation.
+     * @return {@code True} if ticket was succesfully commented. Otherwise - 
{@code false}.
+     * @throws IOException If failed to comment JIRA ticket.
+     * @throws IllegalStateException If can't find URL to the JIRA.
+     */
+    public String postJiraComment(String ticket, String comment) throws 
IOException;
 }
diff --git 
a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/jira/ignited/JiraIgnited.java
 
b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/jira/ignited/JiraIgnited.java
index a1bb0b1..2e45501 100644
--- 
a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/jira/ignited/JiraIgnited.java
+++ 
b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/jira/ignited/JiraIgnited.java
@@ -17,6 +17,7 @@
 package org.apache.ignite.ci.jira.ignited;
 
 import com.google.common.collect.Sets;
+import java.io.IOException;
 import java.util.Collection;
 import java.util.Set;
 import javax.inject.Inject;
@@ -64,6 +65,7 @@ class JiraIgnited implements IJiraIgnited {
         return jira.projectName();
     }
 
+    /** {@inheritDoc} */
     @Override public Set<Ticket> getTickets() {
         
jiraTicketSync.ensureActualizeJiraTickets(taskName("actualizeJiraTickets"), 
srvId);
 
@@ -88,4 +90,9 @@ class JiraIgnited implements IJiraIgnited {
     @Override public String generateTicketUrl(String id) {
         return jira.generateTicketUrl(id);
     }
+
+    /** {@inheritDoc} */
+    @Override public String postJiraComment(String ticket, String comment) 
throws IOException {
+        return jira.postJiraComment(ticket, comment);
+    }
 }
diff --git 
a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/jira/pure/IJiraIntegration.java
 
b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/jira/pure/IJiraIntegration.java
index 95ab3ca..6ff8fea 100644
--- 
a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/jira/pure/IJiraIntegration.java
+++ 
b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/jira/pure/IJiraIntegration.java
@@ -46,7 +46,6 @@ public interface IJiraIntegration {
      */
     public String getServiceId();
 
-
     /**
      * @param ticket JIRA ticket full name. E.g 'IGNITE-5555'.
      * @param comment Comment to be placed in the ticket conversation.
diff --git 
a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/observer/ObserverTask.java
 
b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/observer/ObserverTask.java
index 5dd7091..24b32d5 100644
--- 
a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/observer/ObserverTask.java
+++ 
b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/observer/ObserverTask.java
@@ -63,9 +63,6 @@ public class ObserverTask extends TimerTask {
     @Inject private ITeamcityIgnitedProvider teamcityIgnitedProvider;
 
     /** */
-    @Inject private IJiraIntegrationProvider jiraIntegrationProvider;
-
-    /** */
     @Inject private VisasHistoryStorage visasHistStorage;
 
     @Inject private TcBotTriggerAndSignOffService visaIssuer;
@@ -195,8 +192,6 @@ public class ObserverTask extends TimerTask {
                 if (!visa.isSuccess()) {
                     ICredentialsProv creds = 
tcHelper.getServerAuthorizerCreds();
 
-                    IJiraIntegration jiraIntegration = 
jiraIntegrationProvider.server(info.srvId);
-
                     Visa updatedVisa = visaIssuer.notifyJira(info.srvId, 
creds, info.buildTypeId,
                         info.branchForTc, info.ticket);
 
diff --git 
a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/tcbot/visa/TcBotTriggerAndSignOffService.java
 
b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/tcbot/visa/TcBotTriggerAndSignOffService.java
index ea4461f..1e39a26 100644
--- 
a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/tcbot/visa/TcBotTriggerAndSignOffService.java
+++ 
b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/tcbot/visa/TcBotTriggerAndSignOffService.java
@@ -86,6 +86,7 @@ import static org.apache.ignite.ci.util.XmlUtil.xmlEscapeText;
 import static 
org.apache.ignite.ci.web.rest.parms.FullQueryParams.DEFAULT_TRACKED_BRANCH_NAME;
 
 /**
+ * TC Bot Visa Facade.
  * Provides method for TC Bot Visa obtaining.
  * Contains features for adding comment to the ticket based on latest state.
  *
@@ -144,7 +145,7 @@ public class TcBotTriggerAndSignOffService {
 
         ITeamcityIgnited ignited = tcIgnitedProv.server(srvId, prov);
 
-        IJiraIntegration jiraIntegration = jiraPureProvider.server(srvId);
+        IJiraIgnited jiraIntegration = jiraIgnProv.server(srvId);
 
         for (VisaRequest visaRequest : visasHistStorage.getVisas()) {
             VisaStatus visaStatus = new VisaStatus();
@@ -304,7 +305,7 @@ public class TcBotTriggerAndSignOffService {
         String parentSuiteId,
         Build... builds
     ) {
-        IJiraIntegration jiraIntegration = jiraPureProvider.server(srvId);
+        IJiraIgnited jiraIntegration = jiraIgnProv.server(srvId);
 
         String prefix = jiraIntegration.ticketPrefix();
 
@@ -358,7 +359,7 @@ public class TcBotTriggerAndSignOffService {
         ICredentialsProv prov) {
         String jiraRes = "";
 
-        IJiraIntegration jiraIntegration = jiraPureProvider.server(srvId);
+        IJiraIgnited jiraIntegration = jiraIgnProv.server(srvId);
 
         String prefix = jiraIntegration.ticketPrefix();
 
@@ -661,7 +662,7 @@ public class TcBotTriggerAndSignOffService {
     ) {
         ITeamcityIgnited tcIgnited = tcIgnitedProv.server(srvId, prov);
 
-        IJiraIntegration jira = jiraPureProvider.server(srvId);
+        IJiraIgnited jira = jiraIgnProv.server(srvId);
 
         List<Integer> builds = 
tcIgnited.getLastNBuildsFromHistory(buildTypeId, branchForTc, 1);
 
diff --git 
a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/teamcity/ignited/TeamcityIgnitedImpl.java
 
b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/teamcity/ignited/TeamcityIgnitedImpl.java
index f857aae..676a1a6 100644
--- 
a/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/teamcity/ignited/TeamcityIgnitedImpl.java
+++ 
b/ignite-tc-helper-web/src/main/java/org/apache/ignite/ci/teamcity/ignited/TeamcityIgnitedImpl.java
@@ -19,7 +19,22 @@ package org.apache.ignite.ci.teamcity.ignited;
 
 import com.google.common.collect.Lists;
 import com.google.common.collect.Sets;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.Comparator;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.OptionalInt;
+import java.util.Set;
+import java.util.SortedSet;
+import java.util.concurrent.TimeUnit;
 import java.util.concurrent.atomic.AtomicBoolean;
+import java.util.stream.Collectors;
+import javax.annotation.Nullable;
+import javax.inject.Inject;
 import org.apache.ignite.ci.ITeamcity;
 import org.apache.ignite.ci.analysis.SuiteInBranch;
 import org.apache.ignite.ci.analysis.TestInBranch;
@@ -27,45 +42,35 @@ import org.apache.ignite.ci.di.AutoProfiling;
 import org.apache.ignite.ci.di.MonitoredTask;
 import org.apache.ignite.ci.di.cache.GuavaCached;
 import org.apache.ignite.ci.di.scheduler.IScheduler;
-import org.apache.ignite.ci.jira.ignited.JiraTicketDao;
-import org.apache.ignite.ci.jira.ignited.JiraTicketSync;
-import org.apache.ignite.ci.jira.Ticket;
 import org.apache.ignite.ci.tcbot.trends.MasterTrendsService;
 import org.apache.ignite.ci.tcmodel.conf.Project;
 import org.apache.ignite.ci.tcmodel.mute.MuteInfo;
-import org.apache.ignite.ci.teamcity.ignited.mute.MuteDao;
-import org.apache.ignite.ci.teamcity.ignited.mute.MuteSync;
+import org.apache.ignite.ci.tcmodel.result.Build;
 import org.apache.ignite.ci.teamcity.ignited.buildcondition.BuildCondition;
 import org.apache.ignite.ci.teamcity.ignited.buildcondition.BuildConditionDao;
-import org.apache.ignite.ci.tcmodel.result.Build;
 import org.apache.ignite.ci.teamcity.ignited.buildref.BuildRefDao;
 import org.apache.ignite.ci.teamcity.ignited.buildref.BuildRefSync;
+import org.apache.ignite.ci.teamcity.ignited.buildtype.BuildTypeCompacted;
+import org.apache.ignite.ci.teamcity.ignited.buildtype.BuildTypeDao;
 import org.apache.ignite.ci.teamcity.ignited.buildtype.BuildTypeRefCompacted;
 import org.apache.ignite.ci.teamcity.ignited.buildtype.BuildTypeRefDao;
 import org.apache.ignite.ci.teamcity.ignited.buildtype.BuildTypeSync;
-import org.apache.ignite.ci.teamcity.ignited.buildtype.BuildTypeCompacted;
-import org.apache.ignite.ci.teamcity.ignited.buildtype.BuildTypeDao;
 import org.apache.ignite.ci.teamcity.ignited.change.ChangeCompacted;
 import org.apache.ignite.ci.teamcity.ignited.change.ChangeDao;
 import org.apache.ignite.ci.teamcity.ignited.change.ChangeSync;
 import org.apache.ignite.ci.teamcity.ignited.fatbuild.FatBuildCompacted;
 import org.apache.ignite.ci.teamcity.ignited.fatbuild.FatBuildDao;
 import org.apache.ignite.ci.teamcity.ignited.fatbuild.ProactiveFatBuildSync;
+import org.apache.ignite.ci.teamcity.ignited.mute.MuteDao;
+import org.apache.ignite.ci.teamcity.ignited.mute.MuteSync;
 import org.apache.ignite.ci.teamcity.ignited.runhist.RunHistCompactedDao;
 import org.apache.ignite.ci.teamcity.ignited.runhist.RunHistSync;
 import org.apache.ignite.ci.teamcity.pure.ITeamcityConn;
 import org.apache.ignite.ci.user.ICredentialsProv;
-import org.apache.ignite.internal.util.typedef.F;
 import org.jetbrains.annotations.NotNull;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import javax.annotation.Nullable;
-import javax.inject.Inject;
-import java.util.*;
-import java.util.concurrent.TimeUnit;
-import java.util.stream.Collectors;
-
 import static org.apache.ignite.ci.tcmodel.hist.BuildRef.STATUS_UNKNOWN;
 
 /**

Reply via email to