[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[List Home]
|
[stp-commits] r3331 - org.eclipse.stp.sca/trunk/org.eclipse.stp.sca.diagram.sca/src/org/eclipse/stp/sca/diagram/sca/dnd
|
- From: genie@xxxxxxxxxxx
- Date: Wed, 16 Sep 2009 06:44:32 -0400 (EDT)
- Delivered-to: stp-commits@eclipse.org
Author: sdrapeau
Date: 2009-09-16 06:44:32 -0400 (Wed, 16 Sep 2009)
New Revision: 3331
Modified:
org.eclipse.stp.sca/trunk/org.eclipse.stp.sca.diagram.sca/src/org/eclipse/stp/sca/diagram/sca/dnd/AbstractCompositeFileDD.java
Log:
Composite files enclosed in a jar file are now copied in directory .metadata.
Used by the D'n'D action to introspect the composite file.
Modified: org.eclipse.stp.sca/trunk/org.eclipse.stp.sca.diagram.sca/src/org/eclipse/stp/sca/diagram/sca/dnd/AbstractCompositeFileDD.java
===================================================================
--- org.eclipse.stp.sca/trunk/org.eclipse.stp.sca.diagram.sca/src/org/eclipse/stp/sca/diagram/sca/dnd/AbstractCompositeFileDD.java 2009-09-15 17:08:21 UTC (rev 3330)
+++ org.eclipse.stp.sca/trunk/org.eclipse.stp.sca.diagram.sca/src/org/eclipse/stp/sca/diagram/sca/dnd/AbstractCompositeFileDD.java 2009-09-16 10:44:32 UTC (rev 3331)
@@ -16,8 +16,13 @@
import org.eclipse.core.commands.ExecutionException;
import org.eclipse.core.resources.IFile;
import org.eclipse.core.resources.IResource;
+import org.eclipse.core.resources.ResourcesPlugin;
import org.eclipse.core.runtime.IAdaptable;
+import org.eclipse.core.runtime.IPath;
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.gef.Request;
import org.eclipse.gef.commands.CompoundCommand;
import org.eclipse.gmf.runtime.common.core.command.CommandResult;
@@ -33,8 +38,6 @@
import org.eclipse.gmf.runtime.emf.type.core.requests.CreateElementRequest;
import org.eclipse.gmf.runtime.notation.Node;
import org.eclipse.gmf.runtime.notation.View;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jdt.core.IPackageFragmentRoot;
import org.eclipse.jdt.internal.core.JarEntryFile;
import org.eclipse.stp.sca.Component;
import org.eclipse.stp.sca.Composite;
@@ -42,6 +45,7 @@
import org.eclipse.stp.sca.diagram.dnd.AbstractFileDD;
import org.eclipse.stp.sca.introspection.CompositeImplementationResolver;
import org.eclipse.stp.sca.util.ScaCompositeUtils;
+import org.osgi.framework.Bundle;
/**
* @author Jamil Shaikh - RIM
@@ -57,7 +61,7 @@
if (transfer != null) {
IResource file = getCompositeFile(transfer);
if (file != null) {
- if (file.getFileExtension().equals("composite")) {
+ if (file.getFileExtension().equals("composite")) { //$NON-NLS-1$
cmd = getCommand(host, editPart, request, file);
}
}
@@ -72,12 +76,20 @@
file = (IResource) transfer;
} else if (transfer instanceof JarEntryFile) {
JarEntryFile jarEntry = (JarEntryFile) transfer;
- IPackageFragmentRoot jarRoot = jarEntry.getPackageFragmentRoot();
- IJavaProject jp = jarRoot.getJavaProject();
- String projectPath = jp.getProject().getLocation().toString();
- java.io.File tmpFile = new java.io.File(new java.io.File(
- projectPath).toString()
- + "/" + jarEntry.getName());
+
+ Bundle bundle = Platform
+ .getBundle("org.eclipse.stp.sca.introspection"); //$NON-NLS-1$
+ if (bundle == null) {
+ String msg = "Bundle org.eclipse.stp.sca.introspection not found"; //$NON-NLS-1$
+ ResourcesPlugin.getPlugin().getLog().log(
+ new Status(IStatus.ERROR,
+ "org.eclipse.stp.sca.diagram.sca", msg)); //$NON-NLS-1$
+ return null;
+ }
+ IPath stateLocation = Platform.getStateLocation(bundle);
+ java.io.File tmpFile = new java.io.File(stateLocation.toString()
+ + "/" + jarEntry.getName()); //$NON-NLS-1$
+
file = JDTUtils.copyFileEnclosedInJar(jarEntry, tmpFile);
}
return file;