1 16 17 package org.apache.commons.jelly.tags.junit; 18 19 import java.io.PrintStream ; 20 import java.io.PrintWriter ; 21 22 import junit.framework.AssertionFailedError; 23 24 import org.apache.commons.jelly.LocationAware; 25 26 34 35 public class JellyAssertionFailedError extends AssertionFailedError implements LocationAware { 36 37 38 private Throwable cause; 39 40 41 private String fileName; 42 43 44 private String elementName; 45 46 47 private int lineNumber = -1; 48 49 50 private int columnNumber = -1; 51 52 public JellyAssertionFailedError() { 53 } 54 55 public JellyAssertionFailedError(String message) { 56 super(message); 57 } 58 59 public JellyAssertionFailedError(String message, Throwable cause) { 60 super(message); 61 this.cause = cause; 62 } 63 64 public JellyAssertionFailedError(Throwable cause) { 65 super(cause.getLocalizedMessage()); 66 this.cause = cause; 67 } 68 69 public Throwable getCause() { 70 return cause; 71 } 72 73 74 77 public int getLineNumber() { 78 return lineNumber; 79 } 80 81 84 public void setLineNumber(int lineNumber) { 85 this.lineNumber = lineNumber; 86 } 87 88 91 public int getColumnNumber() { 92 return columnNumber; 93 } 94 95 98 public void setColumnNumber(int columnNumber) { 99 this.columnNumber = columnNumber; 100 } 101 102 105 public String getFileName() { 106 return fileName; 107 } 108 109 112 public void setFileName(String fileName) { 113 this.fileName = fileName; 114 } 115 116 117 120 public String getElementName() { 121 return elementName; 122 } 123 124 127 public void setElementName(String elementName) { 128 this.elementName = elementName; 129 } 130 131 132 public String getMessage() { 133 return super.getMessage() + " File: " + fileName + " At tag <" + elementName + ">: line: " 134 + lineNumber + " column: " + columnNumber; 135 } 136 137 public String getReason() { 138 return super.getMessage(); 139 } 140 141 public void printStackTrace(PrintWriter s) { 143 synchronized (s) { 144 super.printStackTrace(s); 145 if (cause != null) { 146 s.println("Root cause"); 147 cause.printStackTrace(s); 148 } 149 } 150 } 151 152 public void printStackTrace(PrintStream s) { 153 synchronized (s) { 154 super.printStackTrace(s); 155 if (cause != null) { 156 s.println("Root cause"); 157 cause.printStackTrace(s); 158 } 159 } 160 } 161 162 public void printStackTrace() { 163 super.printStackTrace(); 164 if (cause != null) { 165 System.out.println("Root cause"); 166 cause.printStackTrace(); 167 } 168 } 169 } 170 | Popular Tags |