2017-02-17 19 views
1

問題イベントをキャプチャし、それが「作成済みの問題」イベントであるかどうかを確認してアクションを実行するJIRAリスナプラグインがあります。何らかの理由でコードの特定の行が停止する前に複数回実行されているように見えますが(特定のログメッセージが複数回表示されているので、これはわかります。ここで私が話しているかのJISTは次のとおりです。1行のコードを複数回実行するJIRAプラグイン

onCreatedEvent(IssueEvent event) { 
    Issue issue = event.getIssue(); 
    if (event.getEventTypeId().equals(EventType.ISSUE_CREATED_ID) { 
     // Build needed object (custom class) -> this is the line running multiple times 
     BetterIssue betterIssue = BetterIssueFactory.setIssue(issue).build(); 
     BetterIssueDAO.createBetterIssue(betterIssue); 
     // More code below... 
    } 
} 

BetterIssueFactoryがどのように見えるかのアイデア:

public abstract BetterIssueFactory() { 
    private static Issue issue; 
    public static void build() { 
     // Grabs data from JIRA issue using ComponentAccessor... 
    } 
    public void setIssue(Issue issue) { 
     this.issue = issue; 
    } 
    // More code... 
} 

私の推測ではあるもののSQLサーバーにアクセスしにこのオブジェクトを置くDAO(テーブル)は、クエリの実行が完了するまで、このコード行が正しく実行されていない状態になっています。注:私が投稿したコードは、これを行うために別のスレッドを開きません。これは、PreparedStatement.execute/executeQueryが新しいスレッドを開くまでは、すべて順番に実行されます。

答えて

0

私の最初の述語は重複したコードの実行が間違っていたようです。特定の条件が偽であった場合に、コードが複数回実行される場所がわかりませんでした。最初の質問が間違っているため、これを閉じます。

関連する問題