###############################################################################
# Copyright (c) 2001, 2018 IBM Corporation and others.
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Eclipse Public License 2.0
# which accompanies this distribution, and is available at
# https://www.eclipse.org/legal/epl-2.0/
#
# SPDX-License-Identifier: EPL-2.0
#
# Contributors:
#     IBM Corporation - initial API and implementation
###############################################################################

#
# Messages in plugin.xml.
#
PLUGIN_NAME=Webservice Axis Consumption UI (Deprecated)
PLUGIN_PROVIDER=Eclipse Web Tools Platform

WEBSERVICECLIENTTYPE_NAME_JAVA_AXIS=Java proxy
LABEL_RUNTIME_AXIS_11=Apache Axis
DESC_RUNTIME_AXIS_11=Apache Axis
#
#	Web Services Preferance Pages
#
# Categories
PREFERENCE_CATEGORY_AXIS_EMITTER=Axis Emitter
