package com.jscs.cli.data;
import com.thoughtworks.xstream.XStream;
import java.util.ArrayList;
import java.util.List;
public class JscsLint {
public File file;
public String version;
public static JscsLint read(String xml) {
XStream xstream = new XStream();
xstream.alias("checkstyle", JscsLint.class);
xstream.useAttributeFor(JscsLint.class, "version");
xstream.alias("file", File.class);
xstream.alias("error", Issue.class);
xstream.addImplicitCollection(File.class, "errors");
xstream.useAttributeFor(File.class, "name");
xstream.useAttributeFor(Issue.class, "source");
xstream.useAttributeFor(Issue.class, "line");
xstream.useAttributeFor(Issue.class, "column");
xstream.useAttributeFor(Issue.class, "severity");
xstream.useAttributeFor(Issue.class, "message");
JscsLint lint = (JscsLint) xstream.fromXML(xml);
if (lint.file.errors == null) {
lint.file.errors = new ArrayList<Issue>();
}
return lint;
}
public static class File {
public String name;
public List<Issue> errors = new ArrayList<Issue>();
}
public static class Issue {
public String source;
public int line;
public int column;
public String severity;
public String message;
}
}