/******************************************************************************* * Copyright (c) 2003, 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.web.archive.operations; import java.util.Set; import org.eclipse.jst.j2ee.application.internal.operations.J2EEComponentExportDataModelProvider; import org.eclipse.jst.j2ee.internal.archive.operations.JavaEEComponentExportOperation; import org.eclipse.jst.j2ee.internal.earcreation.EARCreationResourceHandler; import org.eclipse.jst.j2ee.internal.plugin.IJ2EEModuleConstants; import org.eclipse.jst.j2ee.internal.project.J2EEProjectUtilities; import org.eclipse.jst.j2ee.web.datamodel.properties.IWebComponentExportDataModelProperties; import org.eclipse.wst.common.frameworks.datamodel.IDataModelOperation; public class WebComponentExportDataModelProvider extends J2EEComponentExportDataModelProvider implements IWebComponentExportDataModelProperties { public WebComponentExportDataModelProvider() { super(); } @Override public IDataModelOperation getDefaultOperation() { return new JavaEEComponentExportOperation(model); } @Override public Set getPropertyNames() { Set propertyNames = super.getPropertyNames(); propertyNames.add(EXCLUDE_COMPILE_JSP); return propertyNames; } @Override public Object getDefaultProperty(String propertyName) { if (EXCLUDE_COMPILE_JSP.equals(propertyName)) { return Boolean.FALSE; } return super.getDefaultProperty(propertyName); } @Override protected String getProjectType() { return J2EEProjectUtilities.DYNAMIC_WEB; } @Override protected String getWrongComponentTypeString(String projectName) { return EARCreationResourceHandler.getString(EARCreationResourceHandler.NOT_A_WAR, new Object[]{projectName}); } @Override protected String getModuleExtension() { return IJ2EEModuleConstants.WAR_EXT; } /** * Exports the specified Web Module project to the specified WAR file. * * @param webProjectName * The name of the Web Module project to export. * @param warFileName * The fully qualified WAR file location to export the specified Web Module project. * @param overwriteExisting * If this is <code>true</code> then an existing file at the location specified by * <code>earFileName</code> will be overwritten. * @param exportSource * If this is <code>true</code> then all source files in the specified Web Module * will be included in the resulting WAR file. * @plannedfor WTP 1.0 */ // TODO: determine plan for new DM Provider // public static void exportProject(String webProjectName, String warFileName, boolean // overwriteExisting, boolean exportSource) { // WebModuleExportDataModel dataModel = new WebModuleExportDataModel(); // dataModel.setProperty(PROJECT_NAME, webProjectName); // dataModel.setBooleanProperty(OVERWRITE_EXISTING, overwriteExisting); // dataModel.setProperty(ARCHIVE_DESTINATION, warFileName); // dataModel.setBooleanProperty(EXPORT_SOURCE_FILES, exportSource); // try { // dataModel.getDefaultOperation().run(null); // } catch (InvocationTargetException e) { // Logger.getLogger().logError(e); // } catch (InterruptedException e) { // Logger.getLogger().logError(e); // } // } }