當前位置: 首頁>>代碼示例>>Java>>正文


Java AbstractBuild.isBuilding方法代碼示例

本文整理匯總了Java中hudson.model.AbstractBuild.isBuilding方法的典型用法代碼示例。如果您正苦於以下問題:Java AbstractBuild.isBuilding方法的具體用法?Java AbstractBuild.isBuilding怎麽用?Java AbstractBuild.isBuilding使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在hudson.model.AbstractBuild的用法示例。


在下文中一共展示了AbstractBuild.isBuilding方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: getBuildStatus

import hudson.model.AbstractBuild; //導入方法依賴的package包/類
static MessageStatus getBuildStatus(AbstractBuild r){
    if (r.isBuilding()) {
        return MessageStatus.STARTING;
    }
    Run previousSuccessfulBuild = null;
    Run previousBuild = null;
    Result result = r.getResult();
    Result previousResult;
    try {
        previousBuild = r.getProject().getLastBuild().getPreviousBuild();
        previousSuccessfulBuild = r.getPreviousSuccessfulBuild();
    }catch (NullPointerException npe){
       return MessageStatus.UNKNOWN;
    }

    boolean buildHasSucceededBefore = previousSuccessfulBuild != null;

    /*
     * If the last build was aborted, go back to find the last non-aborted build.
     * This is so that aborted builds do not affect build transitions.
     * I.e. if build 1 was failure, build 2 was aborted and build 3 was a success the transition
     * should be failure -> success (and therefore back to normal) not aborted -> success.
     */
    Run lastNonAbortedBuild = previousBuild;
    while(lastNonAbortedBuild != null && lastNonAbortedBuild.getResult() == Result.ABORTED) {
        lastNonAbortedBuild = lastNonAbortedBuild.getPreviousBuild();
    }


    /* If all previous builds have been aborted, then use
     * SUCCESS as a default status so an aborted message is sent
     */
    if(lastNonAbortedBuild == null) {
        previousResult = Result.SUCCESS;
    } else {
        previousResult = lastNonAbortedBuild.getResult();
    }

    /* Back to normal should only be shown if the build has actually succeeded at some point.
     * Also, if a build was previously unstable and has now succeeded the status should be
     * "Back to normal"
     */
    if (result == Result.SUCCESS
            && (previousResult == Result.FAILURE || previousResult == Result.UNSTABLE)
            && buildHasSucceededBefore) {
        return MessageStatus.BACK_TO_NORMAL;
    }
    if (result == Result.FAILURE && previousResult == Result.FAILURE) {
        return MessageStatus.STILL_FAILING;
    }
    if (result == Result.SUCCESS) {
        return MessageStatus.SUCCESS;
    }
    if (result == Result.FAILURE) {
        return MessageStatus.FAILURE;
    }
    if (result == Result.ABORTED) {
        return MessageStatus.ABORTED;
    }
    if (result == Result.NOT_BUILT) {
        return MessageStatus.NOT_BUILT;
    }
    if (result == Result.UNSTABLE) {
        return MessageStatus.UNSTABLE;
    }
    return MessageStatus.UNKNOWN;
}
 
開發者ID:FluffyFairyGames,項目名稱:jenkins-telegram-plugin,代碼行數:68,代碼來源:ActiveNotifier.java


注:本文中的hudson.model.AbstractBuild.isBuilding方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。