001package org.galaxyproject.gxformat2; 002 003import java.util.ArrayList; 004import java.util.List; 005 006public class LintContext { 007 private boolean foundErrors = false; 008 private boolean foundWarns = false; 009 010 private List<String> validMessages = new ArrayList<String>(); 011 private List<String> infoMessages = new ArrayList<String>(); 012 private List<String> warnMessages = new ArrayList<String>(); 013 private List<String> errorMessages = new ArrayList<String>(); 014 015 LintContext() {} 016 017 public boolean getFoundErrors() { 018 return this.foundErrors; 019 } 020 021 public boolean getFoundWarns() { 022 return this.foundWarns; 023 } 024 025 void valid(String message, Object... args) { 026 this.validMessages.add(String.format(message, args)); 027 } 028 029 void info(String message, Object... args) { 030 this.infoMessages.add(String.format(message, args)); 031 } 032 033 void error(String message, Object... args) { 034 this.foundErrors = true; 035 this.errorMessages.add(String.format(message, args)); 036 } 037 038 void warn(String message, Object... args) { 039 this.foundWarns = true; 040 this.warnMessages.add(String.format(message, args)); 041 } 042 043 public List<String> collectMessages() { 044 final List<String> messages = new ArrayList<String>(); 045 for (final String message : this.errorMessages) { 046 messages.add(".. ERROR " + message); 047 } 048 049 for (final String message : this.warnMessages) { 050 messages.add(".. WARNING " + message); 051 } 052 return messages; 053 } 054 055 public void printMessages() { 056 for (final String message : this.collectMessages()) { 057 System.out.println(message); 058 } 059 } 060}