diff options
author | Jesse Morgan <jesse@jesterpm.net> | 2017-03-05 14:42:54 -0800 |
---|---|---|
committer | Jesse Morgan <jesse@jesterpm.net> | 2017-03-05 14:42:54 -0800 |
commit | fa7d0ec7d486dccb55c50ba635a638a855a513c1 (patch) | |
tree | f290f6e7e72cafd82cf9c666fccc591b6e8fbebd /src/main | |
parent | 85a719ce36962c780a9febb98dc088bfce138acb (diff) |
Fail the page load if progress is not reported
Diffstat (limited to 'src/main')
4 files changed, 14 insertions, 7 deletions
diff --git a/src/main/java/com/p4square/grow/ccb/CCBProgressReporter.java b/src/main/java/com/p4square/grow/ccb/CCBProgressReporter.java index d2826eb..6eb9c15 100644 --- a/src/main/java/com/p4square/grow/ccb/CCBProgressReporter.java +++ b/src/main/java/com/p4square/grow/ccb/CCBProgressReporter.java @@ -34,7 +34,8 @@ public class CCBProgressReporter implements ProgressReporter { } @Override - public void reportAssessmentComplete(final User user, final String level, final Date date, final String results) { + public void reportAssessmentComplete(final User user, final String level, final Date date, final String results) + throws IOException { if (!(user instanceof CCBUser)) { throw new IllegalArgumentException("Expected CCBUser but got " + user.getClass().getCanonicalName()); } @@ -44,7 +45,7 @@ public class CCBProgressReporter implements ProgressReporter { } @Override - public void reportChapterComplete(final User user, final String chapter, final Date date) { + public void reportChapterComplete(final User user, final String chapter, final Date date) throws IOException { if (!(user instanceof CCBUser)) { throw new IllegalArgumentException("Expected CCBUser but got " + user.getClass().getCanonicalName()); } @@ -66,7 +67,8 @@ public class CCBProgressReporter implements ProgressReporter { updateLevelAndDate(ccbuser, GROW_LEVEL, chapter, date); } - private void updateLevelAndDate(final CCBUser user, final String field, final String level, final Date date) { + private void updateLevelAndDate(final CCBUser user, final String field, final String level, final Date date) + throws IOException { boolean modified = false; final UpdateIndividualProfileRequest req = new UpdateIndividualProfileRequest() @@ -99,6 +101,7 @@ public class CCBProgressReporter implements ProgressReporter { + ", field " + field + ", level " + level + ", date " + date.toString()); + throw e; } } } diff --git a/src/main/java/com/p4square/grow/frontend/AssessmentResultsPage.java b/src/main/java/com/p4square/grow/frontend/AssessmentResultsPage.java index f1c924b..9e9d48f 100644 --- a/src/main/java/com/p4square/grow/frontend/AssessmentResultsPage.java +++ b/src/main/java/com/p4square/grow/frontend/AssessmentResultsPage.java @@ -4,6 +4,7 @@ package com.p4square.grow.frontend; +import java.io.IOException; import java.util.Date; import java.util.Map; @@ -104,7 +105,7 @@ public class AssessmentResultsPage extends FreeMarkerPageResource { } } - private void publishScoreInF1(Map results) { + private void publishScoreInF1(Map results) throws IOException { final ProgressReporter reporter = mGrowFrontend.getThirdPartyIntegrationFactory().getProgressReporter(); try { @@ -117,6 +118,7 @@ public class AssessmentResultsPage extends FreeMarkerPageResource { } catch (JsonProcessingException e) { LOG.error("Failed to generate json " + e.getMessage(), e); + throw new IOException(e); } } diff --git a/src/main/java/com/p4square/grow/frontend/ChapterCompletePage.java b/src/main/java/com/p4square/grow/frontend/ChapterCompletePage.java index 35abc43..7bda39c 100644 --- a/src/main/java/com/p4square/grow/frontend/ChapterCompletePage.java +++ b/src/main/java/com/p4square/grow/frontend/ChapterCompletePage.java @@ -4,6 +4,7 @@ package com.p4square.grow.frontend; +import java.io.IOException; import java.util.Date; import java.util.Map; @@ -159,7 +160,7 @@ public class ChapterCompletePage extends FreeMarkerPageResource { } } - private void assignAttribute() { + private void assignAttribute() throws IOException { final ProgressReporter reporter = mGrowFrontend.getThirdPartyIntegrationFactory().getProgressReporter(); final User user = getRequest().getClientInfo().getUser(); diff --git a/src/main/java/com/p4square/grow/frontend/ProgressReporter.java b/src/main/java/com/p4square/grow/frontend/ProgressReporter.java index 2f36832..4662024 100644 --- a/src/main/java/com/p4square/grow/frontend/ProgressReporter.java +++ b/src/main/java/com/p4square/grow/frontend/ProgressReporter.java @@ -2,6 +2,7 @@ package com.p4square.grow.frontend; import org.restlet.security.User; +import java.io.IOException; import java.util.Date; /** @@ -17,7 +18,7 @@ public interface ProgressReporter { * @param date The completion date. * @param results Result information (e.g. json of the results). */ - void reportAssessmentComplete(User user, String level, Date date, String results); + void reportAssessmentComplete(User user, String level, Date date, String results) throws IOException; /** * Report that the User completed the chapter. @@ -26,5 +27,5 @@ public interface ProgressReporter { * @param chapter The chapter completed. * @param date The completion date. */ - void reportChapterComplete(User user, String chapter, Date date); + void reportChapterComplete(User user, String chapter, Date date) throws IOException; } |