##################################################################################################
# Copyright (c) 2005 Eteration A.S. and Gorkem Ercan. 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: Gorkem Ercan - initial API and implementation
#               
###################################################################################################
pluginName= JBoss Generic server definitions 
providerName=Eclipse.org
pluginDescription=Provides JBoss server definitons 


# ============ jboss323 ====================
jbossCategory=JBoss
jboss323runtimeTypeName=JBoss v3.2.3
jboss323runtimeTypeDescription=Publishes and runs J2EE 1.3 modules on a local server. \
Provides basic server functionality.

jboss323serverTypeName=JBoss v3.2.3
jboss323serverTypeDescription=Publishes and runs J2EE 1.3 modules on a local server. \
Provides basic server functionality.

jboss4runtimeTypeName=JBoss v4.0
jboss4runtimeTypeDescription=Publishes and runs J2EE 1.4 modules on a local server. \
Provides basic server functionality.

jboss4serverTypeName=JBoss v4.0
jboss4serverTypeDescription=Publishes and runs J2EE 1.4 modules on a local server. \
Provides basic server functionality.

# ============== serverdef translations ================
ApplicationServerDirectory=Application &Server Directory:
serverAddress=A&ddress:
serverPort=&Port:
jndiPort=&JNDI Port:
jboss323serverConfig=Server Co&nfiguration:
serverclassPath=&Classpath Variable:
serverName=Ser&ver Name:
username=Use&r Name:
password=Pass&word:
