{"action":"created","comment":{"url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/pulls/comments/41169956","id":41169956,"diff_hunk":"@@ -0,0 +1,209 @@\n+package com.fecklessweasel.service.datatier;\n+\n+import java.sql.Connection;\n+import java.sql.PreparedStatement;\n+import java.sql.Statement;\n+import java.sql.ResultSet;\n+import java.sql.SQLException;\n+import java.sql.SQLIntegrityConstraintViolationException;\n+import java.sql.Statement;\n+import java.util.Date;\n+\n+import com.fecklessweasel.service.objectmodel.CodeContract;\n+import com.fecklessweasel.service.objectmodel.ServiceException;\n+import com.fecklessweasel.service.objectmodel.ServiceStatus;\n+\n+public abstract class FileMetadataTable{\n+\n+  public static final String INSERT_FILE_QUERY =\n+    \"INSERT INTO FileMetadata (user, course, university, creation_date, rating)\" +\n+    \" VALUES (?,?,?,?,?)\";\n+\n+  public static final String LOOKUP_FILE_QUERY =\n+    \"SELECT * FROM Filemetadata F WHERE F.fid=?\";\n+\n+  public static final String LOOKUP_FILES_FROM_USER_QUERY =\n+    \"SELECT * FROM Filemetadata F WHERE F.user=?\";\n+\n+    public static final String LOOKUP_FILES_FROM_COURSE_QUERY =\n+      \"SELECT * FROM Filemetadata F WHERE F.course=? AND F.university=?\";\n+\n+  public static final String DELETE_FILE_QUERY =\n+    \"DELETE FROM FileMetadata WHERE fid=\";\n+\n+  public static final String INCREMENT_FILE_RATING_QUERY =\n+    \"UPDATE Filemetadata SET `rating` = `rating` +1 WHERE fid =?\";\n+\n+  public static final String DECREMENT_FILE_RATING_QUERY =\n+    \"UPDATE Filemetadata SET `rating` = `rating` -1 WHERE fid =?\";\n+  /**\n+   * Inserts a file into the corresponding MySQL table. returns the generated fid\n+   *@param connection Connection to the database from SQLSource.\n+   *@param user The username\n+   *@param course The coursename\n+   *@param university The name of the university\n+   *@param creationDate The user-specified creation date for the file\n+   *@param rating The files rated score.\n+   *@return fid Returns the fid of the inserted file. This is a files unique identifier\n+   */\n+  public static int insertFileData(Connection connection,\n+                                     String user,\n+                                     String course,\n+                                     String university,\n+                                     Date creationDate,\n+                                     int rating)\n+    throws ServiceException {\n+        //ensure parameters are clean\n+        CodeContract.assertNotNull(connection, \"connection\");\n+        CodeContract.assertNotNullOrEmptyOrWhitespace(user, \"user\");\n+        CodeContract.assertNotNullOrEmptyOrWhitespace(course, \"course\");\n+        CodeContract.assertNotNullOrEmptyOrWhitespace(university, \"university\");\n+        CodeContract.assertNotNull(creationDate, \"creationDate\");\n+\n+        try {\n+          PreparedStatement insertStatement = connection.prepareStatement(\n+            INSERT_FILE_QUERY, Statement.RETURN_GENERATED_KEYS\n+          );\n+          insertStatement.setString(1, user);\n+          insertStatement.setString(2, course);\n+          insertStatement.setString(3, university);\n+          insertStatement.setDate(4, new java.sql.Date(creationDate.getTime()));\n+          insertStatement.setInt(5, rating);\n+\n+          insertStatement.execute();\n+\n+          // Get autoincrement row id.\n+          ResultSet result = insertStatement.getGeneratedKeys();\n+          result.next();\n+\n+          int fid = result.getInt(1);\n+\n+          insertStatement.close();\n+\n+          return fid;\n+        } catch (SQLException ex) {\n+          throw new ServiceException(ServiceStatus.DATABASE_ERROR, ex);\n+        }\n+    }\n+    /**\n+     * Looks up the file using its unique identifier\n+     *@param connection Connection to the mySQL database\n+     *@param fileId The files unique identifier\n+     *@return file A ResultSet containing the file tuple - only a single row.\n+     */\n+    public static ResultSet lookUpFile(Connection connection, int fileId)\n+      throws ServiceException{\n+\n+        CodeContract.assertNotNull(connection, \"connection\");\n+\n+        try{\n+          PreparedStatement lookUpFileStatement = connection.prepareStatement(LOOKUP_FILE_QUERY);\n+          lookUpFileStatement.setInt(1, fileId);\n+\n+          return lookUpFileStatement.executeQuery();\n+        } catch (SQLException ex) {\n+            throw new ServiceException(ServiceStatus.DATABASE_ERROR, ex);\n+        }\n+    }\n+    /**\n+     * Looks up all files belonging to a certain user\n+     *@param connection Connection to the mySQL database\n+     *@param user: The username whose files we want to return\n+     *@return files A ResultSet containing all file tuples associated with the username\n+     */\n+    public static ResultSet lookUpUsersFiles(Connection connection, String user)\n+      throws ServiceException{\n+\n+        CodeContract.assertNotNull(connection, \"connection\");\n+        CodeContract.assertNotNullOrEmptyOrWhitespace(user, \"user\");\n+\n+        try{\n+          PreparedStatement lookUpFileStatement = connection.prepareStatement(LOOKUP_FILES_FROM_USER_QUERY);\n+          lookUpFileStatement.setString(1, user);\n+\n+          return lookUpFileStatement.executeQuery();\n+        } catch (SQLException ex) {\n+            throw new ServiceException(ServiceStatus.DATABASE_ERROR, ex);\n+        }\n+\n+    }\n+\n+    /**\n+     * Looks up all files belonging to a certain user\n+     *@param connection Connection to the mySQL database\n+     *@param course The course we want files from\n+     *@param university The university that the course belongs to\n+     *@result files A ResultSet containing all file tuples associated with the username\n+     */\n+    public static ResultSet lookUpCourseFiles(Connection connection, String course, String university)\n+      throws ServiceException{\n+\n+              CodeContract.assertNotNull(connection, \"connection\");\n+              CodeContract.assertNotNullOrEmptyOrWhitespace(course, \"course\");\n+              CodeContract.assertNotNullOrEmptyOrWhitespace(university, \"university\");\n+\n+              try{\n+                PreparedStatement lookUpFileStatement = connection.prepareStatement(LOOKUP_FILES_FROM_USER_QUERY);\n+                lookUpFileStatement.setString(1, course);\n+                lookUpFileStatement.setString(1, university);","path":"service/src/main/java/com/fecklessweasel/service/datatier/FileMetadataTable.java","position":148,"original_position":148,"commit_id":"c3363d796706e0db1277a041ba624120361b3596","original_commit_id":"c3363d796706e0db1277a041ba624120361b3596","user":{"login":"gundermanc","id":5387680,"avatar_url":"https://avatars.githubusercontent.com/u/5387680?v=3","gravatar_id":"","url":"https://api.github.com/users/gundermanc","html_url":"https://github.com/gundermanc","followers_url":"https://api.github.com/users/gundermanc/followers","following_url":"https://api.github.com/users/gundermanc/following{/other_user}","gists_url":"https://api.github.com/users/gundermanc/gists{/gist_id}","starred_url":"https://api.github.com/users/gundermanc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gundermanc/subscriptions","organizations_url":"https://api.github.com/users/gundermanc/orgs","repos_url":"https://api.github.com/users/gundermanc/repos","events_url":"https://api.github.com/users/gundermanc/events{/privacy}","received_events_url":"https://api.github.com/users/gundermanc/received_events","type":"User","site_admin":false},"body":"Two 1's, this code would not work. To test your queries, you should try running them by calling the functions in the ApiRoot controller and then sending a request to localhost:8080/api and making sure that you don't get an exception back.","created_at":"2015-10-05T17:11:04Z","updated_at":"2015-10-05T17:11:04Z","html_url":"https://github.com/CatalystOfNostalgia/feckless-weasel/pull/39#discussion_r41169956","pull_request_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/pulls/39","_links":{"self":{"href":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/pulls/comments/41169956"},"html":{"href":"https://github.com/CatalystOfNostalgia/feckless-weasel/pull/39#discussion_r41169956"},"pull_request":{"href":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/pulls/39"}}},"pull_request":{"url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/pulls/39","id":46737721,"html_url":"https://github.com/CatalystOfNostalgia/feckless-weasel/pull/39","diff_url":"https://github.com/CatalystOfNostalgia/feckless-weasel/pull/39.diff","patch_url":"https://github.com/CatalystOfNostalgia/feckless-weasel/pull/39.patch","issue_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/issues/39","number":39,"state":"open","locked":false,"title":"Filetable object model, SQL wrapper code, and SQL table creation","user":{"login":"hschmack","id":4140291,"avatar_url":"https://avatars.githubusercontent.com/u/4140291?v=3","gravatar_id":"","url":"https://api.github.com/users/hschmack","html_url":"https://github.com/hschmack","followers_url":"https://api.github.com/users/hschmack/followers","following_url":"https://api.github.com/users/hschmack/following{/other_user}","gists_url":"https://api.github.com/users/hschmack/gists{/gist_id}","starred_url":"https://api.github.com/users/hschmack/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hschmack/subscriptions","organizations_url":"https://api.github.com/users/hschmack/orgs","repos_url":"https://api.github.com/users/hschmack/repos","events_url":"https://api.github.com/users/hschmack/events{/privacy}","received_events_url":"https://api.github.com/users/hschmack/received_events","type":"User","site_admin":false},"body":"FileMetadataTable is the class that interacts with the FileMetadata Table in the database. FileMetadata is the object model that wraps an entry in that Table. FileMetadata.java also includes static methods to lookup a file based on it's id, or a List of files based on a user, or course and university.","created_at":"2015-10-05T00:55:48Z","updated_at":"2015-10-05T17:11:04Z","closed_at":null,"merged_at":null,"merge_commit_sha":"d0c3cb35da71a30b5503c8c3be06cdc1ec21acc9","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/pulls/39/commits","review_comments_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/pulls/39/comments","review_comment_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/pulls/comments{/number}","comments_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/issues/39/comments","statuses_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/statuses/c3363d796706e0db1277a041ba624120361b3596","head":{"label":"CatalystOfNostalgia:filetable","ref":"filetable","sha":"c3363d796706e0db1277a041ba624120361b3596","user":{"login":"CatalystOfNostalgia","id":5059638,"avatar_url":"https://avatars.githubusercontent.com/u/5059638?v=3","gravatar_id":"","url":"https://api.github.com/users/CatalystOfNostalgia","html_url":"https://github.com/CatalystOfNostalgia","followers_url":"https://api.github.com/users/CatalystOfNostalgia/followers","following_url":"https://api.github.com/users/CatalystOfNostalgia/following{/other_user}","gists_url":"https://api.github.com/users/CatalystOfNostalgia/gists{/gist_id}","starred_url":"https://api.github.com/users/CatalystOfNostalgia/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/CatalystOfNostalgia/subscriptions","organizations_url":"https://api.github.com/users/CatalystOfNostalgia/orgs","repos_url":"https://api.github.com/users/CatalystOfNostalgia/repos","events_url":"https://api.github.com/users/CatalystOfNostalgia/events{/privacy}","received_events_url":"https://api.github.com/users/CatalystOfNostalgia/received_events","type":"User","site_admin":false},"repo":{"id":42405603,"name":"feckless-weasel","full_name":"CatalystOfNostalgia/feckless-weasel","owner":{"login":"CatalystOfNostalgia","id":5059638,"avatar_url":"https://avatars.githubusercontent.com/u/5059638?v=3","gravatar_id":"","url":"https://api.github.com/users/CatalystOfNostalgia","html_url":"https://github.com/CatalystOfNostalgia","followers_url":"https://api.github.com/users/CatalystOfNostalgia/followers","following_url":"https://api.github.com/users/CatalystOfNostalgia/following{/other_user}","gists_url":"https://api.github.com/users/CatalystOfNostalgia/gists{/gist_id}","starred_url":"https://api.github.com/users/CatalystOfNostalgia/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/CatalystOfNostalgia/subscriptions","organizations_url":"https://api.github.com/users/CatalystOfNostalgia/orgs","repos_url":"https://api.github.com/users/CatalystOfNostalgia/repos","events_url":"https://api.github.com/users/CatalystOfNostalgia/events{/privacy}","received_events_url":"https://api.github.com/users/CatalystOfNostalgia/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/CatalystOfNostalgia/feckless-weasel","description":"A weasel that lacks feck","fork":false,"url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel","forks_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/forks","keys_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/keys{/key_id}","collaborators_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/teams","hooks_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/hooks","issue_events_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/issues/events{/number}","events_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/events","assignees_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/assignees{/user}","branches_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/branches{/branch}","tags_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/tags","blobs_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/git/refs{/sha}","trees_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/git/trees{/sha}","statuses_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/statuses/{sha}","languages_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/languages","stargazers_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/stargazers","contributors_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/contributors","subscribers_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/subscribers","subscription_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/subscription","commits_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/commits{/sha}","git_commits_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/git/commits{/sha}","comments_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/comments{/number}","issue_comment_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/issues/comments{/number}","contents_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/contents/{+path}","compare_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/compare/{base}...{head}","merges_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/merges","archive_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/downloads","issues_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/issues{/number}","pulls_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/pulls{/number}","milestones_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/milestones{/number}","notifications_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/labels{/name}","releases_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/releases{/id}","created_at":"2015-09-13T17:30:18Z","updated_at":"2015-09-21T17:50:30Z","pushed_at":"2015-10-05T00:55:49Z","git_url":"git://github.com/CatalystOfNostalgia/feckless-weasel.git","ssh_url":"git@github.com:CatalystOfNostalgia/feckless-weasel.git","clone_url":"https://github.com/CatalystOfNostalgia/feckless-weasel.git","svn_url":"https://github.com/CatalystOfNostalgia/feckless-weasel","homepage":null,"size":472,"stargazers_count":0,"watchers_count":0,"language":"Java","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":25,"forks":0,"open_issues":25,"watchers":0,"default_branch":"master"}},"base":{"label":"CatalystOfNostalgia:master","ref":"master","sha":"a997ffa8baa923115e4e5f2df060b2eb529b30ca","user":{"login":"CatalystOfNostalgia","id":5059638,"avatar_url":"https://avatars.githubusercontent.com/u/5059638?v=3","gravatar_id":"","url":"https://api.github.com/users/CatalystOfNostalgia","html_url":"https://github.com/CatalystOfNostalgia","followers_url":"https://api.github.com/users/CatalystOfNostalgia/followers","following_url":"https://api.github.com/users/CatalystOfNostalgia/following{/other_user}","gists_url":"https://api.github.com/users/CatalystOfNostalgia/gists{/gist_id}","starred_url":"https://api.github.com/users/CatalystOfNostalgia/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/CatalystOfNostalgia/subscriptions","organizations_url":"https://api.github.com/users/CatalystOfNostalgia/orgs","repos_url":"https://api.github.com/users/CatalystOfNostalgia/repos","events_url":"https://api.github.com/users/CatalystOfNostalgia/events{/privacy}","received_events_url":"https://api.github.com/users/CatalystOfNostalgia/received_events","type":"User","site_admin":false},"repo":{"id":42405603,"name":"feckless-weasel","full_name":"CatalystOfNostalgia/feckless-weasel","owner":{"login":"CatalystOfNostalgia","id":5059638,"avatar_url":"https://avatars.githubusercontent.com/u/5059638?v=3","gravatar_id":"","url":"https://api.github.com/users/CatalystOfNostalgia","html_url":"https://github.com/CatalystOfNostalgia","followers_url":"https://api.github.com/users/CatalystOfNostalgia/followers","following_url":"https://api.github.com/users/CatalystOfNostalgia/following{/other_user}","gists_url":"https://api.github.com/users/CatalystOfNostalgia/gists{/gist_id}","starred_url":"https://api.github.com/users/CatalystOfNostalgia/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/CatalystOfNostalgia/subscriptions","organizations_url":"https://api.github.com/users/CatalystOfNostalgia/orgs","repos_url":"https://api.github.com/users/CatalystOfNostalgia/repos","events_url":"https://api.github.com/users/CatalystOfNostalgia/events{/privacy}","received_events_url":"https://api.github.com/users/CatalystOfNostalgia/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/CatalystOfNostalgia/feckless-weasel","description":"A weasel that lacks feck","fork":false,"url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel","forks_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/forks","keys_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/keys{/key_id}","collaborators_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/teams","hooks_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/hooks","issue_events_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/issues/events{/number}","events_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/events","assignees_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/assignees{/user}","branches_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/branches{/branch}","tags_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/tags","blobs_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/git/refs{/sha}","trees_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/git/trees{/sha}","statuses_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/statuses/{sha}","languages_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/languages","stargazers_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/stargazers","contributors_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/contributors","subscribers_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/subscribers","subscription_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/subscription","commits_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/commits{/sha}","git_commits_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/git/commits{/sha}","comments_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/comments{/number}","issue_comment_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/issues/comments{/number}","contents_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/contents/{+path}","compare_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/compare/{base}...{head}","merges_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/merges","archive_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/downloads","issues_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/issues{/number}","pulls_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/pulls{/number}","milestones_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/milestones{/number}","notifications_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/labels{/name}","releases_url":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/releases{/id}","created_at":"2015-09-13T17:30:18Z","updated_at":"2015-09-21T17:50:30Z","pushed_at":"2015-10-05T00:55:49Z","git_url":"git://github.com/CatalystOfNostalgia/feckless-weasel.git","ssh_url":"git@github.com:CatalystOfNostalgia/feckless-weasel.git","clone_url":"https://github.com/CatalystOfNostalgia/feckless-weasel.git","svn_url":"https://github.com/CatalystOfNostalgia/feckless-weasel","homepage":null,"size":472,"stargazers_count":0,"watchers_count":0,"language":"Java","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":25,"forks":0,"open_issues":25,"watchers":0,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/pulls/39"},"html":{"href":"https://github.com/CatalystOfNostalgia/feckless-weasel/pull/39"},"issue":{"href":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/issues/39"},"comments":{"href":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/issues/39/comments"},"review_comments":{"href":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/pulls/39/comments"},"review_comment":{"href":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/pulls/39/commits"},"statuses":{"href":"https://api.github.com/repos/CatalystOfNostalgia/feckless-weasel/statuses/c3363d796706e0db1277a041ba624120361b3596"}}}}