[282259] NullPointerException in GroupWelcomePagesItemProvider fixed
diff --git a/plugins/org.eclipse.jst.jee.ui/plugin.xml b/plugins/org.eclipse.jst.jee.ui/plugin.xml index a1ce958..91bca8f 100644 --- a/plugins/org.eclipse.jst.jee.ui/plugin.xml +++ b/plugins/org.eclipse.jst.jee.ui/plugin.xml
@@ -487,10 +487,7 @@ <instanceof value="org.eclipse.jst.jee.ui.internal.navigator.ejb.BeanNode" /> <instanceof value="org.eclipse.jst.javaee.core.JavaEEObject" /> <instanceof - value="org.eclipse.jst.jee.ui.internal.navigator.AbstractGroupProvider"> - </instanceof> - <instanceof - value="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider"> + value="org.eclipse.jst.jee.ui.internal.navigator.ejb.AbstractEjbGroupProvider"> </instanceof> </or> </triggerPoints> @@ -500,7 +497,7 @@ <instanceof value="org.eclipse.jst.jee.ui.internal.navigator.ejb.BeanNode" /> <instanceof value="org.eclipse.jst.javaee.core.JavaEEObject" /> <instanceof - value="org.eclipse.jst.jee.ui.internal.navigator.AbstractGroupProvider"> + value="org.eclipse.jst.jee.ui.internal.navigator.ejb.AbstractEjbGroupProvider"> </instanceof> </or> </possibleChildren> @@ -714,7 +711,7 @@ </or> </adapt> <instanceof - value="org.eclipse.jst.jee.ui.internal.navigator.AbstractGroupProvider"> + value="org.eclipse.jst.jee.ui.internal.navigator.web.AbstractWebGroupProvider"> </instanceof> <instanceof value="org.eclipse.jst.jee.ui.internal.navigator.web.WebAppProvider"> @@ -730,7 +727,7 @@ <possibleChildren> <or> <instanceof - value="org.eclipse.jst.jee.ui.internal.navigator.AbstractGroupProvider"> + value="org.eclipse.jst.jee.ui.internal.navigator.web.AbstractWebGroupProvider"> </instanceof> <instanceof value="org.eclipse.jst.jee.ui.internal.navigator.web.WebAppProvider"> @@ -889,6 +886,9 @@ <instanceof value="org.eclipse.jst.jee.ui.internal.navigator.ear.BundledNode"> </instanceof> + <instanceof + value="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider"> + </instanceof> <adapt type="org.eclipse.core.resources.IProject"> <test @@ -958,6 +958,9 @@ <instanceof value="org.eclipse.jdt.internal.core.JarPackageFragmentRoot"> </instanceof> + <instanceof + value="org.eclipse.jst.jee.ui.internal.navigator.ear.GroupEARProvider"> + </instanceof> <instanceof value="org.eclipse.core.internal.resources.Project"> </instanceof>
diff --git a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/AbstractGroupProvider.java b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/AbstractGroupProvider.java index b20e3d9..7a8168b 100644 --- a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/AbstractGroupProvider.java +++ b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/AbstractGroupProvider.java
@@ -51,7 +51,8 @@ } public boolean hasChildren() { - return !getChildren().isEmpty(); + List children2 = getChildren(); + return children2 != null && !children2.isEmpty(); } public JavaEEObject getJavaEEObject() {
diff --git a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/Ear5ContentProvider.java b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/Ear5ContentProvider.java index 5e80b65..5df4351 100644 --- a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/Ear5ContentProvider.java +++ b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/Ear5ContentProvider.java
@@ -24,12 +24,10 @@ import org.eclipse.core.runtime.CoreException; import org.eclipse.core.runtime.IAdaptable; import org.eclipse.core.runtime.IPath; -import org.eclipse.core.runtime.Path; import org.eclipse.jst.j2ee.componentcore.util.EARVirtualComponent; import org.eclipse.jst.j2ee.internal.J2EEVersionConstants; import org.eclipse.jst.j2ee.internal.plugin.IJ2EEModuleConstants; import org.eclipse.jst.j2ee.internal.project.J2EEProjectUtilities; -import org.eclipse.jst.j2ee.model.ModelProviderManager; import org.eclipse.jst.j2ee.project.JavaEEProjectUtilities; import org.eclipse.jst.javaee.application.Application; import org.eclipse.jst.jee.ui.internal.navigator.ear.AbstractEarNode; @@ -103,60 +101,7 @@ IProject project = null; List children = new ArrayList(); if (aParentElement instanceof GroupEARProvider) { - project = (IProject) ((GroupEARProvider)aParentElement).getProject(); - - IVirtualComponent projectComponent = ComponentCore.createComponent(project); - try { - IFacetedProject facetedProject = ProjectFacetsManager.create(project); - if (facetedProject != null && - facetedProject.hasProjectFacet( - ProjectFacetsManager.getProjectFacet(IModuleConstants.JST_EAR_MODULE).getVersion( - J2EEVersionConstants.VERSION_5_0_TEXT))) { - - List libs = getComponentReferencesAsList(Collections.singletonList(J2EEProjectUtilities.UTILITY), projectComponent, - new Path("/" + EAR_DEFAULT_LIB)); //$NON-NLS-1$ - - ArrayList bundledLibs = new ArrayList(); - ArrayList appLibsInTheRoot = new ArrayList(); - - for (int i = 0; i < libs.size(); i++) { - IVirtualReference reference = (IVirtualReference) libs.get(i); - IPath runtimePath = reference.getRuntimePath(); - - if (runtimePath != null && runtimePath.segment(0) != null && -// runtimePath.equals(new Path(EAR_DEFAULT_LIB))) { - !runtimePath.isRoot()) { - bundledLibs.add(libs.get(i)); - } else { - appLibsInTheRoot.add(libs.get(i)); - } - } - - String libDir = EAR_DEFAULT_LIB; - if (J2EEProjectUtilities.isJEEProject(project)) { - String oldLibDir = ((Application)ModelProviderManager.getModelProvider(project).getModelObject()).getLibraryDirectory(); - if (oldLibDir == null) oldLibDir = EAR_DEFAULT_LIB; - libDir = oldLibDir; - } -// -// List implicitUtilityReferenceTypes = -// Arrays.asList(new String[] { -// IModuleConstants.JST_APPCLIENT_MODULE, -// IModuleConstants.JST_WEB_MODULE, -// IModuleConstants.JST_EJB_MODULE, -// IModuleConstants.JST_CONNECTOR_MODULE}); -// - -// List modules = getComponentReferencesAsList(implicitUtilityReferenceTypes, projectComponent, new Path("/")); //$NON-NLS-1$ -// ModulesNode modulesNode = new ModulesNode(project); - -// children.add(modulesNode); -// children.add(bundledLibsNode); - } - } catch (CoreException e) { - String msg = "Error in the JEEContentProvider.getChildren() for parent:" + aParentElement; //$NON-NLS-1$ - JEEUIPlugin.getDefault().logError(msg, e); - } + children.addAll(((GroupEARProvider)aParentElement).getChildren()); } else if (aParentElement instanceof AbstractEarNode) { return ((AbstractEarNode) aParentElement).getModules().toArray(); } else if (aParentElement instanceof IAdaptable) {
diff --git a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/Web25ContentProvider.java b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/Web25ContentProvider.java index 1353c0a..e1b08b7 100644 --- a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/Web25ContentProvider.java +++ b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/Web25ContentProvider.java
@@ -36,10 +36,11 @@ if (cachedContentProvider.isValid()){ children.add(cachedContentProvider); } - } else if (WebAppProvider.class.isInstance(aParentElement)){ - children.addAll(((WebAppProvider) aParentElement).getChildren()); } else if (AbstractGroupProvider.class.isInstance(aParentElement)){ - children.addAll(((AbstractGroupProvider) aParentElement).getChildren()); + AbstractGroupProvider abstractGroupProvider = (AbstractGroupProvider) aParentElement; + if (abstractGroupProvider.hasChildren()){ + children.addAll(abstractGroupProvider.getChildren()); + } } return children.toArray(); }
diff --git a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/appclient/AbstractAppClientGroupProvider.java b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/appclient/AbstractAppClientGroupProvider.java new file mode 100644 index 0000000..5910232 --- /dev/null +++ b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/appclient/AbstractAppClientGroupProvider.java
@@ -0,0 +1,13 @@ +package org.eclipse.jst.jee.ui.internal.navigator.appclient; + +import org.eclipse.jst.javaee.core.JavaEEObject; +import org.eclipse.jst.jee.ui.internal.navigator.AbstractGroupProvider; + +public abstract class AbstractAppClientGroupProvider extends + AbstractGroupProvider { + + public AbstractAppClientGroupProvider(JavaEEObject javaee) { + super(javaee); + } + +}
diff --git a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/appclient/GroupAppClientProvider.java b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/appclient/GroupAppClientProvider.java index a402f47..36cb69e 100644 --- a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/appclient/GroupAppClientProvider.java +++ b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/appclient/GroupAppClientProvider.java
@@ -21,7 +21,6 @@ import org.eclipse.jst.j2ee.model.ModelProviderManager; import org.eclipse.jst.javaee.applicationclient.ApplicationClient; import org.eclipse.jst.jee.ui.internal.Messages; -import org.eclipse.jst.jee.ui.internal.navigator.AbstractGroupProvider; import org.eclipse.jst.jee.ui.plugin.JEEUIPlugin; import org.eclipse.jst.jee.ui.plugin.JEEUIPluginIcons; import org.eclipse.osgi.util.NLS; @@ -35,7 +34,7 @@ * @author Dimitar Giormov * */ -public class GroupAppClientProvider extends AbstractGroupProvider implements IAdaptable { +public class GroupAppClientProvider extends AbstractAppClientGroupProvider implements IAdaptable { private final IProject project;
diff --git a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/ear/AbstractEarGroupProvider.java b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/ear/AbstractEarGroupProvider.java new file mode 100644 index 0000000..fd2e1db --- /dev/null +++ b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/ear/AbstractEarGroupProvider.java
@@ -0,0 +1,11 @@ +package org.eclipse.jst.jee.ui.internal.navigator.ear; + +import org.eclipse.jst.javaee.core.JavaEEObject; +import org.eclipse.jst.jee.ui.internal.navigator.AbstractGroupProvider; + +public abstract class AbstractEarGroupProvider extends AbstractGroupProvider { + + public AbstractEarGroupProvider(JavaEEObject javaee) { + super(javaee); + } +}
diff --git a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/ear/GroupEARProvider.java b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/ear/GroupEARProvider.java index 1b86a87..c438438 100644 --- a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/ear/GroupEARProvider.java +++ b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/ear/GroupEARProvider.java
@@ -22,7 +22,6 @@ import org.eclipse.jst.j2ee.internal.J2EEVersionConstants; import org.eclipse.jst.javaee.application.Application; import org.eclipse.jst.jee.ui.internal.Messages; -import org.eclipse.jst.jee.ui.internal.navigator.AbstractGroupProvider; import org.eclipse.jst.jee.ui.plugin.JEEUIPlugin; import org.eclipse.jst.jee.ui.plugin.JEEUIPluginIcons; import org.eclipse.osgi.util.NLS; @@ -40,7 +39,7 @@ * @author Dimitar Giormov * */ -public class GroupEARProvider extends AbstractGroupProvider implements IAdaptable { +public class GroupEARProvider extends AbstractEarGroupProvider implements IAdaptable { private static final String PROJECT_RELATIVE_PATH = "META-INF/application.xml"; //$NON-NLS-1$ public final static String EAR_DEFAULT_LIB = "lib"; //$NON-NLS-1$
diff --git a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/ejb/AbstractEjbGroupProvider.java b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/ejb/AbstractEjbGroupProvider.java new file mode 100644 index 0000000..ac62cf0 --- /dev/null +++ b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/ejb/AbstractEjbGroupProvider.java
@@ -0,0 +1,12 @@ +package org.eclipse.jst.jee.ui.internal.navigator.ejb; + +import org.eclipse.jst.javaee.core.JavaEEObject; +import org.eclipse.jst.jee.ui.internal.navigator.AbstractGroupProvider; + +public abstract class AbstractEjbGroupProvider extends AbstractGroupProvider{ + + public AbstractEjbGroupProvider(JavaEEObject javaee) { + super(javaee); + } + +}
diff --git a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/ejb/GroupEJBProvider.java b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/ejb/GroupEJBProvider.java index f9896ce..ce00927 100644 --- a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/ejb/GroupEJBProvider.java +++ b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/ejb/GroupEJBProvider.java
@@ -18,7 +18,6 @@ import org.eclipse.jst.javaee.core.JavaEEObject; import org.eclipse.jst.javaee.ejb.EJBJar; import org.eclipse.jst.jee.ui.internal.Messages; -import org.eclipse.jst.jee.ui.internal.navigator.AbstractGroupProvider; import org.eclipse.osgi.util.NLS; import org.eclipse.swt.graphics.Image; /** @@ -27,7 +26,7 @@ * @author Dimitar Giormov * */ -public class GroupEJBProvider extends AbstractGroupProvider implements IAdaptable { +public class GroupEJBProvider extends AbstractEjbGroupProvider implements IAdaptable { private GroupEjbSession groupEjbSession; private GroupEjbMessageDriven groupEjbMessageDriven;
diff --git a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/web/AbstractWebGroupProvider.java b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/web/AbstractWebGroupProvider.java new file mode 100644 index 0000000..16f020b --- /dev/null +++ b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/web/AbstractWebGroupProvider.java
@@ -0,0 +1,12 @@ +package org.eclipse.jst.jee.ui.internal.navigator.web; + +import org.eclipse.jst.javaee.core.JavaEEObject; +import org.eclipse.jst.jee.ui.internal.navigator.AbstractGroupProvider; + +public abstract class AbstractWebGroupProvider extends AbstractGroupProvider { + + public AbstractWebGroupProvider(JavaEEObject javaee) { + super(javaee); + } + +}
diff --git a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/web/GroupContextParamsItemProvider.java b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/web/GroupContextParamsItemProvider.java index 904d22f..6a8aa77 100644 --- a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/web/GroupContextParamsItemProvider.java +++ b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/web/GroupContextParamsItemProvider.java
@@ -17,7 +17,6 @@ import org.eclipse.jst.j2ee.internal.plugin.J2EEPlugin; import org.eclipse.jst.javaee.web.WebApp; import org.eclipse.jst.jee.ui.internal.Messages; -import org.eclipse.jst.jee.ui.internal.navigator.AbstractGroupProvider; import org.eclipse.jst.jee.ui.plugin.JEEUIPluginIcons; import org.eclipse.swt.graphics.Image; @@ -27,7 +26,7 @@ * @author Dimitar Giormov * */ -public class GroupContextParamsItemProvider extends AbstractGroupProvider{ +public class GroupContextParamsItemProvider extends AbstractWebGroupProvider{ private static Image CONTEXT_PARAM_IMAGE;
diff --git a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/web/GroupErrorPagesItemProvider.java b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/web/GroupErrorPagesItemProvider.java index 286a8e0..fd504a5 100644 --- a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/web/GroupErrorPagesItemProvider.java +++ b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/web/GroupErrorPagesItemProvider.java
@@ -18,7 +18,6 @@ import org.eclipse.jst.javaee.web.ErrorPage; import org.eclipse.jst.javaee.web.WebApp; import org.eclipse.jst.jee.ui.internal.Messages; -import org.eclipse.jst.jee.ui.internal.navigator.AbstractGroupProvider; import org.eclipse.jst.jee.ui.plugin.JEEUIPluginIcons; import org.eclipse.swt.graphics.Image; @@ -28,7 +27,7 @@ * @author Dimitar Giormov * */ -public class GroupErrorPagesItemProvider extends AbstractGroupProvider{ +public class GroupErrorPagesItemProvider extends AbstractWebGroupProvider{ private static Image ERROR_PAGES; private static Image EXCEPTION_ERROR_PAGES;
diff --git a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/web/GroupFilterMappingItemProvider.java b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/web/GroupFilterMappingItemProvider.java index 60eeea3..1fef3c5 100644 --- a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/web/GroupFilterMappingItemProvider.java +++ b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/web/GroupFilterMappingItemProvider.java
@@ -17,7 +17,6 @@ import org.eclipse.jst.j2ee.internal.plugin.J2EEPlugin; import org.eclipse.jst.javaee.web.WebApp; import org.eclipse.jst.jee.ui.internal.Messages; -import org.eclipse.jst.jee.ui.internal.navigator.AbstractGroupProvider; import org.eclipse.jst.jee.ui.plugin.JEEUIPluginIcons; import org.eclipse.swt.graphics.Image; @@ -27,7 +26,7 @@ * @author Dimitar Giormov * */ -public class GroupFilterMappingItemProvider extends AbstractGroupProvider { +public class GroupFilterMappingItemProvider extends AbstractWebGroupProvider { private static Image FILTER_MAPPING;
diff --git a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/web/GroupFiltersItemProvider.java b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/web/GroupFiltersItemProvider.java index 678f292..20f107c 100644 --- a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/web/GroupFiltersItemProvider.java +++ b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/web/GroupFiltersItemProvider.java
@@ -17,7 +17,6 @@ import org.eclipse.jst.j2ee.internal.plugin.J2EEPlugin; import org.eclipse.jst.javaee.web.WebApp; import org.eclipse.jst.jee.ui.internal.Messages; -import org.eclipse.jst.jee.ui.internal.navigator.AbstractGroupProvider; import org.eclipse.jst.jee.ui.plugin.JEEUIPluginIcons; import org.eclipse.swt.graphics.Image; @@ -27,7 +26,7 @@ * @author Dimitar Giormov * */ -public class GroupFiltersItemProvider extends AbstractGroupProvider{ +public class GroupFiltersItemProvider extends AbstractWebGroupProvider{ private static Image FILTER;
diff --git a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/web/GroupListenerItemProvider.java b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/web/GroupListenerItemProvider.java index f503386..d99360e 100644 --- a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/web/GroupListenerItemProvider.java +++ b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/web/GroupListenerItemProvider.java
@@ -17,7 +17,6 @@ import org.eclipse.jst.j2ee.internal.plugin.J2EEPlugin; import org.eclipse.jst.javaee.web.WebApp; import org.eclipse.jst.jee.ui.internal.Messages; -import org.eclipse.jst.jee.ui.internal.navigator.AbstractGroupProvider; import org.eclipse.jst.jee.ui.plugin.JEEUIPluginIcons; import org.eclipse.swt.graphics.Image; @@ -27,7 +26,7 @@ * @author Dimitar Giormov * */ -public class GroupListenerItemProvider extends AbstractGroupProvider{ +public class GroupListenerItemProvider extends AbstractWebGroupProvider{ private static Image LISTENER;
diff --git a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/web/GroupReferenceItemProvider.java b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/web/GroupReferenceItemProvider.java index 9f3f567..103add5 100644 --- a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/web/GroupReferenceItemProvider.java +++ b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/web/GroupReferenceItemProvider.java
@@ -18,7 +18,6 @@ import org.eclipse.jst.j2ee.internal.plugin.J2EEPlugin; import org.eclipse.jst.javaee.web.WebApp; import org.eclipse.jst.jee.ui.internal.Messages; -import org.eclipse.jst.jee.ui.internal.navigator.AbstractGroupProvider; import org.eclipse.jst.jee.ui.plugin.JEEUIPluginIcons; import org.eclipse.swt.graphics.Image; @@ -28,7 +27,7 @@ * @author Dimitar Giormov * */ -public class GroupReferenceItemProvider extends AbstractGroupProvider{ +public class GroupReferenceItemProvider extends AbstractWebGroupProvider{ private static Image REFERENCES;
diff --git a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/web/GroupServletItemProvider.java b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/web/GroupServletItemProvider.java index 007269e..b737d31 100644 --- a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/web/GroupServletItemProvider.java +++ b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/web/GroupServletItemProvider.java
@@ -17,7 +17,6 @@ import org.eclipse.jst.j2ee.internal.plugin.J2EEPlugin; import org.eclipse.jst.javaee.web.WebApp; import org.eclipse.jst.jee.ui.internal.Messages; -import org.eclipse.jst.jee.ui.internal.navigator.AbstractGroupProvider; import org.eclipse.jst.jee.ui.plugin.JEEUIPluginIcons; import org.eclipse.swt.graphics.Image; @@ -27,7 +26,7 @@ * @author Dimitar Giormov * */ -public class GroupServletItemProvider extends AbstractGroupProvider{ +public class GroupServletItemProvider extends AbstractWebGroupProvider{ private static Image SERVLET;
diff --git a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/web/GroupServletMappingItemProvider.java b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/web/GroupServletMappingItemProvider.java index d2616bf..71e799e 100644 --- a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/web/GroupServletMappingItemProvider.java +++ b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/web/GroupServletMappingItemProvider.java
@@ -17,7 +17,6 @@ import org.eclipse.jst.j2ee.internal.plugin.J2EEPlugin; import org.eclipse.jst.javaee.web.WebApp; import org.eclipse.jst.jee.ui.internal.Messages; -import org.eclipse.jst.jee.ui.internal.navigator.AbstractGroupProvider; import org.eclipse.jst.jee.ui.plugin.JEEUIPluginIcons; import org.eclipse.swt.graphics.Image; @@ -27,7 +26,7 @@ * @author Dimitar Giormov * */ -public class GroupServletMappingItemProvider extends AbstractGroupProvider{ +public class GroupServletMappingItemProvider extends AbstractWebGroupProvider{ private static Image SERVLETMAPPING;
diff --git a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/web/GroupWelcomePagesItemProvider.java b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/web/GroupWelcomePagesItemProvider.java index 4de9b1e..da8bfac 100644 --- a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/web/GroupWelcomePagesItemProvider.java +++ b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/web/GroupWelcomePagesItemProvider.java
@@ -19,7 +19,6 @@ import org.eclipse.jst.javaee.web.WebApp; import org.eclipse.jst.javaee.web.WelcomeFileList; import org.eclipse.jst.jee.ui.internal.Messages; -import org.eclipse.jst.jee.ui.internal.navigator.AbstractGroupProvider; import org.eclipse.jst.jee.ui.plugin.JEEUIPluginIcons; import org.eclipse.swt.graphics.Image; @@ -29,69 +28,68 @@ * @author Dimitar Giormov * */ -public class GroupWelcomePagesItemProvider extends AbstractGroupProvider{ +public class GroupWelcomePagesItemProvider extends AbstractWebGroupProvider{ - private static Image WELCOME_PAGES; + private static Image WELCOME_PAGES; - private static Image WELCOME_PAGE; - - private List children = null; + private static Image WELCOME_PAGE; - public GroupWelcomePagesItemProvider(WebApp webApp) { - super(webApp); - text = Messages.WELCOME_PAGES_ITEM_PROVIDER; - } + public GroupWelcomePagesItemProvider(WebApp webApp) { + super(webApp); + text = Messages.WELCOME_PAGES_ITEM_PROVIDER; + } - @Override - public List getChildren() { - if (children != null){ - return children; - } - if (javaee != null){ - List welcomeFileLists = ((WebApp) javaee).getWelcomeFileLists(); - if (welcomeFileLists.size()>0){ - children = new ArrayList(); - for (Object object : welcomeFileLists) { - List welcomeFiles = ((WelcomeFileList)object).getWelcomeFiles(); - for (Object object2 : welcomeFiles) { - if(object2 != null && !"".equals( ((String)object2).trim())){ //$NON-NLS-1$ - children.add(new WebArtifactNode((WebApp)javaee, (String) object2, getWelcomePageImage())); - } - } - } - return children; - } - return null; - } - return null; - } + @Override + public List getChildren() { +// if (children != null){ +// return children; +// } + children.clear(); + if (javaee != null){ + List welcomeFileLists = ((WebApp) javaee).getWelcomeFileLists(); + if (welcomeFileLists.size()>0){ + children = new ArrayList(); + for (Object object : welcomeFileLists) { + List welcomeFiles = ((WelcomeFileList)object).getWelcomeFiles(); + for (Object object2 : welcomeFiles) { + if(object2 != null && !"".equals( ((String)object2).trim())){ //$NON-NLS-1$ + children.add(new WebArtifactNode((WebApp)javaee, (String) object2, getWelcomePageImage())); + } + } + } + return children; + } + return null; + } + return null; + } - @Override - public Image getImage() { - return getWelcomePagesImage(); - } + @Override + public Image getImage() { + return getWelcomePagesImage(); + } - @Override - public boolean hasChildren() { - return !getChildren().isEmpty(); - } + @Override + public boolean hasChildren() { + List children2 = getChildren(); + return children2 != null && !children2.isEmpty(); + } - public static Image getWelcomePagesImage() { - if (WELCOME_PAGES == null) { - URL url = (URL) J2EEPlugin.getPlugin().getImage(JEEUIPluginIcons.GROUP_WELCOME_PAGES); - ImageDescriptor imageDescriptor = ImageDescriptor.createFromURL(url); - WELCOME_PAGES = imageDescriptor.createImage(); - } - return WELCOME_PAGES; - } - - public static Image getWelcomePageImage() { - if (WELCOME_PAGE == null) { - URL url = (URL) J2EEPlugin.getPlugin().getImage(JEEUIPluginIcons.GROUP_WELCOME_PAGE); - ImageDescriptor imageDescriptor = ImageDescriptor.createFromURL(url); - WELCOME_PAGE = imageDescriptor.createImage(); - } - return WELCOME_PAGE; - } + public static Image getWelcomePagesImage() { + if (WELCOME_PAGES == null) { + URL url = (URL) J2EEPlugin.getPlugin().getImage(JEEUIPluginIcons.GROUP_WELCOME_PAGES); + ImageDescriptor imageDescriptor = ImageDescriptor.createFromURL(url); + WELCOME_PAGES = imageDescriptor.createImage(); + } + return WELCOME_PAGES; + } + public static Image getWelcomePageImage() { + if (WELCOME_PAGE == null) { + URL url = (URL) J2EEPlugin.getPlugin().getImage(JEEUIPluginIcons.GROUP_WELCOME_PAGE); + ImageDescriptor imageDescriptor = ImageDescriptor.createFromURL(url); + WELCOME_PAGE = imageDescriptor.createImage(); + } + return WELCOME_PAGE; + } }
diff --git a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/web/WebAppProvider.java b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/web/WebAppProvider.java index 9f716da..478e4c7 100644 --- a/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/web/WebAppProvider.java +++ b/plugins/org.eclipse.jst.jee.ui/src/org/eclipse/jst/jee/ui/internal/navigator/web/WebAppProvider.java
@@ -34,7 +34,7 @@ * @author Dimitar Giormov * */ -public class WebAppProvider extends AbstractGroupProvider implements IAdaptable { +public class WebAppProvider extends AbstractWebGroupProvider implements IAdaptable { private static final String PROJECT_RELATIVE_PATH = "WEB-INF/web.xml"; //$NON-NLS-1$