blob: 1114fde6fa4a1b845aca691a05cda48e05b611e6 [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2000, 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.ws.internal.axis.creation.ui.wizard.wsdl;
import org.eclipse.jst.ws.internal.axis.consumption.core.command.WSDL2JavaCommand;
import org.eclipse.jst.ws.internal.axis.consumption.ui.widgets.AxisMappingsFragment;
import org.eclipse.jst.ws.internal.axis.consumption.ui.widgets.AxisMappingsWidget;
import org.eclipse.jst.ws.internal.axis.creation.ui.plugin.WebServiceAxisCreationUIPlugin;
import org.eclipse.jst.ws.internal.axis.creation.ui.widgets.skeleton.AxisSkeletonDefaultingCommand;
import org.eclipse.jst.ws.internal.axis.creation.ui.widgets.skeleton.AxisSkeletonFragment;
import org.eclipse.jst.ws.internal.axis.creation.ui.widgets.skeleton.SkeletonConfigWidget;
import org.eclipse.jst.ws.internal.axis.creation.ui.widgets.skeleton.SkeletonConfigWidgetDefaultingCommand;
import org.eclipse.jst.ws.internal.consumption.common.WSDLResourceFilter;
import org.eclipse.jst.ws.internal.consumption.ui.command.data.ProjectName2IProjectTransformer;
import org.eclipse.jst.ws.internal.consumption.ui.widgets.extensions.ServerExtensionDefaultingCommand;
import org.eclipse.jst.ws.internal.consumption.ui.wizard.WebServiceServerRuntimeType;
import org.eclipse.wst.command.internal.env.core.fragment.CommandFragment;
import org.eclipse.wst.command.internal.env.core.fragment.CommandFragmentFactory;
import org.eclipse.wst.command.internal.env.ui.widgets.CanFinishRegistry;
import org.eclipse.wst.command.internal.env.ui.widgets.CommandWidgetBinding;
import org.eclipse.wst.command.internal.env.ui.widgets.WidgetContributor;
import org.eclipse.wst.command.internal.env.ui.widgets.WidgetContributorFactory;
import org.eclipse.wst.command.internal.env.ui.widgets.WidgetRegistry;
import org.eclipse.wst.command.internal.provisional.env.core.common.MessageUtils;
import org.eclipse.wst.command.internal.provisional.env.core.data.DataMappingRegistry;
/**
* This is the class for the Axis Web service type.
*/
public class WSWSDLAxisType implements WebServiceServerRuntimeType, CommandWidgetBinding
{
private WSDLResourceFilter filter_ = new WSDLResourceFilter();
private String serverName_;
private String runtimeName_;
private boolean isWebModuleRequired_;
/**
* Returns a short, locale specific name of this Web Service type.
* @return A short, locale specific name of this Web Service type.
*/
public String getName() {
return WebServiceAxisCreationUIPlugin.getMessage("%WS_NAME_WSDLAXIS");
}
/**
* Returns a locale specific description of this Web Service type.
* @return A locale specific description of this Web Service type.
*/
public String getDescription() {
return WebServiceAxisCreationUIPlugin.getMessage("%WS_DESC_WSDLAXIS");
}
/**
* Returns a locale specific label for the Server supported by this Web Service type
* @return A locale specific server label from server plugins
*/
public String getServerLabel() {
return serverName_;
}
/**
* Sets the server label to the appropriate name found in the server plugins.
* @param server name
*/
public void setServerLabel(String serverLabel) {
serverName_ = serverLabel;
}
/**
* Returns a locale specific label for the deployment runtime of this Web Service type
* @return A locale specific label for the deployment runtime
*/
public String getRuntimeLabel() {
return runtimeName_;
}
/**
* Sets the runtime label for the appropriate runtime
* @param server name
*/
public void setRuntimeLabel(String runtimeLabel) {
runtimeName_ = runtimeLabel;
}
/**
* Returns a label for the Web Service type associated with this WebServiceServerRuntimeType
* @return A label for the Web Service type
*/
public String getWebServiceTypeLabel() {
return WebServiceAxisCreationUIPlugin.getMessage(
"%WEBSERVICETYPE_NAME_WSDL_AXIS");
}
/**
* Returns whether or not a Web Module is required for this WebServiceServerRuntimeType
* @return true if requireWebModule
*/
public boolean isWebModuleRequired() {
return isWebModuleRequired_;
}
/**
* Sets the boolean value at runtime according to requireWebModule attribute from the manifest file
* @param requireWebModule
*/
public void setWebModuleRequired(boolean requireWebModule) {
isWebModuleRequired_ = requireWebModule;
}
/**
* Returns a string representation of this object.
* @return A string representation of this object.
*/
public String toString() {
return getName();
}
/* (non-Javadoc)
* @see org.eclipse.jst.ws.internal.consumption.ui.wizard.WebServiceServerRuntimeType#isEJBModuleRequired()
*/
public boolean isEJBModuleRequired() {
return false;
}
/* (non-Javadoc)
* @see org.eclipse.jst.ws.internal.consumption.ui.wizard.WebServiceServerRuntimeType#setEJBModuleRequired(boolean)
*/
public void setEJBModuleRequired(boolean arg0) {
return;
}
/* (non-Javadoc)
* @see org.eclipse.wst.command.env.ui.widgets.CommandWidgetBinding#registerCanFinish(org.eclipse.wst.command.env.ui.widgets.CanFinishRegistry)
*/
public void registerCanFinish(CanFinishRegistry canFinishRegistry)
{
}
/* (non-Javadoc)
* @see org.eclipse.wst.command.env.ui.widgets.CommandWidgetBinding#registerDataMappings(org.eclipse.wst.command.internal.provisional.env.core.data.DataMappingRegistry)
*/
public void registerDataMappings(DataMappingRegistry dataRegistry)
{
// SkeletonConfigWidget
dataRegistry.addMapping(ServerExtensionDefaultingCommand.class, "ServerProject", SkeletonConfigWidget.class, "ServerProject", new ProjectName2IProjectTransformer());
dataRegistry.addMapping(AxisSkeletonDefaultingCommand.class, "JavaWSDLParam", SkeletonConfigWidget.class);
dataRegistry.addMapping(SkeletonConfigWidgetDefaultingCommand.class, "EndpointURI", SkeletonConfigWidget.class);
dataRegistry.addMapping(SkeletonConfigWidgetDefaultingCommand.class, "OutputWSDLFolder", SkeletonConfigWidget.class);
dataRegistry.addMapping(SkeletonConfigWidgetDefaultingCommand.class, "OutputWSDLFile", SkeletonConfigWidget.class);
dataRegistry.addMapping(SkeletonConfigWidgetDefaultingCommand.class, "OutputJavaFolder", SkeletonConfigWidget.class);
dataRegistry.addMapping(SkeletonConfigWidgetDefaultingCommand.class, "ShowMapping", SkeletonConfigWidget.class);
// AxisMappingsFragment
dataRegistry.addMapping(SkeletonConfigWidgetDefaultingCommand.class, "ShowMapping", AxisMappingsFragment.class);
dataRegistry.addMapping(SkeletonConfigWidget.class, "ShowMapping", AxisMappingsFragment.class);
// AxisMappingsWidget
dataRegistry.addMapping(SkeletonConfigWidgetDefaultingCommand.class, "JavaWSDLParam", AxisMappingsWidget.class, "JavaParameter", null);
dataRegistry.addMapping(SkeletonConfigWidget.class, "JavaWSDLParam", AxisMappingsWidget.class, "JavaParameter", null);
// WSDL2JavaCommand
dataRegistry.addMapping(SkeletonConfigWidgetDefaultingCommand.class, "JavaWSDLParam", WSDL2JavaCommand.class);
dataRegistry.addMapping(SkeletonConfigWidget.class, "JavaWSDLParam", WSDL2JavaCommand.class);
dataRegistry.addMapping(AxisMappingsWidget.class, "JavaParameter", WSDL2JavaCommand.class, "JavaWSDLParam", null);
}
/* (non-Javadoc)
* @see org.eclipse.wst.command.env.ui.widgets.CommandWidgetBinding#registerWidgetMappings(org.eclipse.wst.command.env.ui.widgets.WidgetRegistry)
*/
public void registerWidgetMappings(WidgetRegistry widgetRegistry)
{
String pluginId_ = "org.eclipse.jst.ws.consumption.ui";
MessageUtils msgUtils = new MessageUtils( pluginId_ + ".plugin", this );
/*
widgetRegistry.add( "WSDLSelection",
msgUtils.getMessage("PAGE_TITLE_WS_SELECTION"),
msgUtils.getMessage("PAGE_DESC_WS_SELECTION"),
new WidgetContributorFactory()
{
public WidgetContributor create()
{
return new WSDLSelectionWidget();
}
} );
widgetRegistry.add( "WSDLSelectionTreeWidget",
msgUtils.getMessage("PAGE_TITLE_WSDL_SELECTION"),
msgUtils.getMessage("PAGE_DESC_WSDL_SELECTION"),
new WidgetContributorFactory()
{
public WidgetContributor create()
{
return new WSDLSelectionTreeWidget();
}
});
*/
widgetRegistry.add( "SkeletonConfig",
msgUtils.getMessage("PAGE_TITLE_WSSKEL_CONFIG"),
msgUtils.getMessage("PAGE_DESC_WSSKEL_CONFIG"),
new WidgetContributorFactory()
{
public WidgetContributor create()
{
return new SkeletonConfigWidget();
}
} );
widgetRegistry.add( "AxisMappingsWidget",
msgUtils.getMessage("PAGE_TITLE_WS_XML2BEAN"),
msgUtils.getMessage("PAGE_DESC_N2P_MAPPINGS"),
new WidgetContributorFactory()
{
public WidgetContributor create()
{
return new AxisMappingsWidget(AxisMappingsWidget.MODE_XML2BEAN);
}
} );
}
/* (non-Javadoc)
* @see org.eclipse.wst.command.internal.env.core.fragment.CommandFragmentFactoryFactory#create()
*/
public CommandFragmentFactory create()
{
return new CommandFragmentFactory()
{
public CommandFragment create()
{
return new AxisSkeletonFragment();
}
};
}
}