Blob Blame History Raw
From d452522ca058a305f645297e9df76c313e928b9b Mon Sep 17 00:00:00 2001
From: Igor Fedorenko <igor@ifedorenko.com>
Date: Fri, 27 Mar 2015 22:27:17 -0400
Subject: [PATCH] don't use m2e internal deprecated methods

Signed-off-by: Igor Fedorenko <igor@ifedorenko.com>
---
 .../internal/launching/MavenITLaunchDelegate.java  | 25 ++++++++++++++++++++--
 1 file changed, 23 insertions(+), 2 deletions(-)

diff --git a/com.ifedorenko.m2e.mavendev/src/com/ifedorenko/m2e/mavendev/internal/launching/MavenITLaunchDelegate.java b/com.ifedorenko.m2e.mavendev/src/com/ifedorenko/m2e/mavendev/internal/launching/MavenITLaunchDelegate.java
index 0f45b39..5476455 100644
--- a/com.ifedorenko.m2e.mavendev/src/com/ifedorenko/m2e/mavendev/internal/launching/MavenITLaunchDelegate.java
+++ b/com.ifedorenko.m2e.mavendev/src/com/ifedorenko/m2e/mavendev/internal/launching/MavenITLaunchDelegate.java
@@ -13,6 +13,8 @@ package com.ifedorenko.m2e.mavendev.internal.launching;
 import static org.eclipse.m2e.internal.launch.MavenLaunchUtils.quote;
 
 import java.io.File;
+import java.io.IOException;
+import java.net.URL;
 import java.util.ArrayList;
 import java.util.HashSet;
 import java.util.List;
@@ -20,8 +22,11 @@ import java.util.Set;
 
 import org.eclipse.core.internal.runtime.DevClassPathHelper;
 import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.FileLocator;
 import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
 import org.eclipse.core.runtime.Platform;
+import org.eclipse.core.runtime.Status;
 import org.eclipse.debug.core.ILaunch;
 import org.eclipse.debug.core.ILaunchConfiguration;
 import org.eclipse.debug.core.model.ILaunchConfigurationDelegate;
@@ -38,6 +43,8 @@ import org.eclipse.m2e.internal.launch.MavenRuntimeLaunchSupport;
 import org.eclipse.m2e.internal.launch.MavenRuntimeLaunchSupport.VMArguments;
 import org.osgi.framework.Bundle;
 
+import com.ifedorenko.m2e.mavendev.internal.MavenDevToolsActivator;
+
 /**
  * Launches Maven Integration Tests in development mode.
  * <p/>
@@ -134,17 +141,31 @@ public class MavenITLaunchDelegate
             bundleRelativePath = "/";
         }
         Bundle bundle = Platform.getBundle( bundleId );
-        cp.add( MavenLaunchUtils.getBundleEntry( bundle, bundleRelativePath ) );
+        cp.add( getBundleEntry( bundle, bundleRelativePath ) );
         if ( DevClassPathHelper.inDevelopmentMode() )
         {
             for ( String cpe : DevClassPathHelper.getDevClassPath( bundleId ) )
             {
-                cp.add( MavenLaunchUtils.getBundleEntry( bundle, cpe ) );
+                cp.add( getBundleEntry( bundle, cpe ) );
             }
         }
         return cp;
     }
 
+    private String getBundleEntry( Bundle bundle, String path )
+        throws CoreException
+    {
+        URL entry = bundle.getEntry( path );
+        try
+        {
+            return FileLocator.toFileURL( entry ).getFile();
+        }
+        catch ( IOException e )
+        {
+            throw new CoreException( new Status( IStatus.ERROR, MavenDevToolsActivator.PLUGIN_ID, e.getMessage(), e ) );
+        }
+    }
+    
     public String getTestClasspath( ILaunchConfiguration configuration )
         throws CoreException
     {
-- 
2.1.0