package com.azimo.tool.task.uploader; import com.azimo.tool.firebase.collection.CreatedIssueCollection; import com.azimo.tool.firebase.model.CreatedIssue; import com.azimo.tool.jira.JiraIssueServiceManager; import com.azimo.tool.jira.model.Issue; import com.azimo.tool.publisher.collection.ReviewCollection; import com.azimo.tool.publisher.model.AppReview; import com.azimo.tool.task.interfaces.Uploader; import com.azimo.tool.utils.converter.IssueConverter; /** * Created by F1sherKK on 27/01/17. */ public class JiraUploader implements Uploader<ReviewCollection, CreatedIssueCollection> { private IssueConverter issueConverter; private JiraIssueServiceManager jiraIssueServiceManager; public JiraUploader(IssueConverter issueConverter, JiraIssueServiceManager jiraIssueServiceManager) { this.issueConverter = issueConverter; this.jiraIssueServiceManager = jiraIssueServiceManager; } @Override public CreatedIssueCollection upload(ReviewCollection notReportedReviewsWithThreeOrLessStars) { CreatedIssueCollection createdIssueCollection = new CreatedIssueCollection(); for (AppReview review : notReportedReviewsWithThreeOrLessStars) { try { Issue issue = issueConverter.issueFromAppReview(review); jiraIssueServiceManager.createJiraIssue(issue); CreatedIssue createdIssue = issueConverter.createdIssueFrom(review); createdIssueCollection.add(createdIssue); } catch (Exception ignored) { } } return createdIssueCollection; } }