<?xml version="1.0" encoding="UTF-8"?>
<Server port="8805" shutdown="SHUTDOWN">
	<Listener className="org.apache.tomee.catalina.ServerListener" />
	<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
	<Listener className="org.apache.catalina.core.JasperListener" />
	<Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener" />
	<Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
	<Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener" />
	<Listener className="net.forwardfire.vasc.demo.server.tomcat.JndiVascDeployerListener" 
		vascControllerName="vasc/server-tech"
		scanPath="conf/vasc.d"
		scanTime="3"
	/>
	<GlobalNamingResources>
		<!-- Config Vasc Tech Demo -->
		<Environment name="config/START_GUI" 	value="true"	type="java.lang.Boolean"/>
		<Environment name="config/START_EDITOR"	value="true"	type="java.lang.Boolean"/>
		<Environment name="config/DEPLOY_DEBUG"	value="true"	type="java.lang.Boolean"/>
		<Environment name="config/DEPLOY_PATH"	value="/demo"	type="java.lang.String"/>
		
		<!-- Config Vasc Tech DataSource -->
		<Resource name="jdbc/DemoManagerDataDS" auth="Container" type="javax.sql.DataSource" 
			factory="org.apache.tomcat.jdbc.pool.DataSourceFactory"
			initialSize="1"	minIdle="1" 
			driverClassName="org.h2.Driver"
			url="jdbc:h2:tcp://localhost:9092/vasc-demo"
		/>
		<!-- Config The Vasc Demo Controller -->
		<Resource name="vasc/server-tech" auth="Container" type="net.forwardfire.vasc.core.VascController" singleton="true" scope="Shareable"
			factory="net.forwardfire.vasc.impl.jndi.JndiVascControllerFactory"
			vascControllerProvider="net.forwardfire.vasc.demo.server.core.VascTechDemoControllerConfig"
			removeLocal="false"
		/>
	</GlobalNamingResources>
	<Service name="Catalina">
		<Connector port="8899" protocol="HTTP/1.1" connectionTimeout="5000" redirectPort="9988" />
		<Engine name="Catalina" defaultHost="localhost">
			<Realm className="org.apache.catalina.realm.JAASRealm"
				appName="vasc-auth-server"
				userClassNames="org.apache.openejb.core.security.jaas.UserPrincipal"
				roleClassNames="org.apache.openejb.core.security.jaas.GroupPrincipal"
			/>
			<!-- 
			<Realm className="org.apache.catalina.realm.LockOutRealm">
				<Realm className="org.apache.catalina.realm.DataSourceRealm"
					dataSourceName="jdbc/DemoManagerDataDS"
					userTable="vasc_user"
					userRoleTable="vasc_user_role"
					userNameCol="username"
					userCredCol="password"
					roleNameCol="role"
					digestEncoding="UTF-8"
				/>
				<Realm className="net.forwardfire.vasc.demo.server.tomcat.MongoRealm"
					hostname="localhost" port="27017" database="testdb" authUser="" authPass=""
					userCollection="site_user"
					userField="username"
					userPassField="password"
					roleCollection="site_user_role"
					roleField="role"
					roleUserField="site_user_id"
					roleUserIdRef="true"
					digestEncoding="UTF-8"
				/>
				<Realm className="org.apache.catalina.realm.JNDIRealm"
					connectionURL="ldap://localhost:389"
					userBase="ou=people,dc=mycompany,dc=com"
					userSearch="(mail={0})"
					userRoleName="memberOf"
					roleBase="ou=groups,dc=mycompany,dc=com"
					roleName="cn"
					roleSearch="(uniqueMember={0})"
				/>
			</Realm> 
			-->
			<Host	name="localhost" unpackWARs="true" autoDeploy="true"
					appBase="workdir/webapps" workDir="workdir/work"
				>
				<Valve	className="ch.qos.logback.access.tomcat.LogbackValve"
						quiet="true" filename="conf/logback-access.xml"
				/>
				<Valve	className="org.apache.catalina.valves.CrawlerSessionManagerValve"
						crawlerUserAgents=".*[bB]ot.*|.*ahoo.*|.*oogle.*"
						sessionInactiveInterval="60"
				/>
				<Valve	className="net.forwardfire.vasc.demo.server.tomcat.AuthSessionTimeoutValve"
						logInfo="true" minTimeout="30" maxTimeout="3600" authTimeout="1200"
				/>
			</Host>
		</Engine>
	</Service>
</Server>