Loading tools/XmlDiff/src/org/etsi/mts/ttcn/part9/xmldiff/DiffErrorHandler.java +13 −3 Original line number Original line Diff line number Diff line Loading @@ -17,6 +17,8 @@ public class DiffErrorHandler implements ErrorHandler { private boolean hasErrors = false; private boolean hasErrors = false; private StringBuilder description = new StringBuilder(); private StringBuilder description = new StringBuilder(); private String source; private String kind; public String getErrorsText() { public String getErrorsText() { return description.toString(); return description.toString(); Loading @@ -42,7 +44,7 @@ public class DiffErrorHandler implements ErrorHandler { errors.add(err); errors.add(err); appendDescripion(err); appendDescripion(err); hasErrors = true; hasErrors = true; XmlDiff.logger.warning("Fatal error while parsing: ", err.getMessage()); XmlDiff.logger.warning("Error while parsing ", kind, ": ", err.getMessage(), "\nDocument: \n", source); } } //@Override //@Override Loading @@ -50,7 +52,7 @@ public class DiffErrorHandler implements ErrorHandler { errors.add(err); errors.add(err); appendDescripion(err); appendDescripion(err); hasErrors = true; hasErrors = true; XmlDiff.logger.warning("Error while parsing: ", err.getMessage()); XmlDiff.logger.warning("Fatal error while parsing ", kind, ": ", err.getMessage(), "\nDocument: \n", source); } } private synchronized void appendDescripion(Throwable err) { private synchronized void appendDescripion(Throwable err) { Loading @@ -61,7 +63,7 @@ public class DiffErrorHandler implements ErrorHandler { //@Override //@Override public void warning(SAXParseException warn) throws SAXException { public void warning(SAXParseException warn) throws SAXException { warnings.add(warn); warnings.add(warn); XmlDiff.logger.warning("Error while parsing: ", warn.getMessage()); XmlDiff.logger.warning("Warning while parsing ", kind, ": ", warn.getMessage(), "\nDocument: \n", source); } } /************************************************************ /************************************************************ Loading @@ -77,4 +79,12 @@ public class DiffErrorHandler implements ErrorHandler { private synchronized void appendDescripion(Difference diff) { private synchronized void appendDescripion(Difference diff) { description.append(diff.getDescription()).append(NEWLINE); description.append(diff.getDescription()).append(NEWLINE); } } public void setSource(String string) { this.source = string; } public void setKind(String kind) { this.kind = kind; } } } No newline at end of file tools/XmlDiff/src/org/etsi/mts/ttcn/part9/xmldiff/XmlDiff.java +13 −0 Original line number Original line Diff line number Diff line Loading @@ -8,6 +8,7 @@ import java.io.InputStream; import java.io.InputStreamReader; import java.io.InputStreamReader; import java.io.Reader; import java.io.Reader; import java.io.StringReader; import java.io.StringReader; import java.nio.CharBuffer; import java.nio.charset.Charset; import java.nio.charset.Charset; import java.nio.charset.StandardCharsets; import java.nio.charset.StandardCharsets; import java.util.ArrayList; import java.util.ArrayList; Loading Loading @@ -295,6 +296,18 @@ public class XmlDiff { logger.severe("Failed to setup a parser for ", kind, ": ", e.getMessage()); logger.severe("Failed to setup a parser for ", kind, ": ", e.getMessage()); throw new RuntimeException("Internal error: failed to create an XML parser", e); throw new RuntimeException("Internal error: failed to create an XML parser", e); } } { CharBuffer cb = CharBuffer.allocate(1000); StringBuilder tmp = new StringBuilder(); while(inReader.read(cb) != -1) { cb.flip(); tmp.append(cb.toString()); cb.clear(); } errorHandler.setSource(tmp.toString()); errorHandler.setKind(kind); inReader = new StringReader(tmp.toString()); } parser.setErrorHandler(errorHandler); parser.setErrorHandler(errorHandler); InputSource input = new InputSource(inReader); InputSource input = new InputSource(inReader); Document result = parser.parse(input); Document result = parser.parse(input); Loading tools/XmlDiff/xmldiff.jardesc +2 −2 Original line number Original line Diff line number Diff line <?xml version="1.0" encoding="UTF-8" standalone="no"?> <?xml version="1.0" encoding="UTF-8" standalone="no"?> <jardesc> <jardesc> <jar path="/home/pakula/Desktop/XmlDiff.jar"/> <jar path="XmlDiff/xmldiff.jar"/> <options buildIfNeeded="true" compress="true" descriptionLocation="/XmlDiff/xmldiff.jardesc" exportErrors="true" exportWarnings="true" includeDirectoryEntries="false" overwrite="false" saveDescription="true" storeRefactorings="false" useSourceFolders="false"/> <options buildIfNeeded="true" compress="true" descriptionLocation="/XmlDiff/xmldiff.jardesc" exportErrors="true" exportWarnings="true" includeDirectoryEntries="false" overwrite="true" saveDescription="true" storeRefactorings="false" useSourceFolders="false"/> <storedRefactorings deprecationInfo="true" structuralOnly="false"/> <storedRefactorings deprecationInfo="true" structuralOnly="false"/> <selectedProjects/> <selectedProjects/> <manifest generateManifest="false" manifestLocation="/XmlDiff/MANIFEST" manifestVersion="1.0" reuseManifest="true" saveManifest="true" usesManifest="true"> <manifest generateManifest="false" manifestLocation="/XmlDiff/MANIFEST" manifestVersion="1.0" reuseManifest="true" saveManifest="true" usesManifest="true"> Loading Loading
tools/XmlDiff/src/org/etsi/mts/ttcn/part9/xmldiff/DiffErrorHandler.java +13 −3 Original line number Original line Diff line number Diff line Loading @@ -17,6 +17,8 @@ public class DiffErrorHandler implements ErrorHandler { private boolean hasErrors = false; private boolean hasErrors = false; private StringBuilder description = new StringBuilder(); private StringBuilder description = new StringBuilder(); private String source; private String kind; public String getErrorsText() { public String getErrorsText() { return description.toString(); return description.toString(); Loading @@ -42,7 +44,7 @@ public class DiffErrorHandler implements ErrorHandler { errors.add(err); errors.add(err); appendDescripion(err); appendDescripion(err); hasErrors = true; hasErrors = true; XmlDiff.logger.warning("Fatal error while parsing: ", err.getMessage()); XmlDiff.logger.warning("Error while parsing ", kind, ": ", err.getMessage(), "\nDocument: \n", source); } } //@Override //@Override Loading @@ -50,7 +52,7 @@ public class DiffErrorHandler implements ErrorHandler { errors.add(err); errors.add(err); appendDescripion(err); appendDescripion(err); hasErrors = true; hasErrors = true; XmlDiff.logger.warning("Error while parsing: ", err.getMessage()); XmlDiff.logger.warning("Fatal error while parsing ", kind, ": ", err.getMessage(), "\nDocument: \n", source); } } private synchronized void appendDescripion(Throwable err) { private synchronized void appendDescripion(Throwable err) { Loading @@ -61,7 +63,7 @@ public class DiffErrorHandler implements ErrorHandler { //@Override //@Override public void warning(SAXParseException warn) throws SAXException { public void warning(SAXParseException warn) throws SAXException { warnings.add(warn); warnings.add(warn); XmlDiff.logger.warning("Error while parsing: ", warn.getMessage()); XmlDiff.logger.warning("Warning while parsing ", kind, ": ", warn.getMessage(), "\nDocument: \n", source); } } /************************************************************ /************************************************************ Loading @@ -77,4 +79,12 @@ public class DiffErrorHandler implements ErrorHandler { private synchronized void appendDescripion(Difference diff) { private synchronized void appendDescripion(Difference diff) { description.append(diff.getDescription()).append(NEWLINE); description.append(diff.getDescription()).append(NEWLINE); } } public void setSource(String string) { this.source = string; } public void setKind(String kind) { this.kind = kind; } } } No newline at end of file
tools/XmlDiff/src/org/etsi/mts/ttcn/part9/xmldiff/XmlDiff.java +13 −0 Original line number Original line Diff line number Diff line Loading @@ -8,6 +8,7 @@ import java.io.InputStream; import java.io.InputStreamReader; import java.io.InputStreamReader; import java.io.Reader; import java.io.Reader; import java.io.StringReader; import java.io.StringReader; import java.nio.CharBuffer; import java.nio.charset.Charset; import java.nio.charset.Charset; import java.nio.charset.StandardCharsets; import java.nio.charset.StandardCharsets; import java.util.ArrayList; import java.util.ArrayList; Loading Loading @@ -295,6 +296,18 @@ public class XmlDiff { logger.severe("Failed to setup a parser for ", kind, ": ", e.getMessage()); logger.severe("Failed to setup a parser for ", kind, ": ", e.getMessage()); throw new RuntimeException("Internal error: failed to create an XML parser", e); throw new RuntimeException("Internal error: failed to create an XML parser", e); } } { CharBuffer cb = CharBuffer.allocate(1000); StringBuilder tmp = new StringBuilder(); while(inReader.read(cb) != -1) { cb.flip(); tmp.append(cb.toString()); cb.clear(); } errorHandler.setSource(tmp.toString()); errorHandler.setKind(kind); inReader = new StringReader(tmp.toString()); } parser.setErrorHandler(errorHandler); parser.setErrorHandler(errorHandler); InputSource input = new InputSource(inReader); InputSource input = new InputSource(inReader); Document result = parser.parse(input); Document result = parser.parse(input); Loading
tools/XmlDiff/xmldiff.jardesc +2 −2 Original line number Original line Diff line number Diff line <?xml version="1.0" encoding="UTF-8" standalone="no"?> <?xml version="1.0" encoding="UTF-8" standalone="no"?> <jardesc> <jardesc> <jar path="/home/pakula/Desktop/XmlDiff.jar"/> <jar path="XmlDiff/xmldiff.jar"/> <options buildIfNeeded="true" compress="true" descriptionLocation="/XmlDiff/xmldiff.jardesc" exportErrors="true" exportWarnings="true" includeDirectoryEntries="false" overwrite="false" saveDescription="true" storeRefactorings="false" useSourceFolders="false"/> <options buildIfNeeded="true" compress="true" descriptionLocation="/XmlDiff/xmldiff.jardesc" exportErrors="true" exportWarnings="true" includeDirectoryEntries="false" overwrite="true" saveDescription="true" storeRefactorings="false" useSourceFolders="false"/> <storedRefactorings deprecationInfo="true" structuralOnly="false"/> <storedRefactorings deprecationInfo="true" structuralOnly="false"/> <selectedProjects/> <selectedProjects/> <manifest generateManifest="false" manifestLocation="/XmlDiff/MANIFEST" manifestVersion="1.0" reuseManifest="true" saveManifest="true" usesManifest="true"> <manifest generateManifest="false" manifestLocation="/XmlDiff/MANIFEST" manifestVersion="1.0" reuseManifest="true" saveManifest="true" usesManifest="true"> Loading