Skip to content
Snippets Groups Projects
Commit cc6b31d7 authored by Liam Byrne's avatar Liam Byrne
Browse files

SAX parsers all operational

parent 381740e6
No related branches found
No related tags found
No related merge requests found
...@@ -2,6 +2,7 @@ import org.xml.sax.Attributes; ...@@ -2,6 +2,7 @@ import org.xml.sax.Attributes;
import org.xml.sax.SAXException; import org.xml.sax.SAXException;
import org.xml.sax.helpers.DefaultHandler; import org.xml.sax.helpers.DefaultHandler;
import javax.xml.XMLConstants;
import javax.xml.parsers.ParserConfigurationException; import javax.xml.parsers.ParserConfigurationException;
import javax.xml.parsers.SAXParser; import javax.xml.parsers.SAXParser;
import javax.xml.parsers.SAXParserFactory; import javax.xml.parsers.SAXParserFactory;
...@@ -76,7 +77,7 @@ public class BadgesHandler extends DefaultHandler { ...@@ -76,7 +77,7 @@ public class BadgesHandler extends DefaultHandler {
attr.getValue("Class"), attr.getValue("Class"),
attr.getValue("TagBased") attr.getValue("TagBased")
); );
//System.out.println(badgeRow); System.out.println(badgeRow);
} else if (!qName.equals(BADGES)) { } else if (!qName.equals(BADGES)) {
throw new SAXException(String.format("Unknown tag %s", qName)); throw new SAXException(String.format("Unknown tag %s", qName));
...@@ -88,6 +89,7 @@ public class BadgesHandler extends DefaultHandler { ...@@ -88,6 +89,7 @@ public class BadgesHandler extends DefaultHandler {
final long start = System.currentTimeMillis(); final long start = System.currentTimeMillis();
System.out.println(start); System.out.println(start);
SAXParserFactory factory = SAXParserFactory.newInstance(); SAXParserFactory factory = SAXParserFactory.newInstance();
factory.setFeature(XMLConstants.FEATURE_SECURE_PROCESSING,false);
SAXParser saxParser = factory.newSAXParser(); SAXParser saxParser = factory.newSAXParser();
BadgesHandler handler = new BadgesHandler(); BadgesHandler handler = new BadgesHandler();
saxParser.parse( saxParser.parse(
......
...@@ -2,6 +2,7 @@ import org.xml.sax.Attributes; ...@@ -2,6 +2,7 @@ import org.xml.sax.Attributes;
import org.xml.sax.SAXException; import org.xml.sax.SAXException;
import org.xml.sax.helpers.DefaultHandler; import org.xml.sax.helpers.DefaultHandler;
import javax.xml.XMLConstants;
import javax.xml.parsers.ParserConfigurationException; import javax.xml.parsers.ParserConfigurationException;
import javax.xml.parsers.SAXParser; import javax.xml.parsers.SAXParser;
import javax.xml.parsers.SAXParserFactory; import javax.xml.parsers.SAXParserFactory;
...@@ -99,6 +100,7 @@ public class CommentsHandler extends DefaultHandler { ...@@ -99,6 +100,7 @@ public class CommentsHandler extends DefaultHandler {
final long start = System.currentTimeMillis(); final long start = System.currentTimeMillis();
SAXParserFactory factory = SAXParserFactory.newInstance(); SAXParserFactory factory = SAXParserFactory.newInstance();
factory.setFeature(XMLConstants.FEATURE_SECURE_PROCESSING,false);
SAXParser saxParser = factory.newSAXParser(); SAXParser saxParser = factory.newSAXParser();
CommentsHandler handler = new CommentsHandler(); CommentsHandler handler = new CommentsHandler();
saxParser.parse( saxParser.parse(
......
...@@ -33,7 +33,7 @@ public class SQLiteSession { ...@@ -33,7 +33,7 @@ public class SQLiteSession {
public static void main(String[] args) { public static void main(String[] args) {
SQLiteSession s = new SQLiteSession( SQLiteSession s = new SQLiteSession(
"jdbc:sqlite:C:\\Users\\lhb1g20\\OneDrive - University of Southampton\\graph4stackoverflow\\data-collection\\stackoverflow.db" "jdbc:sqlite:..\\stackoverflow.db"
); );
s.endSession(); s.endSession();
} }
......
public class TagsHandler { import org.xml.sax.Attributes;
import org.xml.sax.SAXException;
import org.xml.sax.helpers.DefaultHandler;
import javax.xml.XMLConstants;
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.parsers.SAXParser;
import javax.xml.parsers.SAXParserFactory;
import java.io.IOException;
class TagRow {
private String Id;
private String TagName;
private String Count;
public TagRow(String Id, String TagName, String Count) {
this.Id = Id;
this.TagName = TagName;
this.Count = Count;
}
public String getId() {
return Id;
}
public String getTagName() {
return TagName;
}
public String getCount() {
return Count;
}
@Override
public String toString() {
return "TagRow{" +
"Id='" + Id + '\'' +
", TagName='" + TagName + '\'' +
", Count='" + Count + '\'' +
'}';
}
}
public class TagsHandler extends DefaultHandler {
private static final String ROW = "row";
private static final String TAGS = "tags";
@Override
public void startElement(String uri, String lName, String qName, Attributes attr) throws SAXException {
if (qName.equals(ROW)) {
TagRow badgeRow = new TagRow(
attr.getValue("Id"),
attr.getValue("TagName"),
attr.getValue("Count")
);
System.out.println(badgeRow);
} else if (!qName.equals(TAGS)) {
throw new SAXException(String.format("Unknown tag %s", qName));
}
}
public static void main(String[] args) throws ParserConfigurationException, SAXException, IOException {
final long start = System.currentTimeMillis();
System.out.println(start);
SAXParserFactory factory = SAXParserFactory.newInstance();
factory.setFeature(XMLConstants.FEATURE_SECURE_PROCESSING,false);
SAXParser saxParser = factory.newSAXParser();
TagsHandler handler = new TagsHandler();
saxParser.parse(
"..\\data\\raw\\stackoverflow.com-Tags\\tags.xml", handler);
// time end
final long durationInMilliseconds = System.currentTimeMillis()-start;
System.out.println("SAX parse took " + durationInMilliseconds + "ms.");
}
} }
public class UsersHandler { import org.xml.sax.Attributes;
import org.xml.sax.SAXException;
import org.xml.sax.helpers.DefaultHandler;
import javax.xml.XMLConstants;
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.parsers.SAXParser;
import javax.xml.parsers.SAXParserFactory;
import java.io.IOException;
class UserRow {
private String Id;
private String Reputation;
private String CreationDate;
private String DisplayName;
private String LastAccessDate;
private String AboutMe;
private String Views;
private String UpVotes;
private String DownVotes;
public UserRow(String Id, String Reputation, String CreationDate, String DisplayName,
String LastAccessDate, String AboutMe, String Views, String UpVotes,
String DownVotes) {
this.Id = Id;
this.Reputation = Reputation;
this.CreationDate = CreationDate;
this.DisplayName = DisplayName;
this.LastAccessDate = LastAccessDate;
this.AboutMe = AboutMe;
this.Views = Views;
this.UpVotes = UpVotes;
this.DownVotes = DownVotes;
}
public String getId() {
return Id;
}
public String getReputation() {
return Reputation;
}
public String getCreationDate() {
return CreationDate;
}
public String getDisplayName() {
return DisplayName;
}
public String getLastAccessDate() {
return LastAccessDate;
}
public String getAboutMe() {
return AboutMe;
}
public String getViews() {
return Views;
}
public String getUpVotes() {
return UpVotes;
}
public String getDownVotes() {
return DownVotes;
}
@Override
public String toString() {
return "UserRow{" +
"Id='" + Id + '\'' +
", Reputation='" + Reputation + '\'' +
", CreationDate='" + CreationDate + '\'' +
", DisplayName='" + DisplayName + '\'' +
", LastAccessDate='" + LastAccessDate + '\'' +
", AboutMe='" + AboutMe + '\'' +
", Views='" + Views + '\'' +
", UpVotes='" + UpVotes + '\'' +
", DownVotes='" + DownVotes + '\'' +
'}';
}
}
public class UsersHandler extends DefaultHandler {
private static final String ROW = "row";
private static final String USERS = "users";
@Override
public void startElement(String uri, String lName, String qName, Attributes attr) throws SAXException {
if (qName.equals(ROW)) {
UserRow userRow = new UserRow(
attr.getValue("Id"),
attr.getValue("Reputation"),
attr.getValue("CreationDate"),
attr.getValue("DisplayName"),
attr.getValue("LastAccessDate"),
attr.getValue("AboutMe"),
attr.getValue("Views"),
attr.getValue("UpVotes"),
attr.getValue("DownVotes")
);
System.out.println(userRow);
} else if (!qName.equals(USERS)) {
throw new SAXException(String.format("Unknown tag %s", qName));
}
}
public static void main(String[] args) throws ParserConfigurationException, SAXException, IOException {
final long start = System.currentTimeMillis();
System.out.println(start);
SAXParserFactory factory = SAXParserFactory.newInstance();
factory.setFeature(XMLConstants.FEATURE_SECURE_PROCESSING,false);
SAXParser saxParser = factory.newSAXParser();
UsersHandler handler = new UsersHandler();
saxParser.parse(
"..\\data\\raw\\stackoverflow.com-Users\\users.xml", handler);
// time end
final long durationInMilliseconds = System.currentTimeMillis()-start;
System.out.println("SAX parse took " + durationInMilliseconds + "ms.");
}
} }
public class VotesHandler { import org.xml.sax.Attributes;
import org.xml.sax.SAXException;
import org.xml.sax.helpers.DefaultHandler;
import javax.xml.XMLConstants;
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.parsers.SAXParser;
import javax.xml.parsers.SAXParserFactory;
import java.io.IOException;
class VoteRow {
private String Id;
private String PostId;
private String VoteTypeId;
private String CreationDate;
public VoteRow(String Id, String PostId, String VoteTypeId, String CreationDate) {
this.Id = Id;
this.PostId = PostId;
this.VoteTypeId = VoteTypeId;
this.CreationDate = CreationDate;
}
public String getId() {
return Id;
}
public String getPostId() {
return PostId;
}
public String getVoteTypeId() {
return VoteTypeId;
}
public String getCreationDate() {
return CreationDate;
}
@Override
public String toString() {
return "VoteRow{" +
"Id='" + Id + '\'' +
", PostId='" + PostId + '\'' +
", VoteTypeId='" + VoteTypeId + '\'' +
", CreationDate='" + CreationDate + '\'' +
'}';
}
}
public class VotesHandler extends DefaultHandler {
private static final String ROW = "row";
private static final String VOTES = "votes";
@Override
public void startElement(String uri, String lName, String qName, Attributes attr) throws SAXException {
if (qName.equals(ROW)) {
VoteRow voteRow = new VoteRow(
attr.getValue("Id"),
attr.getValue("PostId"),
attr.getValue("VoteTypeId"),
attr.getValue("CreationDate")
);
System.out.println(voteRow);
} else if (!qName.equals(VOTES)) {
throw new SAXException(String.format("Unknown tag %s", qName));
}
}
public static void main(String[] args) throws ParserConfigurationException, SAXException, IOException {
final long start = System.currentTimeMillis();
System.out.println(start);
SAXParserFactory factory = SAXParserFactory.newInstance();
factory.setFeature(XMLConstants.FEATURE_SECURE_PROCESSING,false);
SAXParser saxParser = factory.newSAXParser();
VotesHandler handler = new VotesHandler();
saxParser.parse(
"..\\data\\raw\\stackoverflow.com-Votes\\votes.xml", handler);
// time end
final long durationInMilliseconds = System.currentTimeMillis()-start;
System.out.println("SAX parse took " + durationInMilliseconds + "ms.");
}
} }
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment