| /******************************************************************************* |
| * Copyright (c) 2001, 2005 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.internal.model.translator.client; |
| |
| import org.eclipse.jst.j2ee.client.ClientPackage; |
| import org.eclipse.jst.j2ee.common.CommonPackage; |
| import org.eclipse.jst.j2ee.internal.J2EEConstants; |
| import org.eclipse.jst.j2ee.internal.model.translator.common.CommonTranslators; |
| import org.eclipse.jst.j2ee.internal.model.translator.common.EnvEntryTranslator; |
| import org.eclipse.jst.j2ee.internal.model.translator.common.JavaClassTranslator; |
| import org.eclipse.jst.j2ee.internal.xml.DeploymentDescriptorXmlMapperI; |
| import org.eclipse.wst.common.internal.emf.resource.ConstantAttributeTranslator; |
| import org.eclipse.wst.common.internal.emf.resource.IDTranslator; |
| import org.eclipse.wst.common.internal.emf.resource.RootTranslator; |
| import org.eclipse.wst.common.internal.emf.resource.Translator; |
| |
| public class ApplicationClientTranslator extends RootTranslator implements DeploymentDescriptorXmlMapperI, J2EEConstants { |
| public static ApplicationClientTranslator INSTANCE = new ApplicationClientTranslator(); |
| public static final String CALLBACK_HANDLER = "callback-handler"; //$NON-NLS-1$ |
| public static final String APPLICATION_CLIENT = "application-client"; //$NON-NLS-1$ |
| private static CommonPackage COMMON_PKG = CommonPackage.eINSTANCE; |
| private static Translator[] children13; |
| private static Translator[] children14; |
| |
| protected ApplicationClientTranslator() { |
| super(APPLICATION_CLIENT, ClientPackage.eINSTANCE.getApplicationClient()); |
| } |
| |
| /* (non-Javadoc) |
| * @see com.ibm.etools.emf2xml.impl.Translator#getChildren(java.lang.Object, int) |
| */ |
| public Translator[] getChildren(Object o, int versionID) { |
| switch (versionID) { |
| case (J2EE_1_2_ID) : |
| case (J2EE_1_3_ID) : |
| if (children13 == null) |
| children13 = create13Children(); |
| return children13; |
| default : |
| if (children14 == null) |
| children14 = create14Children(); |
| return children14; |
| } |
| } |
| |
| protected Translator[] create13Children() { |
| ClientPackage ePackageClient=ClientPackage.eINSTANCE; |
| return new Translator[] { |
| IDTranslator.INSTANCE, |
| new Translator(SMALL_ICON_PATH, COMMON_PKG.getCompatibilityDescriptionGroup_SmallIcon()), |
| new Translator(LARGE_ICON_PATH, COMMON_PKG.getCompatibilityDescriptionGroup_LargeIcon()), |
| new Translator(DISPLAY_NAME, COMMON_PKG.getCompatibilityDescriptionGroup_DisplayName()), |
| new Translator(DESCRIPTION, COMMON_PKG.getCompatibilityDescriptionGroup_Description()), |
| new EnvEntryTranslator(ePackageClient.getApplicationClient_EnvironmentProps(), true, false), |
| CommonTranslators.createEJBRefTranslator13(ePackageClient.getApplicationClient_EjbReferences()), |
| CommonTranslators.createResourceRefTranslator13(ePackageClient.getApplicationClient_ResourceRefs()), |
| //J2EE 1.3 |
| CommonTranslators.createResourceEnvRefTranslator13(ePackageClient.getApplicationClient_ResourceEnvRefs()), |
| new JavaClassTranslator(CALLBACK_HANDLER, ePackageClient.getApplicationClient_CallbackHandler()), |
| }; |
| } |
| |
| protected Translator[] create14Children() { |
| ClientPackage ePackageClient=ClientPackage.eINSTANCE; |
| return new Translator[] { |
| IDTranslator.INSTANCE, |
| new Translator(VERSION, ePackageClient.getApplicationClient_Version(), DOM_ATTRIBUTE), |
| new ConstantAttributeTranslator(XML_NS, J2EE_NS_URL), |
| new ConstantAttributeTranslator(XML_NS_XSI, XSI_NS_URL), |
| new ConstantAttributeTranslator(XSI_SCHEMA_LOCATION, J2EE_NS_URL+' '+APP_CLIENT_SCHEMA_LOC_1_4), |
| CommonTranslators.DESCRIPTIONS_TRANSLATOR, |
| CommonTranslators.DISPLAYNAMES_TRANSLATOR, |
| CommonTranslators.ICONS_TRANSLATOR, |
| new EnvEntryTranslator(ePackageClient.getApplicationClient_EnvironmentProps(), true, true), |
| CommonTranslators.createEJBRefTranslator14(ePackageClient.getApplicationClient_EjbReferences()), |
| CommonTranslators.createServiceRefGroupTranslator(ePackageClient.getApplicationClient_ServiceRefs()), |
| CommonTranslators.createResourceRefTranslator14(ePackageClient.getApplicationClient_ResourceRefs()), |
| CommonTranslators.createResourceEnvRefTranslator14(ePackageClient.getApplicationClient_ResourceEnvRefs()), |
| CommonTranslators.createMessageDestinationRefTranslator(ePackageClient.getApplicationClient_MessageDestinationRefs()), |
| new JavaClassTranslator(CALLBACK_HANDLER, ePackageClient.getApplicationClient_CallbackHandler()), |
| CommonTranslators.createMessageDestinationTranslator(ePackageClient.getApplicationClient_MessageDestinations()), |
| // CommonTranslators.createDeploymentExtensionTranslator(ePackageClient.getApplicationClient_DeploymentExtensions()) |
| }; |
| } |
| |
| } |