<?xml version="1.0"?> 
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
    version="2.5">

	<listener>
		<listener-class>de.hsadmin.core.model.PersistenceManagerContextListener</listener-class>
	</listener>
	
    <servlet>
        <servlet-name>Queue Status Servlet</servlet-name>
        <servlet-class>de.hsadmin.core.qserv.QueueStatusReceiverServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>

  	<servlet>
  		<servlet-name>CLI Client Connector</servlet-name>
	  	<servlet-class>de.hsadmin.cliClientConnector.CLIClientConnectorServlet</servlet-class>
  		<init-param>
	  		<param-name>proxyValidateUrl</param-name>
		  	<param-value>https://@LOGIN_HOST@:@LOGIN_PORT@/cas/proxyValidate</param-value>
  		</init-param>
  		<init-param>
	  		<param-name>proxyServiceUrl</param-name>
		  	<param-value>https://@CONFIG_HOST@:@CONFIG_PORT@/hsar/backend</param-value>
  		</init-param>
	  	<init-param>
  			<param-name>Components</param-name>
	  		<param-value>member,pac,user,domain,emailaddress,emailalias,mysqluser,mysqldb,postgresqluser,postgresqldb,q</param-value>
		</init-param>
	  	<init-param>
		  	<param-name>ComponentClass_member</param-name>
			<param-value>de.hsadmin.mods.cust.Customer</param-value>
  		</init-param>
  		<init-param>
	  		<param-name>ComponentDescription_member</param-name>
		  	<param-value>Mitglieder</param-value>
  		</init-param>
	  	<init-param>
		  	<param-name>ComponentClass_pac</param-name>
			<param-value>de.hsadmin.mods.pac.Pac</param-value>
  		</init-param>
  		<init-param>
	  		<param-name>ComponentDescription_pac</param-name>
		  	<param-value>Pakete</param-value>
  		</init-param>
  		<init-param>
	  		<param-name>ComponentClass_user</param-name>
		  	<param-value>de.hsadmin.mods.user.UnixUser</param-value>
  		</init-param>
  		<init-param>
	  		<param-name>ComponentDescription_user</param-name>
		  	<param-value>Benutzer und Postfaecher anlegen</param-value>
  		</init-param>
	  	<init-param>
		  	<param-name>ComponentClass_domain</param-name>
			<param-value>de.hsadmin.mods.dom.Domain</param-value>
  		</init-param>
  		<init-param>
	  		<param-name>ComponentDescription_domain</param-name>
		  	<param-value>Domains aufschalten</param-value>
  		</init-param>
	  	<init-param>
		  	<param-name>ComponentClass_emailaddress</param-name>
			<param-value>de.hsadmin.mods.email.EMailAddress</param-value>
  		</init-param>
  		<init-param>
	  		<param-name>ComponentDescription_emailaddress</param-name>
		  	<param-value>E-Mail Adressen</param-value>
  		</init-param>
	  	<init-param>
		  	<param-name>ComponentClass_emailalias</param-name>
			<param-value>de.hsadmin.mods.email.EMailAlias</param-value>
  		</init-param>
  		<init-param>
	  		<param-name>ComponentDescription_emailalias</param-name>
		  	<param-value>E-Mail Aliases</param-value>  
  		</init-param>
	  	<init-param>
		  	<param-name>ComponentClass_postgresqluser</param-name>
			<param-value>de.hsadmin.mods.db.PgSqlUser</param-value>
  		</init-param>
  		<init-param>
	  		<param-name>ComponentDescription_postgresqluser</param-name>
		  	<param-value>PostgreSQL DB-Administrator</param-value>
  		</init-param>
	  	<init-param>
		  	<param-name>ComponentClass_postgresqldb</param-name>
			<param-value>de.hsadmin.mods.db.PgSqlDatabase</param-value>
  		</init-param>
  		<init-param>
	  		<param-name>ComponentDescription_postgresqldb</param-name>
		  	<param-value>PostgreSQL Datenbank</param-value>
  		</init-param>
	  	<init-param>
		  	<param-name>ComponentClass_mysqluser</param-name>
			<param-value>de.hsadmin.mods.db.MySqlUser</param-value>
  		</init-param>
  		<init-param>
	  		<param-name>ComponentDescription_mysqluser</param-name>
		  	<param-value>MySQL DB-Administrator</param-value>
  		</init-param>
	  	<init-param>
		  	<param-name>ComponentClass_mysqldb</param-name>
			<param-value>de.hsadmin.mods.db.MySqlDatabase</param-value>
  		</init-param>
  		<init-param>
	  		<param-name>ComponentDescription_mysqldb</param-name>
		  	<param-value>MySQL Datenbank</param-value>
  		</init-param>
	  	<init-param>
		  	<param-name>ComponentClass_q</param-name>
			<param-value>de.hsadmin.core.qserv.QueueTask</param-value>
  		</init-param>
  		<init-param>
	  		<param-name>ComponentDescription_q</param-name>
		  	<param-value>Offene Aktionen</param-value>
  		</init-param>
        <load-on-startup>1</load-on-startup>
  	</servlet>

   <servlet>
        <servlet-name>XmlRpcServlet</servlet-name>
        <servlet-class>de.hsadmin.remote.HSXmlRpcServlet</servlet-class>
        <init-param>
          <param-name>enabledForExtensions</param-name>
          <param-value>true</param-value>
        </init-param>
    </servlet>

    <servlet-mapping>
        <servlet-name>Queue Status Servlet</servlet-name>
        <url-pattern>/queueStatus</url-pattern>
    </servlet-mapping>

    <servlet-mapping>
        <servlet-name>CLI Client Connector</servlet-name>
        <url-pattern>/hsadmin/cli-interface/</url-pattern>
    </servlet-mapping>

    <servlet-mapping>
        <servlet-name>XmlRpcServlet</servlet-name>
        <url-pattern>/xmlrpc/*</url-pattern>
    </servlet-mapping>

    <resource-ref>
        <res-ref-name>jdbc/HSAdminDB</res-ref-name>
        <res-type>javax.sql.DataSource</res-type>
        <res-auth>Container</res-auth>
    </resource-ref>
 	    
    <resource-ref>
        <res-ref-name>jms/QueueCF</res-ref-name>
        <res-type>javax.jms.QueueConnectionFactory</res-type>
        <res-auth>Container</res-auth>
        <res-sharing-scope>Shareable</res-sharing-scope>
    </resource-ref>
 	    
    <resource-ref>
        <res-ref-name>jms/hsadminSystem-h01</res-ref-name>
        <res-type>javax.jms.Queue</res-type>
        <res-auth>Container</res-auth>
        <res-sharing-scope>Shareable</res-sharing-scope>
    </resource-ref>
    <resource-ref>
        <res-ref-name>jms/hsadminSystem-h02</res-ref-name>
        <res-type>javax.jms.Queue</res-type>
        <res-auth>Container</res-auth>
        <res-sharing-scope>Shareable</res-sharing-scope>
    </resource-ref>
    <resource-ref>
        <res-ref-name>jms/hsadminSystem-h03</res-ref-name>
        <res-type>javax.jms.Queue</res-type>
        <res-auth>Container</res-auth>
        <res-sharing-scope>Shareable</res-sharing-scope>
    </resource-ref>
    <resource-ref>
        <res-ref-name>jms/hsadminSystem-h04</res-ref-name>
        <res-type>javax.jms.Queue</res-type>
        <res-auth>Container</res-auth>
        <res-sharing-scope>Shareable</res-sharing-scope>
    </resource-ref>
    <resource-ref>
        <res-ref-name>jms/hsadminSystem-h05</res-ref-name>
        <res-type>javax.jms.Queue</res-type>
        <res-auth>Container</res-auth>
        <res-sharing-scope>Shareable</res-sharing-scope>
    </resource-ref>
    <resource-ref>
        <res-ref-name>jms/hsadminSystem-h06</res-ref-name>
        <res-type>javax.jms.Queue</res-type>
        <res-auth>Container</res-auth>
        <res-sharing-scope>Shareable</res-sharing-scope>
    </resource-ref>
    <resource-ref>
        <res-ref-name>jms/hsadminSystem-h07</res-ref-name>
        <res-type>javax.jms.Queue</res-type>
        <res-auth>Container</res-auth>
        <res-sharing-scope>Shareable</res-sharing-scope>
    </resource-ref>
    <resource-ref>
        <res-ref-name>jms/hsadminSystem-h08</res-ref-name>
        <res-type>javax.jms.Queue</res-type>
        <res-auth>Container</res-auth>
        <res-sharing-scope>Shareable</res-sharing-scope>
    </resource-ref>
    <resource-ref>
        <res-ref-name>jms/hsadminSystem-h09</res-ref-name>
        <res-type>javax.jms.Queue</res-type>
        <res-auth>Container</res-auth>
        <res-sharing-scope>Shareable</res-sharing-scope>
    </resource-ref>
    <resource-ref>
        <res-ref-name>jms/hsadminSystem-h50</res-ref-name>
        <res-type>javax.jms.Queue</res-type>
        <res-auth>Container</res-auth>
        <res-sharing-scope>Shareable</res-sharing-scope>
    </resource-ref>
    <resource-ref>
        <res-ref-name>jms/hsadminSystem-h51</res-ref-name>
        <res-type>javax.jms.Queue</res-type>
        <res-auth>Container</res-auth>
        <res-sharing-scope>Shareable</res-sharing-scope>
    </resource-ref>
    <resource-ref>
        <res-ref-name>jms/hsadminSystem-h52</res-ref-name>
        <res-type>javax.jms.Queue</res-type>
        <res-auth>Container</res-auth>
        <res-sharing-scope>Shareable</res-sharing-scope>
    </resource-ref>
    <resource-ref>
        <res-ref-name>jms/hsadminSystem-h55</res-ref-name>
        <res-type>javax.jms.Queue</res-type>
        <res-auth>Container</res-auth>
        <res-sharing-scope>Shareable</res-sharing-scope>
    </resource-ref>
    <resource-ref>
        <res-ref-name>jms/hsadminSystem-h56</res-ref-name>
        <res-type>javax.jms.Queue</res-type>
        <res-auth>Container</res-auth>
        <res-sharing-scope>Shareable</res-sharing-scope>
    </resource-ref>
    <resource-ref>
        <res-ref-name>jms/hsadminSystem-h57</res-ref-name>
        <res-type>javax.jms.Queue</res-type>
        <res-auth>Container</res-auth>
        <res-sharing-scope>Shareable</res-sharing-scope>
    </resource-ref>
    <resource-ref>
        <res-ref-name>jms/hsadminSystem-h58</res-ref-name>
        <res-type>javax.jms.Queue</res-type>
        <res-auth>Container</res-auth>
        <res-sharing-scope>Shareable</res-sharing-scope>
    </resource-ref>
    <resource-ref>
        <res-ref-name>jms/hsadminSystem-dns1</res-ref-name>
        <res-type>javax.jms.Queue</res-type>
        <res-auth>Container</res-auth>
        <res-sharing-scope>Shareable</res-sharing-scope>
    </resource-ref>
    <resource-ref>
        <res-ref-name>jms/hsadminSystem-dns2</res-ref-name>
        <res-type>javax.jms.Queue</res-type>
        <res-auth>Container</res-auth>
        <res-sharing-scope>Shareable</res-sharing-scope>
    </resource-ref>
    <resource-ref>
        <res-ref-name>jms/hsadminSystem-dns3</res-ref-name>
        <res-type>javax.jms.Queue</res-type>
        <res-auth>Container</res-auth>
        <res-sharing-scope>Shareable</res-sharing-scope>
    </resource-ref>
    <resource-ref>
        <res-ref-name>jms/hsadminSystem-mail1</res-ref-name>
        <res-type>javax.jms.Queue</res-type>
        <res-auth>Container</res-auth>
        <res-sharing-scope>Shareable</res-sharing-scope>
    </resource-ref>
    <resource-ref>
        <res-ref-name>jms/hsadminSystem-mail2</res-ref-name>
        <res-type>javax.jms.Queue</res-type>
        <res-auth>Container</res-auth>
        <res-sharing-scope>Shareable</res-sharing-scope>
    </resource-ref>
    <resource-ref>
        <res-ref-name>jms/hsadminSystem-mail3</res-ref-name>
        <res-type>javax.jms.Queue</res-type>
        <res-auth>Container</res-auth>
        <res-sharing-scope>Shareable</res-sharing-scope>
    </resource-ref>
    <resource-ref>
        <res-ref-name>jms/hsadminStatus</res-ref-name>
        <res-type>javax.jms.Queue</res-type>
        <res-auth>Container</res-auth>
        <res-sharing-scope>Shareable</res-sharing-scope>
    </resource-ref>
 	    
	<security-constraint>
       <web-resource-collection>
           	<web-resource-name>Hostsharing Administrative Area</web-resource-name>
        	<url-pattern>/*</url-pattern>
       </web-resource-collection>
       <user-data-constraint>
           	<transport-guarantee>CONFIDENTIAL</transport-guarantee>
       </user-data-constraint>
   </security-constraint>

</web-app>
