###############################################################################
# Copyright (c) 2009 by SAP AG, Walldorf. 
# 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:
#     SAP AG - initial API and implementation
###############################################################################
DOMAdapterFactoryLabelProvider_JaxWsWebServicesLabel		= JAX-WS Web Services
DOMAdapterFactoryLabelProvider_LoadingCanceledLabel			= Loading Canceled
DOMAdapterFactoryLabelProvider_LoadingDummyLabel			= Loading...
DOMAdapterFactoryLabelProvider_SeiLabel						= Service Endpoint Interfaces
DOMAdapterFactoryLabelProvider_WebServicesLabel				= Web Services

OpenWSResourceAction_Name									= Open

NavigateToImplementationAction_ShowInWebServicesAreaAction	= Locate in Web Services Node
NavigateToImplementationAction_ShowInEJBAreaAction			= Locate in Deployment Descriptor Node


SelectFilesToCheckoutDlgTitle								= Confirm resource checkout
SelectFilesToCheckoutDlgTblTitle							= The following resources need to be checked out during the operation
SelectFilesToCheckout_CanceledMessage						= Operation cannot continue as resources checkout has been canceled
