1
2
3
4
5 package com.jcabi.xml;
6
7 import com.jcabi.log.Logger;
8 import java.util.Collection;
9 import java.util.Collections;
10 import java.util.concurrent.CopyOnWriteArrayList;
11 import javax.xml.transform.ErrorListener;
12 import javax.xml.transform.TransformerException;
13
14
15
16
17
18
19 final class ConsoleErrorListener implements ErrorListener {
20
21
22
23
24 private final Collection<String> errors =
25 new CopyOnWriteArrayList<>();
26
27 @Override
28 public void warning(final TransformerException warning) {
29 Logger.warn(
30 this, "#warning(): %s",
31 warning.getMessageAndLocation()
32 );
33 this.errors.add(warning.getMessageAndLocation());
34 }
35
36 @Override
37 public void error(final TransformerException error) {
38 Logger.error(
39 this, "#error(): %s",
40 error.getMessageAndLocation()
41 );
42 this.errors.add(error.getMessageAndLocation());
43 }
44
45 @Override
46 public void fatalError(final TransformerException error) {
47 Logger.error(
48 this, "#fatalError(): %s",
49 error.getMessageAndLocation()
50 );
51 this.errors.add(error.getMessageAndLocation());
52 }
53
54
55
56
57
58 public Collection<String> summary() {
59 return Collections.unmodifiableCollection(this.errors);
60 }
61
62 }