Update the dependencies to use project version
[aai/sparky-be.git] / src / main / java / org / onap / aai / sparky / synchronizer / MyErrorHandler.java
1 /**
2  * ============LICENSE_START=======================================================
3  * org.onap.aai
4  * ================================================================================
5  * Copyright © 2017 AT&T Intellectual Property. All rights reserved.
6  * Copyright © 2017 Amdocs
7  * ================================================================================
8  * Licensed under the Apache License, Version 2.0 (the "License");
9  * you may not use this file except in compliance with the License.
10  * You may obtain a copy of the License at
11  *
12  *       http://www.apache.org/licenses/LICENSE-2.0
13  *
14  * Unless required by applicable law or agreed to in writing, software
15  * distributed under the License is distributed on an "AS IS" BASIS,
16  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17  * See the License for the specific language governing permissions and
18  * limitations under the License.
19  * ============LICENSE_END=========================================================
20  *
21  * ECOMP is a trademark and service mark of AT&T Intellectual Property.
22  */
23 package org.onap.aai.sparky.synchronizer;
24
25 import java.io.PrintWriter;
26
27 import org.xml.sax.ErrorHandler;
28 import org.xml.sax.SAXException;
29 import org.xml.sax.SAXParseException;
30
31 /**
32  * The Class MyErrorHandler.
33  */
34 public class MyErrorHandler implements ErrorHandler {
35
36   /** Error handler output goes here. */
37   private PrintWriter out;
38
39   /**
40    * @return the out
41    */
42   public PrintWriter getOut() {
43     return out;
44   }
45
46   /**
47    * @param out the out to set
48    */
49   public void setOut(PrintWriter out) {
50     this.out = out;
51   }
52
53   /**
54    * Instantiates a new my error handler.
55    *
56    * @param out the out
57    */
58   public MyErrorHandler(PrintWriter out) {
59     this.out = out;
60   }
61
62   /**
63    * Returns a string describing parse exception details.
64    *
65    * @param spe the spe
66    * @return the parses the exception info
67    */
68   private String getParseExceptionInfo(SAXParseException spe) {
69     String systemId = spe.getSystemId();
70     if (systemId == null) {
71       systemId = "null";
72     }
73     String info = "URI=" + systemId + " Line=" + spe.getLineNumber() + ": " + spe.getMessage();
74     return info;
75   }
76
77   // The following methods are standard SAX ErrorHandler methods.
78   // See SAX documentation for more info.
79
80   /*
81    * (non-Javadoc)
82    * 
83    * @see org.xml.sax.ErrorHandler#warning(org.xml.sax.SAXParseException)
84    */
85   @Override
86   public void warning(SAXParseException spe) throws SAXException {
87     out.println("Warning: " + getParseExceptionInfo(spe));
88   }
89
90   /*
91    * (non-Javadoc)
92    * 
93    * @see org.xml.sax.ErrorHandler#error(org.xml.sax.SAXParseException)
94    */
95   @Override
96   public void error(SAXParseException spe) throws SAXException {
97     String message = "Error: " + getParseExceptionInfo(spe);
98     throw new SAXException(message);
99   }
100
101   /*
102    * (non-Javadoc)
103    * 
104    * @see org.xml.sax.ErrorHandler#fatalError(org.xml.sax.SAXParseException)
105    */
106   @Override
107   public void fatalError(SAXParseException spe) throws SAXException {
108     String message = "Fatal Error: " + getParseExceptionInfo(spe);
109     throw new SAXException(message);
110   }
111 }