You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@marmotta.apache.org by wi...@apache.org on 2014/10/27 09:01:43 UTC

[7/9] git commit: MARMOTTA-556: fixed and improved some details

MARMOTTA-556: fixed and improved some details


Project: http://git-wip-us.apache.org/repos/asf/marmotta/repo
Commit: http://git-wip-us.apache.org/repos/asf/marmotta/commit/d99de515
Tree: http://git-wip-us.apache.org/repos/asf/marmotta/tree/d99de515
Diff: http://git-wip-us.apache.org/repos/asf/marmotta/diff/d99de515

Branch: refs/heads/MARMOTTA-556
Commit: d99de51535956341d031d122a9dfa17fc100495c
Parents: 205d4c1
Author: Sergio Fernández <wi...@apache.org>
Authored: Fri Oct 24 21:08:57 2014 +0200
Committer: Sergio Fernández <wi...@apache.org>
Committed: Fri Oct 24 21:08:57 2014 +0200

----------------------------------------------------------------------
 .../platform/ldf/services/LdfServiceImpl.java   |  2 +-
 .../platform/ldf/webservices/LdfWebService.java | 59 +++++++++++---------
 2 files changed, 35 insertions(+), 26 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/marmotta/blob/d99de515/platform/marmotta-ldf/src/main/java/org/apache/marmotta/platform/ldf/services/LdfServiceImpl.java
----------------------------------------------------------------------
diff --git a/platform/marmotta-ldf/src/main/java/org/apache/marmotta/platform/ldf/services/LdfServiceImpl.java b/platform/marmotta-ldf/src/main/java/org/apache/marmotta/platform/ldf/services/LdfServiceImpl.java
index dc8fd7c..3f906da 100644
--- a/platform/marmotta-ldf/src/main/java/org/apache/marmotta/platform/ldf/services/LdfServiceImpl.java
+++ b/platform/marmotta-ldf/src/main/java/org/apache/marmotta/platform/ldf/services/LdfServiceImpl.java
@@ -104,7 +104,6 @@ public class LdfServiceImpl implements LdfService {
         writeFragment(subject, predicate, object, context, page, format, out);
     }
 
-
     @Override
     public void writeFragment(URI subject, URI predicate, Value object, Resource context, int page, RDFFormat format, OutputStream out) throws RepositoryException {
         final RepositoryConnection conn = sesameService.getConnection();
@@ -119,4 +118,5 @@ public class LdfServiceImpl implements LdfService {
             conn.close();
         }
     }
+
 }

http://git-wip-us.apache.org/repos/asf/marmotta/blob/d99de515/platform/marmotta-ldf/src/main/java/org/apache/marmotta/platform/ldf/webservices/LdfWebService.java
----------------------------------------------------------------------
diff --git a/platform/marmotta-ldf/src/main/java/org/apache/marmotta/platform/ldf/webservices/LdfWebService.java b/platform/marmotta-ldf/src/main/java/org/apache/marmotta/platform/ldf/webservices/LdfWebService.java
index dbfcb96..cc09402 100644
--- a/platform/marmotta-ldf/src/main/java/org/apache/marmotta/platform/ldf/webservices/LdfWebService.java
+++ b/platform/marmotta-ldf/src/main/java/org/apache/marmotta/platform/ldf/webservices/LdfWebService.java
@@ -45,45 +45,54 @@ public class LdfWebService {
     private static final String UUID_PATTERN = "{uuid:[^#?]+}";
 
     @GET
-    public Response getFragment(@QueryParam("subject") String subject,
-                                @QueryParam("predicate") String predicate,
-                                @QueryParam("object") String object,
-                                @QueryParam("page") String page,
+    public Response getFragment(@QueryParam("subject") @DefaultValue("") String subject,
+                                @QueryParam("predicate") @DefaultValue("") String predicate,
+                                @QueryParam("object") @DefaultValue("") String object,
+                                @QueryParam("page") @DefaultValue("1") String page,
                                 @HeaderParam("Accept") String accept) {
-        return getFragment(subject, predicate, object, null, Integer.parseInt(StringUtils.defaultString(page, "1")), accept);
+        System.out.println("1");
+        return getFragment(subject, predicate, object, null, Integer.parseInt(page), accept);
     }
 
     @GET
     @Path(UUID_PATTERN)
-    public Response getFragment(@QueryParam("subject") String subject,
-                                @QueryParam("predicate") String predicate,
-                                @QueryParam("object") String object,
-                                @QueryParam("page") String page,
+    public Response getFragment(@QueryParam("subject") @DefaultValue("") String subject,
+                                @QueryParam("predicate") @DefaultValue("") String predicate,
+                                @QueryParam("object") @DefaultValue("") String object,
+                                @QueryParam("page") @DefaultValue("1") String page,
                                 @PathParam("uuid") String uuid,
                                 @HeaderParam("Accept") String accept) {
+        System.out.println("2");
         final String context = buildContextUri(uuid);
-        return getFragment(subject, predicate, object, context, Integer.parseInt(StringUtils.defaultString(page, "1")), accept);
+        return getFragment(subject, predicate, object, context, Integer.parseInt(page), accept);
     }
 
     private Response getFragment(final String subject,
-                                final String predicate,
-                                final String object,
-                                final String context,
-                                final int page,
-                                final String accept) {
+                                 final String predicate,
+                                 final String object,
+                                 final String context,
+                                 final int page,
+                                 final String accept) {
+        System.out.println("3");
         final RDFFormat format = getFormat(accept);
 
-        StreamingOutput stream = new StreamingOutput() {
-            @Override
-            public void write(OutputStream outputStream) throws IOException, WebApplicationException {
-                try {
-                    ldfService.writeFragment(subject, predicate, object, context, page, format, outputStream);
-                } catch (RepositoryException e) {
-                    throw new WebApplicationException(e);
+        try {
+            StreamingOutput stream = new StreamingOutput() {
+                @Override
+                public void write(OutputStream outputStream) throws IOException, WebApplicationException {
+                    try {
+                        ldfService.writeFragment(subject, predicate, object, context, page, format, outputStream);
+                    } catch (RepositoryException e) {
+                        throw new WebApplicationException(e);
+                    }
                 }
-            }
-        };
-        return Response.ok(stream).build();
+            };
+            return Response.ok(stream).build();
+        } catch (WebApplicationException e) {
+            return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(e.getMessage()).build();
+        } catch (IllegalArgumentException e) {
+            return Response.status(Response.Status.BAD_REQUEST).entity(e.getMessage()).build();
+        }
     }
 
     private RDFFormat getFormat(String accept) {