You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@karaf.apache.org by Andreas Pieber <an...@gmail.com> on 2013/01/21 17:00:41 UTC

Re: svn commit: r1436343 - in /karaf/branches/karaf-2.2.x/deployer: blueprint/src/main/java/org/apache/karaf/deployer/blueprint/ features/src/main/java/org/apache/karaf/deployer/features/ spring/src/main/java/org/apache/karaf/deployer/spring/

just my 0.02€ but maybe we don't want to duplicate the same code thrice? :-)

Kind regards,
Andreas

On Mon, Jan 21, 2013 at 2:41 PM,  <gn...@apache.org> wrote:
> Author: gnodet
> Date: Mon Jan 21 13:41:10 2013
> New Revision: 1436343
>
> URL: http://svn.apache.org/viewvc?rev=1436343&view=rev
> Log:
> [KARAF-2134] Deployers do not support mvn urls well
>
> Modified:
>     karaf/branches/karaf-2.2.x/deployer/blueprint/src/main/java/org/apache/karaf/deployer/blueprint/BlueprintTransformer.java
>     karaf/branches/karaf-2.2.x/deployer/features/src/main/java/org/apache/karaf/deployer/features/FeatureTransformer.java
>     karaf/branches/karaf-2.2.x/deployer/spring/src/main/java/org/apache/karaf/deployer/spring/SpringTransformer.java
>
> Modified: karaf/branches/karaf-2.2.x/deployer/blueprint/src/main/java/org/apache/karaf/deployer/blueprint/BlueprintTransformer.java
> URL: http://svn.apache.org/viewvc/karaf/branches/karaf-2.2.x/deployer/blueprint/src/main/java/org/apache/karaf/deployer/blueprint/BlueprintTransformer.java?rev=1436343&r1=1436342&r2=1436343&view=diff
> ==============================================================================
> --- karaf/branches/karaf-2.2.x/deployer/blueprint/src/main/java/org/apache/karaf/deployer/blueprint/BlueprintTransformer.java (original)
> +++ karaf/branches/karaf-2.2.x/deployer/blueprint/src/main/java/org/apache/karaf/deployer/blueprint/BlueprintTransformer.java Mon Jan 21 13:41:10 2013
> @@ -64,7 +64,7 @@ public class BlueprintTransformer {
>          // Build dom document
>          Document doc = parse(url);
>          // Heuristicly retrieve name and version
> -        String name = url.getPath();
> +        String name = getPath(url);
>          int idx = name.lastIndexOf('/');
>          if (idx >= 0) {
>              name = name.substring(idx + 1);
> @@ -185,6 +185,28 @@ public class BlueprintTransformer {
>          return db.parse(url.toString());
>      }
>
> +    protected static String getPath(URL url) {
> +        if (url.getProtocol().equals("mvn")) {
> +            String[] parts = url.toExternalForm().substring(4).split("/");
> +            String groupId;
> +            String artifactId;
> +            String version;
> +            String type;
> +            String qualifier;
> +            if (parts.length < 3 || parts.length > 5) {
> +                return url.getPath();
> +            }
> +            groupId = parts[0];
> +            artifactId = parts[1];
> +            version = parts[2];
> +            type = (parts.length >= 4) ?  "." + parts[3] : ".jar";
> +            qualifier = (parts.length >= 5) ? "-" + parts[4] :  "";
> +            return groupId.replace('.', '/') + "/" + artifactId + "/"
> +                    + version + "/" + artifactId + "-" + version + qualifier + type;
> +        }
> +        return url.getPath();
> +    }
> +
>      protected static void copyInputStream(InputStream in, OutputStream out) throws Exception {
>          byte[] buffer = new byte[4096];
>          int len = in.read(buffer);
>
> Modified: karaf/branches/karaf-2.2.x/deployer/features/src/main/java/org/apache/karaf/deployer/features/FeatureTransformer.java
> URL: http://svn.apache.org/viewvc/karaf/branches/karaf-2.2.x/deployer/features/src/main/java/org/apache/karaf/deployer/features/FeatureTransformer.java?rev=1436343&r1=1436342&r2=1436343&view=diff
> ==============================================================================
> --- karaf/branches/karaf-2.2.x/deployer/features/src/main/java/org/apache/karaf/deployer/features/FeatureTransformer.java (original)
> +++ karaf/branches/karaf-2.2.x/deployer/features/src/main/java/org/apache/karaf/deployer/features/FeatureTransformer.java Mon Jan 21 13:41:10 2013
> @@ -36,7 +36,7 @@ public class FeatureTransformer {
>
>      public static void transform(URL url, OutputStream os) throws Exception {
>          // Heuristicly retrieve name and version
> -        String name = url.getPath();
> +        String name = getPath(url);
>          int idx = name.lastIndexOf('/');
>          if (idx >= 0) {
>              name = name.substring(idx + 1);
> @@ -72,6 +72,28 @@ public class FeatureTransformer {
>          os.close();
>      }
>
> +    private static String getPath(URL url) {
> +        if (url.getProtocol().equals("mvn")) {
> +            String[] parts = url.toExternalForm().substring(4).split("/");
> +            String groupId;
> +            String artifactId;
> +            String version;
> +            String type;
> +            String qualifier;
> +            if (parts.length < 3 || parts.length > 5) {
> +                return url.getPath();
> +            }
> +            groupId = parts[0];
> +            artifactId = parts[1];
> +            version = parts[2];
> +            type = (parts.length >= 4) ?  "." + parts[3] : ".jar";
> +            qualifier = (parts.length >= 5) ? "-" + parts[4] :  "";
> +            return groupId.replace('.', '/') + "/" + artifactId + "/"
> +                    + version + "/" + artifactId + "-" + version + qualifier + type;
> +        }
> +        return url.getPath();
> +    }
> +
>      private static void copyInputStream(InputStream in, OutputStream out) throws IOException {
>          byte[] buffer = new byte[8192];
>          int len = in.read(buffer);
>
> Modified: karaf/branches/karaf-2.2.x/deployer/spring/src/main/java/org/apache/karaf/deployer/spring/SpringTransformer.java
> URL: http://svn.apache.org/viewvc/karaf/branches/karaf-2.2.x/deployer/spring/src/main/java/org/apache/karaf/deployer/spring/SpringTransformer.java?rev=1436343&r1=1436342&r2=1436343&view=diff
> ==============================================================================
> --- karaf/branches/karaf-2.2.x/deployer/spring/src/main/java/org/apache/karaf/deployer/spring/SpringTransformer.java (original)
> +++ karaf/branches/karaf-2.2.x/deployer/spring/src/main/java/org/apache/karaf/deployer/spring/SpringTransformer.java Mon Jan 21 13:41:10 2013
> @@ -64,7 +64,7 @@ public class SpringTransformer {
>          // Build dom document
>          Document doc = parse(url);
>          // Heuristicly retrieve name and version
> -        String name = url.getPath();
> +        String name = getPath(url);
>          int idx = name.lastIndexOf('/');
>          if (idx >= 0) {
>              name = name.substring(idx + 1);
> @@ -182,6 +182,28 @@ public class SpringTransformer {
>          return db.parse(url.toString());
>      }
>
> +    protected static String getPath(URL url) {
> +        if (url.getProtocol().equals("mvn")) {
> +            String[] parts = url.toExternalForm().substring(4).split("/");
> +            String groupId;
> +            String artifactId;
> +            String version;
> +            String type;
> +            String qualifier;
> +            if (parts.length < 3 || parts.length > 5) {
> +                return url.getPath();
> +            }
> +            groupId = parts[0];
> +            artifactId = parts[1];
> +            version = parts[2];
> +            type = (parts.length >= 4) ?  "." + parts[3] : ".jar";
> +            qualifier = (parts.length >= 5) ? "-" + parts[4] :  "";
> +            return groupId.replace('.', '/') + "/" + artifactId + "/"
> +                    + version + "/" + artifactId + "-" + version + qualifier + type;
> +        }
> +        return url.getPath();
> +    }
> +
>      protected static void copyInputStream(InputStream in, OutputStream out) throws Exception {
>          byte[] buffer = new byte[4096];
>          int len = in.read(buffer);
>
>

Re: svn commit: r1436343 - in /karaf/branches/karaf-2.2.x/deployer: blueprint/src/main/java/org/apache/karaf/deployer/blueprint/ features/src/main/java/org/apache/karaf/deployer/features/ spring/src/main/java/org/apache/karaf/deployer/spring/

Posted by Guillaume Nodet <gn...@gmail.com>.
You're obviously right.  I'll move it to the utils module and use an
inlined package in the 3 bundles.


On Mon, Jan 21, 2013 at 5:00 PM, Andreas Pieber <an...@gmail.com> wrote:

> just my 0.02€ but maybe we don't want to duplicate the same code thrice?
> :-)
>
> Kind regards,
> Andreas
>
> On Mon, Jan 21, 2013 at 2:41 PM,  <gn...@apache.org> wrote:
> > Author: gnodet
> > Date: Mon Jan 21 13:41:10 2013
> > New Revision: 1436343
> >
> > URL: http://svn.apache.org/viewvc?rev=1436343&view=rev
> > Log:
> > [KARAF-2134] Deployers do not support mvn urls well
> >
> > Modified:
> >
> karaf/branches/karaf-2.2.x/deployer/blueprint/src/main/java/org/apache/karaf/deployer/blueprint/BlueprintTransformer.java
> >
> karaf/branches/karaf-2.2.x/deployer/features/src/main/java/org/apache/karaf/deployer/features/FeatureTransformer.java
> >
> karaf/branches/karaf-2.2.x/deployer/spring/src/main/java/org/apache/karaf/deployer/spring/SpringTransformer.java
> >
> > Modified:
> karaf/branches/karaf-2.2.x/deployer/blueprint/src/main/java/org/apache/karaf/deployer/blueprint/BlueprintTransformer.java
> > URL:
> http://svn.apache.org/viewvc/karaf/branches/karaf-2.2.x/deployer/blueprint/src/main/java/org/apache/karaf/deployer/blueprint/BlueprintTransformer.java?rev=1436343&r1=1436342&r2=1436343&view=diff
> >
> ==============================================================================
> > ---
> karaf/branches/karaf-2.2.x/deployer/blueprint/src/main/java/org/apache/karaf/deployer/blueprint/BlueprintTransformer.java
> (original)
> > +++
> karaf/branches/karaf-2.2.x/deployer/blueprint/src/main/java/org/apache/karaf/deployer/blueprint/BlueprintTransformer.java
> Mon Jan 21 13:41:10 2013
> > @@ -64,7 +64,7 @@ public class BlueprintTransformer {
> >          // Build dom document
> >          Document doc = parse(url);
> >          // Heuristicly retrieve name and version
> > -        String name = url.getPath();
> > +        String name = getPath(url);
> >          int idx = name.lastIndexOf('/');
> >          if (idx >= 0) {
> >              name = name.substring(idx + 1);
> > @@ -185,6 +185,28 @@ public class BlueprintTransformer {
> >          return db.parse(url.toString());
> >      }
> >
> > +    protected static String getPath(URL url) {
> > +        if (url.getProtocol().equals("mvn")) {
> > +            String[] parts =
> url.toExternalForm().substring(4).split("/");
> > +            String groupId;
> > +            String artifactId;
> > +            String version;
> > +            String type;
> > +            String qualifier;
> > +            if (parts.length < 3 || parts.length > 5) {
> > +                return url.getPath();
> > +            }
> > +            groupId = parts[0];
> > +            artifactId = parts[1];
> > +            version = parts[2];
> > +            type = (parts.length >= 4) ?  "." + parts[3] : ".jar";
> > +            qualifier = (parts.length >= 5) ? "-" + parts[4] :  "";
> > +            return groupId.replace('.', '/') + "/" + artifactId + "/"
> > +                    + version + "/" + artifactId + "-" + version +
> qualifier + type;
> > +        }
> > +        return url.getPath();
> > +    }
> > +
> >      protected static void copyInputStream(InputStream in, OutputStream
> out) throws Exception {
> >          byte[] buffer = new byte[4096];
> >          int len = in.read(buffer);
> >
> > Modified:
> karaf/branches/karaf-2.2.x/deployer/features/src/main/java/org/apache/karaf/deployer/features/FeatureTransformer.java
> > URL:
> http://svn.apache.org/viewvc/karaf/branches/karaf-2.2.x/deployer/features/src/main/java/org/apache/karaf/deployer/features/FeatureTransformer.java?rev=1436343&r1=1436342&r2=1436343&view=diff
> >
> ==============================================================================
> > ---
> karaf/branches/karaf-2.2.x/deployer/features/src/main/java/org/apache/karaf/deployer/features/FeatureTransformer.java
> (original)
> > +++
> karaf/branches/karaf-2.2.x/deployer/features/src/main/java/org/apache/karaf/deployer/features/FeatureTransformer.java
> Mon Jan 21 13:41:10 2013
> > @@ -36,7 +36,7 @@ public class FeatureTransformer {
> >
> >      public static void transform(URL url, OutputStream os) throws
> Exception {
> >          // Heuristicly retrieve name and version
> > -        String name = url.getPath();
> > +        String name = getPath(url);
> >          int idx = name.lastIndexOf('/');
> >          if (idx >= 0) {
> >              name = name.substring(idx + 1);
> > @@ -72,6 +72,28 @@ public class FeatureTransformer {
> >          os.close();
> >      }
> >
> > +    private static String getPath(URL url) {
> > +        if (url.getProtocol().equals("mvn")) {
> > +            String[] parts =
> url.toExternalForm().substring(4).split("/");
> > +            String groupId;
> > +            String artifactId;
> > +            String version;
> > +            String type;
> > +            String qualifier;
> > +            if (parts.length < 3 || parts.length > 5) {
> > +                return url.getPath();
> > +            }
> > +            groupId = parts[0];
> > +            artifactId = parts[1];
> > +            version = parts[2];
> > +            type = (parts.length >= 4) ?  "." + parts[3] : ".jar";
> > +            qualifier = (parts.length >= 5) ? "-" + parts[4] :  "";
> > +            return groupId.replace('.', '/') + "/" + artifactId + "/"
> > +                    + version + "/" + artifactId + "-" + version +
> qualifier + type;
> > +        }
> > +        return url.getPath();
> > +    }
> > +
> >      private static void copyInputStream(InputStream in, OutputStream
> out) throws IOException {
> >          byte[] buffer = new byte[8192];
> >          int len = in.read(buffer);
> >
> > Modified:
> karaf/branches/karaf-2.2.x/deployer/spring/src/main/java/org/apache/karaf/deployer/spring/SpringTransformer.java
> > URL:
> http://svn.apache.org/viewvc/karaf/branches/karaf-2.2.x/deployer/spring/src/main/java/org/apache/karaf/deployer/spring/SpringTransformer.java?rev=1436343&r1=1436342&r2=1436343&view=diff
> >
> ==============================================================================
> > ---
> karaf/branches/karaf-2.2.x/deployer/spring/src/main/java/org/apache/karaf/deployer/spring/SpringTransformer.java
> (original)
> > +++
> karaf/branches/karaf-2.2.x/deployer/spring/src/main/java/org/apache/karaf/deployer/spring/SpringTransformer.java
> Mon Jan 21 13:41:10 2013
> > @@ -64,7 +64,7 @@ public class SpringTransformer {
> >          // Build dom document
> >          Document doc = parse(url);
> >          // Heuristicly retrieve name and version
> > -        String name = url.getPath();
> > +        String name = getPath(url);
> >          int idx = name.lastIndexOf('/');
> >          if (idx >= 0) {
> >              name = name.substring(idx + 1);
> > @@ -182,6 +182,28 @@ public class SpringTransformer {
> >          return db.parse(url.toString());
> >      }
> >
> > +    protected static String getPath(URL url) {
> > +        if (url.getProtocol().equals("mvn")) {
> > +            String[] parts =
> url.toExternalForm().substring(4).split("/");
> > +            String groupId;
> > +            String artifactId;
> > +            String version;
> > +            String type;
> > +            String qualifier;
> > +            if (parts.length < 3 || parts.length > 5) {
> > +                return url.getPath();
> > +            }
> > +            groupId = parts[0];
> > +            artifactId = parts[1];
> > +            version = parts[2];
> > +            type = (parts.length >= 4) ?  "." + parts[3] : ".jar";
> > +            qualifier = (parts.length >= 5) ? "-" + parts[4] :  "";
> > +            return groupId.replace('.', '/') + "/" + artifactId + "/"
> > +                    + version + "/" + artifactId + "-" + version +
> qualifier + type;
> > +        }
> > +        return url.getPath();
> > +    }
> > +
> >      protected static void copyInputStream(InputStream in, OutputStream
> out) throws Exception {
> >          byte[] buffer = new byte[4096];
> >          int len = in.read(buffer);
> >
> >
>



-- 
------------------------
Guillaume Nodet
------------------------
Blog: http://gnodet.blogspot.com/
------------------------
FuseSource, Integration everywhere
http://fusesource.com