From 0466e23f8f62e849d70e33031fe11b14915c0eb8 Mon Sep 17 00:00:00 2001 From: patrickbeekman1095 Date: Tue, 4 Dec 2018 17:32:56 -0500 Subject: [PATCH 1/2] Added an abstract method to GitObject to save the object to a file as per the project specifications. Commits can now save to file. --- Commits.java | 21 +++++++++++++++++++++ GitObject.java | 2 ++ Issues.java | 4 ++++ 3 files changed, 27 insertions(+) diff --git a/Commits.java b/Commits.java index 8aa73c8..82d7b2a 100644 --- a/Commits.java +++ b/Commits.java @@ -1,4 +1,7 @@ import java.util.ArrayList; +import java.io.BufferedWriter; +import java.io.FileWriter; +import java.io.IOException; /** * This class is responsible for keepign track of the commit data for a given repo. * Used in the GithubScraper class primarily. @@ -93,6 +96,24 @@ public int numCommits() { return commits.size(); } + public void saveToFile() { + String data = toString(); + BufferedWriter writer = null; + try { + writer = new BufferedWriter(new FileWriter("Commits.txt")); + writer.write(data); + + System.out.println("Saved commits to Commits.txt"); + } catch ( IOException e) { + } finally { + try { + if ( writer != null) + writer.close( ); + } catch ( IOException e) { + } + } + } + // == private methods == private boolean isInList(ArrayList list, String keyword) { diff --git a/GitObject.java b/GitObject.java index 8be5ec5..fcd4d52 100644 --- a/GitObject.java +++ b/GitObject.java @@ -37,4 +37,6 @@ public void setData(String[] data) { public abstract String getGeneral(); public abstract String getData(String keyWord); + + public abstract void saveToFile(); } diff --git a/Issues.java b/Issues.java index 77d2db7..9ca5e66 100644 --- a/Issues.java +++ b/Issues.java @@ -74,6 +74,10 @@ public String toString() { return ret; } + public void saveToFile() { + System.out.println("Saving"); + } + // == private methods == private boolean isInList(ArrayList list, String keyword) { From 92b9b54a5541d3580e560bd5b4e3d320d7b4b65b Mon Sep 17 00:00:00 2001 From: patrickbeekman1095 Date: Tue, 4 Dec 2018 17:45:01 -0500 Subject: [PATCH 2/2] Both the issues and commits can be saved to seperate files --- GithubDriver.java | 14 ++++++++++++-- GithubScraper.java | 8 ++++++++ Issues.java | 19 ++++++++++++++++++- 3 files changed, 38 insertions(+), 3 deletions(-) diff --git a/GithubDriver.java b/GithubDriver.java index 3f73f86..8bce877 100644 --- a/GithubDriver.java +++ b/GithubDriver.java @@ -5,7 +5,9 @@ public class GithubDriver { public static final int ISSUES = 1; public static final int COMMITS = 2; - public static final int QUIT = 3; + public static final int SAVE_ISSUES = 3; + public static final int SAVE_COMMITS = 4; + public static final int QUIT = 5; public static void printUsage() { System.out.printf("Please indicate a valid repository.\n"); @@ -29,7 +31,9 @@ public static void main(String[] args) throws IOException { System.out.println("Please indicate what you would like to see:\n" + "1)\tIssues\n" + "2)\tCommits\n" - + "3)\tExit\n" + + "3)\tSave Issues to file\n" + + "4)\tSave Commits to file\n" + + "5)\tExit\n" + "(More on the way soon!)\n"); choice = keyboard.nextInt(); @@ -47,6 +51,12 @@ public static void main(String[] args) throws IOException { System.out.println(scraper.getCommits()); System.out.println(scraper.getCommits().getGeneral()); break; + case SAVE_ISSUES: + scraper.saveIssues(); + break; + case SAVE_COMMITS: + scraper.saveCommits(); + break; case QUIT: System.exit(0); default: diff --git a/GithubScraper.java b/GithubScraper.java index 8d29903..42ba1c0 100644 --- a/GithubScraper.java +++ b/GithubScraper.java @@ -43,6 +43,14 @@ public Commits getCommits() { return commits; } + public void saveIssues() { + issues.saveToFile(); + } + + public void saveCommits() { + commits.saveToFile(); + } + /* * Sets the base url of the project */ diff --git a/Issues.java b/Issues.java index 9ca5e66..55d9497 100644 --- a/Issues.java +++ b/Issues.java @@ -1,4 +1,7 @@ import java.util.ArrayList; +import java.io.BufferedWriter; +import java.io.FileWriter; +import java.io.IOException; /** * * Class responsible for parsing the issues string array. @@ -75,7 +78,21 @@ public String toString() { } public void saveToFile() { - System.out.println("Saving"); + String data = toString(); + BufferedWriter writer = null; + try { + writer = new BufferedWriter(new FileWriter("Issues.txt")); + writer.write(data); + + System.out.println("Saved issues to Issues.txt"); + } catch ( IOException e) { + } finally { + try { + if ( writer != null) + writer.close( ); + } catch ( IOException e) { + } + } } // == private methods ==