diff options
Diffstat (limited to 'bundles/org.eclipse.jst.ws.axis.creation.ui/src/org/eclipse/jst/ws/internal/axis/creation/ui/command/CopyDeploymentFileCommand.java')
-rw-r--r-- | bundles/org.eclipse.jst.ws.axis.creation.ui/src/org/eclipse/jst/ws/internal/axis/creation/ui/command/CopyDeploymentFileCommand.java | 160 |
1 files changed, 0 insertions, 160 deletions
diff --git a/bundles/org.eclipse.jst.ws.axis.creation.ui/src/org/eclipse/jst/ws/internal/axis/creation/ui/command/CopyDeploymentFileCommand.java b/bundles/org.eclipse.jst.ws.axis.creation.ui/src/org/eclipse/jst/ws/internal/axis/creation/ui/command/CopyDeploymentFileCommand.java deleted file mode 100644 index 4efe8467b..000000000 --- a/bundles/org.eclipse.jst.ws.axis.creation.ui/src/org/eclipse/jst/ws/internal/axis/creation/ui/command/CopyDeploymentFileCommand.java +++ /dev/null @@ -1,160 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2003, 2007 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 - * yyyymmdd bug Email and other contact information - * -------- -------- ----------------------------------------------------------- - * 20060524 130755 kathy@ca.ibm.com - Kathy Chan - * 20061221 168787 kathy@ca.ibm.com - Kathy Chan - * 20070815 188999 pmoogk@ca.ibm.com - Peter Moogk - *******************************************************************************/ -package org.eclipse.jst.ws.internal.axis.creation.ui.command; - - -import java.io.File; -import java.io.FileInputStream; -import java.io.IOException; - -import org.eclipse.core.resources.IProject; -import org.eclipse.core.runtime.IAdaptable; -import org.eclipse.core.runtime.IPath; -import org.eclipse.core.runtime.IProgressMonitor; -import org.eclipse.core.runtime.IStatus; -import org.eclipse.core.runtime.Path; -import org.eclipse.core.runtime.Status; -import org.eclipse.jem.util.emf.workbench.ProjectUtilities; -import org.eclipse.jst.ws.internal.axis.consumption.core.AxisConsumptionCoreMessages; -import org.eclipse.jst.ws.internal.common.J2EEUtils; -import org.eclipse.jst.ws.internal.common.ResourceUtils; -import org.eclipse.osgi.util.NLS; -import org.eclipse.wst.command.internal.env.common.FileResourceUtils; -import org.eclipse.wst.command.internal.env.core.common.StatusUtils; -import org.eclipse.wst.command.internal.env.core.context.ResourceContext; -import org.eclipse.wst.command.internal.env.eclipse.BaseEclipseEnvironment; -import org.eclipse.wst.common.componentcore.resources.IVirtualComponent; -import org.eclipse.wst.common.componentcore.resources.IVirtualFile; -import org.eclipse.wst.common.componentcore.resources.IVirtualFolder; -import org.eclipse.wst.common.environment.IEnvironment; -import org.eclipse.wst.common.environment.IStatusHandler; -import org.eclipse.wst.common.frameworks.datamodel.AbstractDataModelOperation; -import org.eclipse.wst.server.core.IModule; -import org.eclipse.wst.server.core.IServer; -import org.eclipse.wst.server.core.ServerCore; -import org.eclipse.wst.server.core.ServerUtil; -import org.eclipse.wst.server.core.internal.IModulePublishHelper; - -/** - * - * This command copies the server-config.wsdd file to it's proper location in the module. - * - */ - -public class CopyDeploymentFileCommand extends AbstractDataModelOperation -{ - private final String WEB_INF = "WEB-INF"; - private final String SERVER_CONFIG = "server-config.wsdd"; - private String projectName_; - private String EARProjectName_; - private String serverInstanceId_; - - /** - * Constructor for CopyDeploymentFileCommand. - * @param String description - * @param String name - * - */ - public CopyDeploymentFileCommand( String projectName, String earProjectName ) - { - projectName_ = projectName; - EARProjectName_ = earProjectName; - } - - public IStatus execute( IProgressMonitor monitor, IAdaptable adaptable ) - { - IStatus status = Status.OK_STATUS; - IEnvironment environment = getEnvironment(); - - FileInputStream finStream = null; - try - { - - IVirtualComponent component = J2EEUtils.getVirtualComponent( projectName_ ); - IServer server = ServerCore.findServer( serverInstanceId_ ); - IProject project = ProjectUtilities.getProject(projectName_); - IModule projectModule = ServerUtil.getModule(project); - - if (server != null && component != null && projectModule != null) { - IModulePublishHelper publishHelper = (IModulePublishHelper) - server.loadAdapter(IModulePublishHelper.class, monitor); - if (publishHelper != null) { - IModule[] serverModules; - if (EARProjectName_ == null) { - serverModules = new IModule [] {projectModule}; - } else { - IProject EARProject = ProjectUtilities.getProject(EARProjectName_); - IModule EARProjectModule = ServerUtil.getModule(EARProject); - serverModules = new IModule [] {EARProjectModule, projectModule}; - } - IPath publishDirPath = publishHelper.getPublishDirectory(serverModules); - - if (publishDirPath != null) { - IVirtualFolder rootFolder = component.getRootFolder(); - IPath rootFolderPath = ResourceUtils.getWorkspaceRoot().getFile(rootFolder.getWorkspaceRelativePath()).getLocation(); - if (rootFolderPath != null) { - File rootFolderFile = rootFolderPath.toFile(); - File publishDirFile = publishDirPath.toFile(); - if (!rootFolderFile.equals(publishDirFile)) { - // copy the server-config.wsdd if the publish directory is not in the same as the project root folder - IPath path = new Path( WEB_INF ).append( SERVER_CONFIG ); - IPath serverConfigPath = publishDirPath.append(path); - if (serverConfigPath != null) { - IVirtualFile newLocation = rootFolder.getFile(path); - IPath targetPath = newLocation.getWorkspaceRelativePath(); - if (targetPath != null) { - finStream = new FileInputStream(serverConfigPath.toString()); - if (finStream != null) - { - IStatusHandler statusHandler = environment.getStatusHandler(); - ResourceContext context = ((BaseEclipseEnvironment)environment).getResourceContext(); - - FileResourceUtils.createFile(context, - targetPath, - finStream, - monitor, - statusHandler); - finStream.close(); - } - } - } - } - } - } - } - } - } - catch( Throwable e ) - { - status = StatusUtils.errorStatus(NLS.bind(AxisConsumptionCoreMessages.MSG_ERROR_MOVE_RESOURCE, new String[]{e.getLocalizedMessage()}), e); - environment.getStatusHandler().reportError(status); - } finally { - if (finStream != null) { - try { - finStream.close(); - } catch (IOException e) { - } - } - } - - return status; - - } - - public void setServerInstanceId(String serverInstanceId) { - this.serverInstanceId_ = serverInstanceId; - } -} |