You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@aries.apache.org by cs...@apache.org on 2018/11/27 14:16:52 UTC

[aries-jax-rs-whiteboard] branch master updated: [ARIES-1870] Do not use file system dependent classes

This is an automated email from the ASF dual-hosted git repository.

csierra pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/aries-jax-rs-whiteboard.git


The following commit(s) were added to refs/heads/master by this push:
     new 30042ac  [ARIES-1870] Do not use file system dependent classes
30042ac is described below

commit 30042ac6afe4c425fe019928bc559223892260e2
Author: Carlos Sierra <cs...@apache.org>
AuthorDate: Tue Nov 27 15:15:15 2018 +0100

    [ARIES-1870] Do not use file system dependent classes
---
 .../internal/introspection/ClassIntrospector.java        | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/jax-rs.whiteboard/src/main/java/org/apache/aries/jax/rs/whiteboard/internal/introspection/ClassIntrospector.java b/jax-rs.whiteboard/src/main/java/org/apache/aries/jax/rs/whiteboard/internal/introspection/ClassIntrospector.java
index 6063e13..07877de 100644
--- a/jax-rs.whiteboard/src/main/java/org/apache/aries/jax/rs/whiteboard/internal/introspection/ClassIntrospector.java
+++ b/jax-rs.whiteboard/src/main/java/org/apache/aries/jax/rs/whiteboard/internal/introspection/ClassIntrospector.java
@@ -31,11 +31,9 @@ import javax.ws.rs.Path;
 import javax.ws.rs.Produces;
 import javax.ws.rs.core.MediaType;
 import java.lang.reflect.Method;
-import java.nio.file.Paths;
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.Collection;
-import java.util.Collections;
 import java.util.HashSet;
 import java.util.List;
 import java.util.Set;
@@ -195,12 +193,8 @@ public class ClassIntrospector {
         resourceMethodInfoDTO.nameBindings = nameBindings == null ? null :
             nameBindings.toArray(new String[0]);
 
-        try {
-            resourceMethodInfoDTO.path = Paths.get(path).normalize().toString();
-        }
-        catch (Exception e) {
-            resourceMethodInfoDTO.path = "/";
-        }
+        resourceMethodInfoDTO.path = normalize(path);
+
         resourceMethodInfoDTO.method = httpMethod;
 
         return Stream.of(resourceMethodInfoDTO);
@@ -243,4 +237,10 @@ public class ClassIntrospector {
         return produces == null ? null : JAXRSUtils.getMediaTypes(produces.value());
     }
 
+    private static String normalize(String path) {
+        return "/" + Arrays.stream(path.split("/")).
+            filter(s -> !s.isEmpty()).
+            collect(Collectors.joining("/"));
+    }
+
 }