Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'jpa/plugins/org.eclipse.jpt.ui/src')
-rw-r--r--jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/jface/ArchiveFileViewerFilter.java (renamed from jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/jface/JarFileViewerFilter.java)30
-rw-r--r--jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/persistence/JptUiPersistenceMessages.java3
-rw-r--r--jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/persistence/details/ArchiveFileSelectionDialog.java226
-rw-r--r--jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/persistence/details/GenericPersistenceUnitGeneralComposite.java12
-rw-r--r--jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/persistence/details/GenericPersistenceUnitJarFilesComposite.java26
-rw-r--r--jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/persistence/details/PersistenceUnitGeneralComposite.java13
-rw-r--r--jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/persistence/details/PersistenceUnitJarFilesComposite.java59
7 files changed, 301 insertions, 68 deletions
diff --git a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/jface/JarFileViewerFilter.java b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/jface/ArchiveFileViewerFilter.java
index e6b2bc014d..3f66b67618 100644
--- a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/jface/JarFileViewerFilter.java
+++ b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/jface/ArchiveFileViewerFilter.java
@@ -14,27 +14,31 @@ import org.eclipse.core.resources.IFile;
import org.eclipse.core.resources.IFolder;
import org.eclipse.core.resources.IResource;
import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IPath;
import org.eclipse.jface.viewers.Viewer;
import org.eclipse.jface.viewers.ViewerFilter;
+import org.eclipse.jpt.ui.JptUiPlugin;
/**
* This filter will deny showing any file that are not JAR files or folders
* that don't contain any JAR files in its sub-hierarchy.
*/
-public class JarFileViewerFilter
+public class ArchiveFileViewerFilter
extends ViewerFilter
{
- public JarFileViewerFilter() {
+ private static final String[] archiveExtensions= { "jar", "zip" }; //$NON-NLS-1$
+
+
+ public ArchiveFileViewerFilter() {
super();
}
-
@Override
public boolean select(
Viewer viewer, Object parentElement, Object element) {
if (element instanceof IFile) {
- return isJarFile((IFile) element);
+ return isArchivePath(((IFile)element).getFullPath());
}
else if (element instanceof IFolder) {
IFolder folder = (IFolder) element;
@@ -47,15 +51,21 @@ public class JarFileViewerFilter
}
catch (CoreException ce) {
// just skip this one, then
+ JptUiPlugin.log(ce);
}
}
return false;
}
- /* there doesn't seem to be a very good way of determining if a file is an
- * actual jar file, so for now, if it's a file => true.
- */
- protected boolean isJarFile(IFile file) {
- return true;
- }
+ public static boolean isArchivePath(IPath path) {
+ String ext= path.getFileExtension();
+ if (ext != null && ext.length() != 0) {
+ for (int i= 0; i < archiveExtensions.length; i++) {
+ if (ext.equalsIgnoreCase(archiveExtensions[i])) {
+ return true;
+ }
+ }
+ }
+ return false;
+ }
}
diff --git a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/persistence/JptUiPersistenceMessages.java b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/persistence/JptUiPersistenceMessages.java
index f0a120274a..8675b04527 100644
--- a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/persistence/JptUiPersistenceMessages.java
+++ b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/persistence/JptUiPersistenceMessages.java
@@ -21,6 +21,9 @@ public class JptUiPersistenceMessages {
public static String Boolean_False;
public static String Boolean_True;
+
+ public static String ArchiveFileSelectionDialog_jarPathHelpLabel;
+ public static String ArchiveFileSelectionDialog_jarPathLabel;
public static String PersistenceEditor_page_help;
public static String PersistenceEditor_sourceTab;
diff --git a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/persistence/details/ArchiveFileSelectionDialog.java b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/persistence/details/ArchiveFileSelectionDialog.java
new file mode 100644
index 0000000000..6be91cd9c9
--- /dev/null
+++ b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/persistence/details/ArchiveFileSelectionDialog.java
@@ -0,0 +1,226 @@
+/*******************************************************************************
+ * Copyright (c) 2009 Oracle.
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v1.0 which
+ * accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Oracle - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.jpt.ui.internal.persistence.details;
+
+import java.util.Collections;
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IPath;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.draw2d.graph.Path;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.ISelectionChangedListener;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.viewers.SelectionChangedEvent;
+import org.eclipse.jface.viewers.TreeViewer;
+import org.eclipse.jpt.core.JptCorePlugin;
+import org.eclipse.jpt.ui.JptUiPlugin;
+import org.eclipse.jpt.ui.internal.jface.ArchiveFileViewerFilter;
+import org.eclipse.jpt.ui.internal.persistence.JptUiPersistenceMessages;
+import org.eclipse.jpt.ui.internal.swt.TextFieldModelAdapter;
+import org.eclipse.jpt.utility.internal.model.value.SimplePropertyValueModel;
+import org.eclipse.jpt.utility.model.value.WritablePropertyValueModel;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.swt.widgets.Text;
+import org.eclipse.ui.dialogs.ElementTreeSelectionDialog;
+import org.eclipse.ui.dialogs.ISelectionStatusValidator;
+import org.eclipse.ui.model.WorkbenchContentProvider;
+import org.eclipse.ui.model.WorkbenchLabelProvider;
+import org.eclipse.ui.views.navigator.ResourceComparator;
+import org.eclipse.wst.common.componentcore.ComponentCore;
+import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
+import org.eclipse.wst.common.componentcore.resources.IVirtualContainer;
+import org.eclipse.wst.common.componentcore.resources.IVirtualFile;
+import org.eclipse.wst.common.componentcore.resources.IVirtualFolder;
+import org.eclipse.wst.common.componentcore.resources.IVirtualResource;
+
+public class ArchiveFileSelectionDialog
+ extends ElementTreeSelectionDialog
+{
+ private final WritablePropertyValueModel<String> jarPathModel;
+
+ private DeploymentPathCalculator pathCalculator;
+
+
+ public ArchiveFileSelectionDialog(Shell parent) {
+ this(parent, new SimpleDeploymentPathCalculator());
+ }
+
+ public ArchiveFileSelectionDialog(Shell parent, DeploymentPathCalculator pathCalculator) {
+ super(parent, new WorkbenchLabelProvider(), new WorkbenchContentProvider());
+ this.pathCalculator = pathCalculator;
+ setComparator(new ResourceComparator(ResourceComparator.NAME));
+ addFilter(new ArchiveFileViewerFilter());
+ setValidator(new ArchiveFileSelectionValidator());
+ this.jarPathModel = new SimplePropertyValueModel<String>();
+ }
+
+
+ @Override
+ protected Control createDialogArea(Composite parent) {
+ Composite composite = (Composite) super.createDialogArea(parent);
+
+ Label helpLabel = new Label(composite, SWT.WRAP);
+ helpLabel.setText(JptUiPersistenceMessages.ArchiveFileSelectionDialog_jarPathHelpLabel);
+ GridData gd = new GridData(GridData.FILL_HORIZONTAL);
+ gd.widthHint = 400;
+ helpLabel.setLayoutData(gd);
+
+ Composite subComposite = new Composite(composite, SWT.NONE);
+ subComposite.setLayout(new GridLayout(2, false));
+ subComposite.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
+
+ Label jarPathLabel = new Label(subComposite, SWT.NONE);
+ jarPathLabel.setFont(composite.getFont());
+ jarPathLabel.setText(JptUiPersistenceMessages.ArchiveFileSelectionDialog_jarPathLabel);
+
+ Text jarPathText = new Text(subComposite, SWT.BORDER);
+ jarPathText.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
+ TextFieldModelAdapter.adapt(jarPathModel, jarPathText);
+
+ return composite;
+ }
+
+ @Override
+ protected TreeViewer doCreateTreeViewer(Composite parent, int style) {
+ TreeViewer treeViewer = super.doCreateTreeViewer(parent, style);
+
+ treeViewer.addSelectionChangedListener(
+ new ISelectionChangedListener() {
+ public void selectionChanged(SelectionChangedEvent event) {
+ updateJarPathModel(event.getSelection());
+ }
+ });
+
+ return treeViewer;
+ }
+
+ protected void updateJarPathModel(ISelection selection) {
+ Object selectedObj = ((IStructuredSelection) selection).getFirstElement();
+ if (selectedObj instanceof IFile) {
+ this.jarPathModel.setValue(calculateDeployPath((IFile) selectedObj));
+ }
+ else {
+ this.jarPathModel.setValue("");
+ }
+ }
+
+ protected String calculateDeployPath(IFile archiveFile) {
+ return this.pathCalculator.calculateDeploymentPath(archiveFile);
+ }
+
+ @Override
+ protected void computeResult() {
+ setResult(Collections.singletonList(this.jarPathModel.getValue()));
+ }
+
+
+ private static class ArchiveFileSelectionValidator
+ implements ISelectionStatusValidator
+ {
+ public ArchiveFileSelectionValidator() {
+ super();
+ }
+
+
+ public IStatus validate(Object[] selection) {
+ int nSelected= selection.length;
+ if (nSelected == 0 || (nSelected > 1)) {
+ return new Status(IStatus.ERROR, JptUiPlugin.PLUGIN_ID, ""); //$NON-NLS-1$
+ }
+ for (int i= 0; i < selection.length; i++) {
+ Object curr= selection[i];
+ if (curr instanceof IFile) {
+ return new Status(IStatus.OK, JptUiPlugin.PLUGIN_ID, ""); //$NON-NLS-1$
+ }
+ }
+ return new Status(IStatus.ERROR, JptUiPlugin.PLUGIN_ID, ""); //$NON-NLS-1$
+ }
+ }
+
+
+ public static interface DeploymentPathCalculator
+ {
+ String calculateDeploymentPath(IFile file);
+ }
+
+
+ public static class SimpleDeploymentPathCalculator
+ implements DeploymentPathCalculator
+ {
+ public String calculateDeploymentPath(IFile file) {
+ return file.getName();
+ }
+ }
+
+
+ public static class ModuleDeploymentPathCalculator
+ extends SimpleDeploymentPathCalculator
+ {
+ @Override
+ public String calculateDeploymentPath(IFile file) {
+ // first look for virtual component that matches this file, returning
+ // the path to that virtual component
+ IVirtualComponent vComponent = ComponentCore.createComponent(file.getProject());
+ if (vComponent != null) {
+ IVirtualFolder vFolder = vComponent.getRootFolder();
+ IVirtualFile vFile = findVirtualFile(vFolder, file);
+ if (vFile != null) {
+ return calculatePersistenceRootRelativePath(vFile);
+ }
+ }
+
+ // then default to simple behavior
+ return super.calculateDeploymentPath(file);
+ }
+
+ protected IVirtualFile findVirtualFile(IVirtualContainer vContainer, IFile realFile) {
+ try {
+ for (IVirtualResource vResource : vContainer.members()) {
+ if (vResource.getType() == IVirtualResource.FILE) {
+ IVirtualFile vFile = (IVirtualFile) vResource;
+ if (realFile.equals(vFile.getUnderlyingFile())) {
+ return vFile;
+ }
+ }
+ else {
+ IVirtualFile vFile = findVirtualFile((IVirtualContainer) vResource, realFile);
+ if (vFile != null) {
+ return vFile;
+ }
+ }
+ }
+ }
+ catch (CoreException ce) {
+ JptUiPlugin.log(ce);
+ }
+
+ return null;
+ }
+
+ protected String calculatePersistenceRootRelativePath(IVirtualFile vFile) {
+ IProject project = vFile.getProject();
+ IPath puRootPath = JptCorePlugin.getJarDeploymentRootPath(project);
+
+ IPath path = vFile.getRuntimePath().makeRelativeTo(puRootPath);
+
+ return path.toString();
+ }
+ }
+}
diff --git a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/persistence/details/GenericPersistenceUnitGeneralComposite.java b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/persistence/details/GenericPersistenceUnitGeneralComposite.java
index 5f18aa2439..661fcb016f 100644
--- a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/persistence/details/GenericPersistenceUnitGeneralComposite.java
+++ b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/persistence/details/GenericPersistenceUnitGeneralComposite.java
@@ -100,5 +100,17 @@ public class GenericPersistenceUnitGeneralComposite extends PersistenceUnitGener
new GenericPersistenceUnitMappingFilesComposite(this, container);
}
+
+ protected void initializeJarFilesPane(Composite container) {
+ container = addCollapsableSection(
+ container,
+ JptUiPersistenceMessages.PersistenceUnitGeneralComposite_jarFiles
+ );
+
+ updateGridData(container);
+ updateGridData(container.getParent());
+
+ new GenericPersistenceUnitJarFilesComposite(this, container);
+ }
}
diff --git a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/persistence/details/GenericPersistenceUnitJarFilesComposite.java b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/persistence/details/GenericPersistenceUnitJarFilesComposite.java
new file mode 100644
index 0000000000..f695596c98
--- /dev/null
+++ b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/persistence/details/GenericPersistenceUnitJarFilesComposite.java
@@ -0,0 +1,26 @@
+/*******************************************************************************
+ * Copyright (c) 2009 Oracle.
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v1.0 which
+ * accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Oracle - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.jpt.ui.internal.persistence.details;
+
+import org.eclipse.jpt.core.context.persistence.PersistenceUnit;
+import org.eclipse.jpt.ui.internal.widgets.Pane;
+import org.eclipse.swt.widgets.Composite;
+
+public class GenericPersistenceUnitJarFilesComposite
+ extends PersistenceUnitJarFilesComposite
+{
+ public GenericPersistenceUnitJarFilesComposite(
+ Pane<? extends PersistenceUnit> parentPane,
+ Composite parent) {
+
+ super(parentPane, parent);
+ }
+}
diff --git a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/persistence/details/PersistenceUnitGeneralComposite.java b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/persistence/details/PersistenceUnitGeneralComposite.java
index 0c63df1137..1bd355472f 100644
--- a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/persistence/details/PersistenceUnitGeneralComposite.java
+++ b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/persistence/details/PersistenceUnitGeneralComposite.java
@@ -232,19 +232,6 @@ public abstract class PersistenceUnitGeneralComposite extends FormPane<Persisten
new PersistenceUnitClassesComposite(this, container);
}
- protected void initializeJarFilesPane(Composite container) {
-
- container = addCollapsableSection(
- container,
- JptUiPersistenceMessages.PersistenceUnitGeneralComposite_jarFiles
- );
-
- updateGridData(container);
- updateGridData(container.getParent());
-
- new PersistenceUnitJarFilesComposite(this, container);
- }
-
protected void updateGridData(Composite container) {
GridData gridData = new GridData();
diff --git a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/persistence/details/PersistenceUnitJarFilesComposite.java b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/persistence/details/PersistenceUnitJarFilesComposite.java
index 0f979b4bf4..05c0c9ae15 100644
--- a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/persistence/details/PersistenceUnitJarFilesComposite.java
+++ b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/persistence/details/PersistenceUnitJarFilesComposite.java
@@ -10,12 +10,7 @@
package org.eclipse.jpt.ui.internal.persistence.details;
import java.util.ListIterator;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IFolder;
import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
import org.eclipse.jface.dialogs.IDialogConstants;
import org.eclipse.jface.viewers.ILabelProvider;
import org.eclipse.jface.viewers.LabelProvider;
@@ -24,7 +19,6 @@ import org.eclipse.jpt.core.context.persistence.PersistenceUnit;
import org.eclipse.jpt.ui.JptUiPlugin;
import org.eclipse.jpt.ui.internal.JpaHelpContextIds;
import org.eclipse.jpt.ui.internal.JptUiIcons;
-import org.eclipse.jpt.ui.internal.jface.JarFileViewerFilter;
import org.eclipse.jpt.ui.internal.persistence.JptUiPersistenceMessages;
import org.eclipse.jpt.ui.internal.util.SWTUtil;
import org.eclipse.jpt.ui.internal.widgets.AddRemoveListPane;
@@ -43,10 +37,6 @@ import org.eclipse.swt.graphics.Image;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.ui.dialogs.ElementTreeSelectionDialog;
-import org.eclipse.ui.dialogs.ISelectionStatusValidator;
-import org.eclipse.ui.model.WorkbenchContentProvider;
-import org.eclipse.ui.model.WorkbenchLabelProvider;
-import org.eclipse.ui.views.navigator.ResourceComparator;
/**
* Here the layout of this pane:
@@ -69,7 +59,8 @@ import org.eclipse.ui.views.navigator.ResourceComparator;
* @version 2.0
* @since 2.0
*/
-public class PersistenceUnitJarFilesComposite extends Pane<PersistenceUnit>
+public abstract class PersistenceUnitJarFilesComposite
+ extends Pane<PersistenceUnit>
{
/**
* Creates a new <code>PersistenceUnitJPAMappingDescriptorsComposite</code>.
@@ -77,8 +68,9 @@ public class PersistenceUnitJarFilesComposite extends Pane<PersistenceUnit>
* @param parentPane The parent pane of this one
* @param parent The parent container
*/
- public PersistenceUnitJarFilesComposite(Pane<? extends PersistenceUnit> parentPane,
- Composite parent) {
+ public PersistenceUnitJarFilesComposite(
+ Pane<? extends PersistenceUnit> parentPane,
+ Composite parent) {
super(parentPane, parent, false);
}
@@ -188,42 +180,22 @@ public class PersistenceUnitJarFilesComposite extends Pane<PersistenceUnit>
private void addJarFileRef(ObjectListSelectionModel listSelectionModel) {
IProject project = getSubject().getJpaProject().getProject();
- ElementTreeSelectionDialog dialog = new ElementTreeSelectionDialog(
- getShell(),
- new WorkbenchLabelProvider(),
- new WorkbenchContentProvider()
- );
-
+ ElementTreeSelectionDialog dialog = new ArchiveFileSelectionDialog(
+ getShell(), buildJarFileDeploymentPathCalculator());
+
dialog.setHelpAvailable(false);
- dialog.setValidator(buildValidator());
dialog.setTitle(JptUiPersistenceMessages.PersistenceUnitMappingFilesComposite_jarFileDialog_title);
dialog.setMessage(JptUiPersistenceMessages.PersistenceUnitMappingFilesComposite_jarFileDialog_message);
- dialog.addFilter(new JarFileViewerFilter());
dialog.setInput(project);
- dialog.setComparator(new ResourceComparator(ResourceComparator.NAME));
-
+
SWTUtil.show(
dialog,
buildSelectionDialogPostExecution(listSelectionModel)
);
}
- private ISelectionStatusValidator buildValidator() {
- return new ISelectionStatusValidator() {
- public IStatus validate(Object[] selection) {
- if (selection.length == 0) {
- return new Status(IStatus.ERROR, JptUiPlugin.PLUGIN_ID, "");
- }
-
- for (Object item : selection) {
- if (item instanceof IFolder) {
- return new Status(IStatus.ERROR, JptUiPlugin.PLUGIN_ID, "");
- }
- }
-
- return new Status(IStatus.OK, JptUiPlugin.PLUGIN_ID, "");
- }
- };
+ protected ArchiveFileSelectionDialog.DeploymentPathCalculator buildJarFileDeploymentPathCalculator() {
+ return new ArchiveFileSelectionDialog.ModuleDeploymentPathCalculator();
}
private PostExecution<ElementTreeSelectionDialog> buildSelectionDialogPostExecution(
@@ -235,15 +207,12 @@ public class PersistenceUnitJarFilesComposite extends Pane<PersistenceUnit>
}
for (Object result : dialog.getResult()) {
- IFile file = (IFile) result;
- // TODO - move to deploy path location
- IPath filePath = file.getProjectRelativePath();
- String fileName = filePath.toPortableString();
- if (jarFileRefExists(fileName)) {
+ String filePath = (String) result;
+ if (jarFileRefExists(filePath)) {
continue;
}
JarFileRef jarFileRef = getSubject().addJarFileRef();
- jarFileRef.setFileName(fileName);
+ jarFileRef.setFileName(filePath);
listSelectionModel.addSelectedValue(jarFileRef);
}

Back to the top