aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/io/trygvis/esper/testing/web/resource/AbstractResource.java
diff options
context:
space:
mode:
authorTrygve Laugstøl <trygvis@inamo.no>2012-12-28 13:13:14 +0100
committerTrygve Laugstøl <trygvis@inamo.no>2012-12-28 13:13:14 +0100
commitc9ff3d5495b0229d837fa0ec23486cc7b6b191d0 (patch)
treeb978427f431aa41c59115978c6a017db84b9f2ec /src/main/java/io/trygvis/esper/testing/web/resource/AbstractResource.java
parent422b1caeaa9f7d069a9208ecb0d0249485b1a05e (diff)
downloadesper-testing-c9ff3d5495b0229d837fa0ec23486cc7b6b191d0.tar.gz
esper-testing-c9ff3d5495b0229d837fa0ec23486cc7b6b191d0.tar.bz2
esper-testing-c9ff3d5495b0229d837fa0ec23486cc7b6b191d0.tar.xz
esper-testing-c9ff3d5495b0229d837fa0ec23486cc7b6b191d0.zip
o Listing builds on the person view.
Diffstat (limited to 'src/main/java/io/trygvis/esper/testing/web/resource/AbstractResource.java')
-rw-r--r--src/main/java/io/trygvis/esper/testing/web/resource/AbstractResource.java26
1 files changed, 26 insertions, 0 deletions
diff --git a/src/main/java/io/trygvis/esper/testing/web/resource/AbstractResource.java b/src/main/java/io/trygvis/esper/testing/web/resource/AbstractResource.java
new file mode 100644
index 0000000..cddec2c
--- /dev/null
+++ b/src/main/java/io/trygvis/esper/testing/web/resource/AbstractResource.java
@@ -0,0 +1,26 @@
+package io.trygvis.esper.testing.web.resource;
+
+import fj.data.*;
+import io.trygvis.esper.testing.*;
+
+import javax.ws.rs.*;
+import javax.ws.rs.core.*;
+import java.sql.*;
+
+public class AbstractResource {
+ protected final DatabaseAccess da;
+
+ public AbstractResource(DatabaseAccess da) {
+ this.da = da;
+ }
+
+ public <T> T get(DatabaseAccess.DaosCallback<Option<T>> callback) throws SQLException {
+ Option<T> server = da.inTransaction(callback);
+
+ if(server.isNone()) {
+ throw new WebApplicationException(Response.Status.NOT_FOUND);
+ }
+
+ return server.some();
+ }
+}