summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKaren Butzke2012-12-21 16:21:34 (EST)
committerKaren Butzke2012-12-21 16:21:34 (EST)
commit772b069618ae3f1fa1b8e1546b9fe14afc79f50d (patch)
treeeaf1fbfb4ffcc8ab6b91ad6d835738dfb2239312
parent953282ab62d85dd380c8c30bf35ab66631d5dbf9 (diff)
downloadwebtools.dali-772b069618ae3f1fa1b8e1546b9fe14afc79f50d.zip
webtools.dali-772b069618ae3f1fa1b8e1546b9fe14afc79f50d.tar.gz
webtools.dali-772b069618ae3f1fa1b8e1546b9fe14afc79f50d.tar.bz2
Revert "Bug 365474 - 'Show In' menu for JPA perspective for java and xml files should have JPA views"
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.ui/plugin.xml10
-rw-r--r--jpa/plugins/org.eclipse.jpt.jpa.ui/src/org/eclipse/jpt/jpa/ui/internal/ViewPartShowInAdapterFactory.java194
2 files changed, 0 insertions, 204 deletions
diff --git a/jpa/plugins/org.eclipse.jpt.jpa.ui/plugin.xml b/jpa/plugins/org.eclipse.jpt.jpa.ui/plugin.xml
index 0e23a5e..5c18d8c 100644
--- a/jpa/plugins/org.eclipse.jpt.jpa.ui/plugin.xml
+++ b/jpa/plugins/org.eclipse.jpt.jpa.ui/plugin.xml
@@ -123,13 +123,6 @@
<adapter type="org.eclipse.jpt.jpa.ui.selection.JpaViewManager$PageManager"/>
</factory>
- <!-- IViewPart -> IShowInTarget -->
- <factory
- adaptableType="org.eclipse.ui.IViewPart"
- class="org.eclipse.jpt.jpa.ui.internal.ViewPartShowInAdapterFactory">
- <adapter type="org.eclipse.ui.part.IShowInTarget"/>
- </factory>
-
</extension>
@@ -966,9 +959,6 @@
<viewShortcut id="org.eclipse.jpt.ui.jpaDetailsView"/>
<viewShortcut id="org.eclipse.datatools.connectivity.DataSourceExplorerNavigator"/>
- <showInPart id="org.eclipse.jpt.ui.jpaDetailsView"/>
- <showInPart id="org.eclipse.jpt.ui.jpaStructureView"/>
-
</perspectiveExtension>
<perspectiveExtension
diff --git a/jpa/plugins/org.eclipse.jpt.jpa.ui/src/org/eclipse/jpt/jpa/ui/internal/ViewPartShowInAdapterFactory.java b/jpa/plugins/org.eclipse.jpt.jpa.ui/src/org/eclipse/jpt/jpa/ui/internal/ViewPartShowInAdapterFactory.java
deleted file mode 100644
index af1fe75..0000000
--- a/jpa/plugins/org.eclipse.jpt.jpa.ui/src/org/eclipse/jpt/jpa/ui/internal/ViewPartShowInAdapterFactory.java
+++ /dev/null
@@ -1,194 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2012 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.jpa.ui.internal;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.IAdapterFactory;
-import org.eclipse.core.runtime.content.IContentType;
-import org.eclipse.jdt.core.ICompilationUnit;
-import org.eclipse.jdt.core.JavaModelException;
-import org.eclipse.jdt.internal.core.CompilationUnit;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.jpt.common.core.internal.utility.PlatformTools;
-import org.eclipse.jpt.jpa.core.JpaProject;
-import org.eclipse.jpt.jpa.core.JpaStructureNode;
-import org.eclipse.jpt.jpa.core.context.PersistentType;
-import org.eclipse.jpt.jpa.core.context.persistence.MappingFileRef;
-import org.eclipse.jpt.jpa.core.context.persistence.Persistence;
-import org.eclipse.jpt.jpa.core.context.persistence.PersistenceUnit;
-import org.eclipse.jpt.jpa.core.context.persistence.PersistenceXml;
-import org.eclipse.jpt.jpa.core.resource.ResourceMappingFile;
-import org.eclipse.jpt.jpa.core.resource.persistence.XmlPersistence;
-import org.eclipse.jpt.jpa.ui.internal.plugin.JptJpaUiPlugin;
-import org.eclipse.jpt.jpa.ui.selection.JpaSelectionManager;
-import org.eclipse.ui.IViewPart;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.ide.IDE;
-import org.eclipse.ui.part.IShowInTarget;
-import org.eclipse.ui.part.ShowInContext;
-
-/**
- * Factory to build Dali adapters for a {@link IViewPart}:<ul>
- * <li>{@link org.eclipse.ui.part.IShowInTarget}
- * </ul>
- * See <code>org.eclipse.jpt.jpa.ui/plugin.xml:org.eclipse.core.runtime.adapters</code>.
- */
-public class ViewPartShowInAdapterFactory implements IAdapterFactory {
-
- private static final Class<?>[] ADAPTER_LIST = new Class[] { IShowInTarget.class};
-
- public Class<?>[] getAdapterList() {
- return ADAPTER_LIST;
- }
-
- public Object getAdapter(Object adaptableObject, @SuppressWarnings("rawtypes") Class adapterType) {
- if (adaptableObject instanceof IViewPart) {
- return this.getAdapter((IViewPart) adaptableObject, adapterType);
- }
- return null;
- }
-
- private Object getAdapter(IViewPart viewPart, Class<?> adapterType) {
- if (adapterType == IShowInTarget.class) {
- return new ShowInTargetAdapter(viewPart);
- }
- return null;
- }
-
- // ********** Show In Target **********
-
- /**
- * Adapt an #IViewPart to the #IShowInTarget interface
- *
- * This adapter is currently implemented for JPA related views
- * such as #JpaDetailsView and #JpaStructureView. Users may
- * need to update the show() methods if they want to reuse
- * this adapter to support their own views.
- */
- /* CU private */ static class ShowInTargetAdapter implements IShowInTarget {
- private IViewPart view;
-
- public ShowInTargetAdapter(IViewPart viewPart) {
- super();
- view = viewPart;
- }
-
- public boolean show(ShowInContext context) {
- IStructuredSelection selection = getSelection(context);
- if (selection != null && !selection.isEmpty()) {
- if (selection.getFirstElement() instanceof ICompilationUnit) {
- CompilationUnit compilationUnit = (CompilationUnit) selection.getFirstElement();
- this.show(compilationUnit);
- }
- else if (selection.getFirstElement() instanceof IFile) {
- IFile file = (IFile) selection.getFirstElement();
- this.show(file);
- }
- return true;
- }
- return false;
- }
-
- private void show(CompilationUnit compilationUnit) {
- try {
- this.openInEditor((IFile) compilationUnit.getTypeRoot().getCorrespondingResource());
- } catch (JavaModelException jme) {
- JptJpaUiPlugin.instance().logError(jme);
- }
- JpaProject jpaProject = (JpaProject) compilationUnit.getJavaProject().getProject().getAdapter(JpaProject.class);
- PersistenceUnit persistenceUnit = this.getPersistenceUnit(jpaProject);
- if (persistenceUnit != null) {
- String typeName = compilationUnit.getTypeRoot().findPrimaryType().getFullyQualifiedName();
- PersistentType persistentType =this.getPersistenceUnit(jpaProject).getPersistentType(typeName);
- if (persistentType != null) {
- this.setSelection(persistentType);
- }
- }
- }
-
- private void show(IFile file) {
- this.openInEditor(file);
- JpaProject jpaProject = (JpaProject) file.getProject().getAdapter(JpaProject.class);
- IContentType contentType = PlatformTools.getContentType(file);
- if (contentType != null) {
- PersistenceUnit persistenceUnit = this.getPersistenceUnit(jpaProject);
- if (persistenceUnit != null) {
- if (contentType.isKindOf(ResourceMappingFile.Root.CONTENT_TYPE)) {
- for (MappingFileRef mappingFileRef : persistenceUnit.getMappingFileRefs()) {
- if (mappingFileRef.getMappingFile() != null &&
- mappingFileRef.getMappingFile().getResource().getProjectRelativePath().equals(file.getProjectRelativePath())) {
- this.setSelection(mappingFileRef.getMappingFile().getRoot());
- }
- }
- } else if (contentType.isKindOf(XmlPersistence.CONTENT_TYPE)) {
- // use persistence instead of persistence unit in order to set the selection to the root node
- this.setSelection(this.getPersistence(jpaProject));
- }
- }
- }
- }
-
- private IStructuredSelection getSelection(ShowInContext context) {
- if (context == null) {
- return StructuredSelection.EMPTY;
- }
- ISelection selection = context.getSelection();
- if (selection != null && !selection.isEmpty() && selection instanceof IStructuredSelection) {
- return (IStructuredSelection) selection;
- }
- Object input = context.getInput();
- if (input != null) {
- return new StructuredSelection(input);
- }
- return StructuredSelection.EMPTY;
- }
-
- private void openInEditor(IFile file) {
- IWorkbenchPage page = view.getSite().getPage();
- try {
- IDE.openEditor(page, file);
- } catch (PartInitException ex) {
- JptJpaUiPlugin.instance().logError(ex);
- }
- }
-
- private PersistenceUnit getPersistenceUnit(JpaProject jpaProject) {
- Persistence persistence = this.getPersistence(jpaProject);
- if (persistence == null) {
- return null;
- }
- if (persistence.getPersistenceUnitsSize() == 0) {
- return null;
- }
- return persistence.getPersistenceUnits().iterator().next();
- }
-
- private Persistence getPersistence(JpaProject jpaProject) {
- if (jpaProject == null) {
- return null;
- }
- PersistenceXml persistenceXml = jpaProject.getRootContextNode().getPersistenceXml();
- if (persistenceXml == null) {
- return null;
- }
- return persistenceXml.getRoot();
- }
-
- private void setSelection(JpaStructureNode node) {
- IWorkbenchPage page = view.getSite().getPage();
- JpaSelectionManager selectionManager = PlatformTools.getAdapter(page, JpaSelectionManager.class);
- selectionManager.setSelection(node);
- }
- }
-
-} \ No newline at end of file