aboutsummaryrefslogtreecommitdiffstats
path: root/config-application-package
diff options
context:
space:
mode:
authorHarald Musum <musum@verizonmedia.com>2019-08-14 08:28:11 +0200
committerHarald Musum <musum@verizonmedia.com>2019-08-14 08:28:11 +0200
commitfa4368cdc9422ca85024d1209c8be86ff46fd422 (patch)
tree31e28f4dd7e42ba6494f779acc7b33e98b85fc26 /config-application-package
parentaf8ac01b3883882c792cc872b03aa77ef81a179a (diff)
Remove unintended commit
Diffstat (limited to 'config-application-package')
-rw-r--r--config-application-package/SchemaValidator.java121
1 files changed, 0 insertions, 121 deletions
diff --git a/config-application-package/SchemaValidator.java b/config-application-package/SchemaValidator.java
deleted file mode 100644
index 35fdc57eeb1..00000000000
--- a/config-application-package/SchemaValidator.java
+++ /dev/null
@@ -1,121 +0,0 @@
-// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-package com.yahoo.config.model.application.provider;
-
-import com.thaiopensource.util.PropertyMap;
-import com.thaiopensource.util.PropertyMapBuilder;
-import com.thaiopensource.validate.ValidateProperty;
-import com.thaiopensource.validate.ValidationDriver;
-import com.thaiopensource.validate.rng.CompactSchemaReader;
-import com.yahoo.config.application.api.DeployLogger;
-import com.yahoo.io.reader.NamedReader;
-import com.yahoo.yolean.Exceptions;
-import org.xml.sax.ErrorHandler;
-import org.xml.sax.InputSource;
-import org.xml.sax.SAXException;
-import org.xml.sax.SAXParseException;
-
-import java.io.File;
-import java.io.IOException;
-import java.io.Reader;
-import java.io.StringReader;
-import java.util.logging.Level;
-
-/**
- * Validates xml files against a schema.
- *
- * @author Tony Vaagenes
- */
-public class SchemaValidator {
- private static final int linesOfContextForErrors = 3;
-
- private final CustomErrorHandler errorHandler = new CustomErrorHandler();
- private final ValidationDriver driver;
- private final DeployLogger deployLogger;
-
- /**
- * Initializes the validator by using the given file as schema file
- *
- * @param schemaFile schema file
- * @throws IOException if it is not possible to read schema files
- */
- SchemaValidator(File schemaFile, DeployLogger deployLogger) throws IOException, SAXException {
- this.deployLogger = deployLogger;
- this.driver = new ValidationDriver(PropertyMap.EMPTY, instanceProperties(), CompactSchemaReader.getInstance());
- driver.loadSchema(ValidationDriver.fileInputSource(schemaFile));
- }
-
- public void validate(File file) throws IOException {
- validate(file, file.getName());
- }
-
- public void validate(File file, String fileName) throws IOException {
- validate(ValidationDriver.fileInputSource(file), fileName);
- }
-
- public void validate(Reader reader) throws IOException {
- validate(new InputSource(reader), null);
- }
-
- public void validate(NamedReader reader) throws IOException {
- validate(new InputSource(reader), reader.getName());
- }
-
- public void validate(InputSource inputSource, String fileName) throws IOException {
- errorHandler.fileName = (fileName == null ? "input" : fileName);
- errorHandler.reader = inputSource.getCharacterStream();
- try {
- if ( ! driver.validate(inputSource)) {
- // Shouldn't happen, error handler should have thrown
- throw new RuntimeException("Aborting due to earlier XML errors.");
- }
- } catch (SAXException e) {
- // This should never happen, as it is handled by the ErrorHandler
- // installed for the driver.
- throw new IllegalArgumentException("XML error in " + errorHandler.fileName + ": " + Exceptions.toMessageString(e));
- }
- }
-
- private PropertyMap instanceProperties() {
- PropertyMapBuilder builder = new PropertyMapBuilder();
- builder.put(ValidateProperty.ERROR_HANDLER, errorHandler);
- return builder.toPropertyMap();
- }
-
- private class CustomErrorHandler implements ErrorHandler {
- volatile String fileName;
- volatile Reader reader;
-
- public void warning(SAXParseException e) {
- deployLogger.log(Level.WARNING, message(e));
- }
-
- public void error(SAXParseException e) {
- throw new IllegalArgumentException(message(e));
- }
-
- public void fatalError(SAXParseException e) {
- throw new IllegalArgumentException(message(e));
- }
-
- private String message(SAXParseException e) {
- return "XML error in " + fileName + ": " +
- Exceptions.toMessageString(e)
- + " [" + e.getLineNumber() + ":" + e.getColumnNumber() + "]" +
- ", input\n" + getErrorContext(e.getLineNumber());
- }
-
- private String getErrorContext(int lineNumberWithError) {
- if (!(reader instanceof StringReader)) return "";
-
- return "";
-
-
-
-
-
- }
-
-
- }
-
-}