## JBoss Server Testing Environment Properties.

## Standard server properties.
server.platform=JBoss
server.platform.class=jboss-platform
server.factory=org.jnp.interfaces.NamingContextFactory
java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces
server.depend=jbossall-client.jar

jboss.server=${jboss.home}/server/default
jboss.deploy.dir=${jboss.home}/server/default/deploy
server.lib=${jboss.home}/client
server.url=jnp://localhost:1099/
server.user=admin
server.pwd=admin

## JBoss 4.2.x.specific properties.
#jboss.home=../../../jboss-4.2.3.GA
#server.testrunner=TestRunner/remote
#persistence10.jar=${jboss.server}/lib/ejb3-persistence.jar

## JBoss 5.1.x specific properties.
jboss.home=C:/jboss-5.1.0.GA
server.testrunner=TestRunner/remote-org.eclipse.persistence.testing.framework.server.TestRunner
server.testrunner1=TestRunner1/remote-org.eclipse.persistence.testing.framework.server.TestRunner1
server.testrunner2=TestRunner2/remote-org.eclipse.persistence.testing.framework.server.TestRunner2
server.testrunner3=TestRunner3/remote-org.eclipse.persistence.testing.framework.server.TestRunner3
server.testrunner4=TestRunner4/remote-org.eclipse.persistence.testing.framework.server.TestRunner4
server.testrunner5=TestRunner5/remote-org.eclipse.persistence.testing.framework.server.TestRunner5
server.testrunner.wdf=ServerTestRunner/remote-org.eclipse.persistence.testing.framework.wdf.server.ServerTestRunner
persistence10.jar=${jboss.home}/common/lib/ejb3-persistence.jar

# The following only for JBoss-eap 5.0 testing,and it actually point to JPA1.0 unsigned jar (javax.persistence_unsigned_for_testing_1.0.0.jar),
# and this jar will be added at very beginning of client classpath
server.persistence20.lib=${jboss.server}/lib
server.persistence20.jar=${persistence10.jar}
