| /******************************************************************************* |
| * Copyright (c) 2003, 2004 IBM Corporation 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: |
| * IBM Corporation - initial API and implementation |
| *******************************************************************************/ |
| package org.eclipse.jst.j2ee.applicationclient.creation; |
| |
| |
| import org.eclipse.emf.ecore.resource.Resource; |
| import org.eclipse.jst.j2ee.application.operations.DefaultModuleProjectCreationOperation; |
| import org.eclipse.jst.j2ee.client.ApplicationClient; |
| import org.eclipse.jst.j2ee.client.ClientPackage; |
| import org.eclipse.jst.j2ee.common.XMLResource; |
| import org.eclipse.jst.j2ee.internal.J2EEConstants; |
| import org.eclipse.jst.j2ee.internal.J2EEEditModel; |
| import org.eclipse.jst.j2ee.webservice.wsclient.WebServicesResource; |
| import org.eclipse.wst.common.internal.emfworkbench.EMFWorkbenchContext; |
| |
| |
| /** |
| * Insert the type's description here. Creation date: (7/8/2001 6:31:56 PM) |
| * |
| * @author: Administrator |
| */ |
| public class AppClientEditModel extends J2EEEditModel { |
| /** |
| * AppClientEditModel constructor comment. |
| * |
| * @param aKey |
| * java.lang.Object |
| * @param aNature |
| * org.eclipse.jst.j2ee.internal.internal.j2eeproject.J2EENature |
| */ |
| public AppClientEditModel(String editModelID, EMFWorkbenchContext context, boolean readOnly) { |
| super(editModelID, context, readOnly); |
| } |
| |
| public AppClientEditModel(String editModelID, EMFWorkbenchContext context, boolean readOnly, boolean accessUnkownResourcesAsReadOnly) { |
| super(editModelID, context, readOnly, accessUnkownResourcesAsReadOnly); |
| } |
| |
| public ApplicationClientNatureRuntime getAppClientNature() { |
| return ApplicationClientNatureRuntime.getRuntime(getProject()); |
| } |
| |
| public Resource getAppClientXmiResource() { |
| return getResource(J2EEConstants.APP_CLIENT_DD_URI_OBJ); |
| } |
| |
| /** |
| * Return the root object, ApplicationClient, from the application-client.xml DD. |
| */ |
| public ApplicationClient getApplicationClient() { |
| Resource dd = getAppClientXmiResource(); |
| if (dd != null) { |
| Object rootObject = getRoot(dd); |
| if (rootObject instanceof ApplicationClient) |
| return (ApplicationClient) rootObject; |
| } |
| |
| return null; |
| } |
| |
| public Resource makeAppClientXmiResource() { |
| return createResource(J2EEConstants.APP_CLIENT_DD_URI_OBJ); |
| } |
| |
| public Resource makeDeploymentDescriptorWithRoot() { |
| XMLResource res = (XMLResource) makeAppClientXmiResource(); |
| ApplicationClient client = ClientPackage.eINSTANCE.getClientFactory().createApplicationClient(); |
| res.getContents().add(client); |
| res.setID(client, J2EEConstants.APP_CLIENT_ID); |
| res.setModuleVersionID(getAppClientNature().getModuleVersion()); |
| client.setDisplayName(getProject().getName()); |
| return res; |
| } |
| |
| public XMLResource getDeploymentDescriptorResource() { |
| return (XMLResource) getAppClientXmiResource(); |
| } |
| |
| /* |
| * (non-Javadoc) |
| * |
| * @see org.eclipse.jst.j2ee.internal.internal.workbench.J2EEEditModel#getRootObject() |
| */ |
| public Object getRootObject() { |
| return getApplicationClient(); |
| } |
| |
| |
| /* |
| * (non-Javadoc) |
| * |
| * @see org.eclipse.jst.j2ee.internal.internal.workbench.J2EEEditModel#get13WebServicesClientResource() |
| */ |
| public WebServicesResource get13WebServicesClientResource() { |
| return (WebServicesResource) getResource(J2EEConstants.WEB_SERVICES_CLIENT_META_INF_DD_URI_OBJ); |
| } |
| |
| public String getDevelopmentAcivityID() { |
| return DefaultModuleProjectCreationOperation.ENTERPRISE_JAVA; |
| } |
| } |