Version Differences for Trigger Report

Line 1:
    + This report will go through your originating workflows (it's trivial to change to all workflows) and list off what non-manual triggers are in place to kick them off. This report has to be used in conjunction with a report template such as the [[HTML Template]].  
       
    + ----  
       
    + ''Meta-Data Script:''  
       
    + <pre>  
    + import com.urbancode.anthill3.domain.reporting.*;  
       
    + ReportMetaData rmd = new ReportMetaData();  
       
    + rmd.addColumn("Project");  
    + rmd.addColumn("Branch");  
    + rmd.addColumn("Triggers");  
       
    + return rmd;  
    + </pre>  
       
    + ----  
       
    + ''Report Script:''  
       
    + <pre>import com.urbancode.anthill3.domain.profile.*;  
    + import com.urbancode.anthill3.domain.project.*;  
    + import com.urbancode.anthill3.domain.reporting.*;  
    + import com.urbancode.anthill3.domain.trigger.*;  
    + import com.urbancode.anthill3.domain.trigger.scheduled.*;  
    + import com.urbancode.anthill3.domain.workflow.*;  
    + import com.urbancode.anthill3.persistence.*;  
       
    + Project[] projects = ProjectFactory.getInstance().restoreAll();  
    + ReportOutput output = new ReportOutput(metaData);  
       
    + for (int i = 0; i < projects.length; i++) {  
    + Workflow[] workflows = projects[i].getOriginatingWorkflowArray();  
    + project = null;  
    + for (int j = 0; j < workflows.length; j++) {  
    + ReportRow row = new ReportRow(output, " ");  
    + if (project != projects[i]) {  
    + row.setColumnValue("Project", projects[i].getName());  
    + project = projects[i];  
    + }  
    + else {  
    + row.setColumnValue("Project", " ");  
    + }  
    +  
    + row.setColumnValue("Branch", workflows[j].getName());  
    + StringBuffer depBuf = new StringBuffer();  
    + Trigger[] triggers = workflows[j].getTriggerArray();  
    + StringBuffer trigBuf = new StringBuffer();  
    + if (workflows[j].isOriginating() &&  
    + workflows[j].getBuildProfile().getSourceConfig().  
    + getRepository().getRepositoryTrigger() != null) {  
       
    + trigBuf.append("Builds on Commit");  
    + if (triggers.length != 0) {  
    + trigBuf.append("<br>");  
    + }  
    + }  
    + for (int k = 0; k < triggers.length; k++) {  
    + trigBuf.append(triggers[k].getName());  
    + if (triggers[k] instanceof ScheduledTrigger) {  
    + trigBuf.append(" - Fires next at: ");  
    + trigBuf.append(triggers[k].getSchedule().  
    + getNextOccurrence().toString());  
    + }  
    + if (k < triggers.length - 1) {  
    + trigBuf.append("<br>");  
    + }  
    + }  
       
    + row.setColumnValue("Triggers", trigBuf.toString());  
    + output.addRow(row);  
    + }  
    + }  
       
    + return output;  
    + </pre>  
       
    + ----  
       
    + '''Related Content'''  
       
    + [[AnthillPro Template Reports]]<br/>  
    + [[Report Templates]]