| /******************************************************************************* |
| * Copyright (c) 2009, 2010 SAP AG and others. |
| * 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: |
| * SAP AG - initial API and implementation |
| *******************************************************************************/ |
| package org.eclipse.jst.javaee.internal.adapter; |
| |
| import org.eclipse.jem.java.JavaClass; |
| import org.eclipse.jst.j2ee.webapplication.WebType; |
| |
| public class WebArtifactAdapterFactory extends JavaEEArtifactAdapterFactory { |
| |
| @Override |
| protected String getFullyQualifiedClassName(Object adaptableObject) { |
| if (adaptableObject instanceof org.eclipse.jst.javaee.web.Servlet) { |
| org.eclipse.jst.javaee.web.Servlet servlet = (org.eclipse.jst.javaee.web.Servlet) adaptableObject; |
| return servlet.getServletClass(); |
| } else if (adaptableObject instanceof org.eclipse.jst.javaee.web.Filter) { |
| org.eclipse.jst.javaee.web.Filter filter = (org.eclipse.jst.javaee.web.Filter) adaptableObject; |
| return filter.getFilterClass(); |
| } else if (adaptableObject instanceof org.eclipse.jst.javaee.core.Listener) { |
| org.eclipse.jst.javaee.core.Listener listener = (org.eclipse.jst.javaee.core.Listener) adaptableObject; |
| return listener.getListenerClass(); |
| } else if (adaptableObject instanceof org.eclipse.jst.j2ee.webapplication.Servlet) { |
| org.eclipse.jst.j2ee.webapplication.Servlet servlet = (org.eclipse.jst.j2ee.webapplication.Servlet) adaptableObject; |
| WebType webType = servlet.getWebType(); |
| if (webType != null && servlet.getWebType().isServletType()) { |
| return getQualifiedName(servlet.getServletClass()); |
| } |
| } else if (adaptableObject instanceof org.eclipse.jst.j2ee.webapplication.Filter) { |
| org.eclipse.jst.j2ee.webapplication.Filter filter = (org.eclipse.jst.j2ee.webapplication.Filter) adaptableObject; |
| return getQualifiedName(filter.getFilterClass()); |
| } else if (adaptableObject instanceof org.eclipse.jst.j2ee.common.Listener) { |
| org.eclipse.jst.j2ee.common.Listener listener = (org.eclipse.jst.j2ee.common.Listener) adaptableObject; |
| return getQualifiedName(listener.getListenerClass()); |
| } |
| return null; |
| } |
| |
| private String getQualifiedName(JavaClass javaClass) { |
| return (javaClass == null) ? null : javaClass.getQualifiedName(); |
| } |
| |
| } |