incubator-hise-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From r.@apache.org
Subject svn commit: r987046 - in /incubator/hise/trunk/rtests: ./ src/ src/test/ src/test/java/ src/test/java/org/ src/test/java/org/apache/ src/test/java/org/apache/hise/ src/test/java/org/apache/hise/example/ src/test/resources/ src/test/resources/test-example/
Date Thu, 19 Aug 2010 07:25:31 GMT
Author: rr
Date: Thu Aug 19 07:25:30 2010
New Revision: 987046

URL: http://svn.apache.org/viewvc?rev=987046&view=rev
Log:
Added rtests

Added:
    incubator/hise/trunk/rtests/
    incubator/hise/trunk/rtests/pom.xml
    incubator/hise/trunk/rtests/src/
    incubator/hise/trunk/rtests/src/test/
    incubator/hise/trunk/rtests/src/test/java/
    incubator/hise/trunk/rtests/src/test/java/org/
    incubator/hise/trunk/rtests/src/test/java/org/apache/
    incubator/hise/trunk/rtests/src/test/java/org/apache/hise/
    incubator/hise/trunk/rtests/src/test/java/org/apache/hise/MockHandler.java
    incubator/hise/trunk/rtests/src/test/java/org/apache/hise/MockSender.java
    incubator/hise/trunk/rtests/src/test/java/org/apache/hise/TaskTestBase.java
    incubator/hise/trunk/rtests/src/test/java/org/apache/hise/example/
    incubator/hise/trunk/rtests/src/test/java/org/apache/hise/example/ExampleTaskTest.java
    incubator/hise/trunk/rtests/src/test/resources/
    incubator/hise/trunk/rtests/src/test/resources/hise-ctx.xml
    incubator/hise/trunk/rtests/src/test/resources/log4j.xml
    incubator/hise/trunk/rtests/src/test/resources/test-example/
    incubator/hise/trunk/rtests/src/test/resources/test-example/ExampleTasks.wsdl
    incubator/hise/trunk/rtests/src/test/resources/test-example/approveBody.xml
    incubator/hise/trunk/rtests/src/test/resources/test-example/approveHeader.xml
    incubator/hise/trunk/rtests/src/test/resources/test-example/test.xml
    incubator/hise/trunk/rtests/src/test/resources/test-example/testHtd1.xml

Added: incubator/hise/trunk/rtests/pom.xml
URL: http://svn.apache.org/viewvc/incubator/hise/trunk/rtests/pom.xml?rev=987046&view=auto
==============================================================================
--- incubator/hise/trunk/rtests/pom.xml (added)
+++ incubator/hise/trunk/rtests/pom.xml Thu Aug 19 07:25:30 2010
@@ -0,0 +1,74 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ Licensed to the Apache Software Foundation (ASF) under one
+  ~ or more contributor license agreements.  See the NOTICE file
+  ~ distributed with this work for additional information
+  ~ regarding copyright ownership.  The ASF licenses this file
+  ~ to you under the Apache License, Version 2.0 (the
+  ~ "License"); you may not use this file except in compliance
+  ~ with the License.  You may obtain a copy of the License at
+  ~
+  ~    http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing,
+  ~ software distributed under the License is distributed on an
+  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  ~ KIND, either express or implied.  See the License for the
+  ~ specific language governing permissions and limitations
+  ~ under the License.
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+    <parent>
+        <groupId>org.apache.hise</groupId>
+        <artifactId>hise</artifactId>
+        <version>1.0.0-SNAPSHOT</version>
+    </parent>
+    <artifactId>hise-rtests</artifactId>
+    <packaging>jar</packaging>
+    <version>1.0.0-SNAPSHOT</version>
+    <dependencies>
+        <dependency>
+            <groupId>org.apache.hise</groupId>
+            <artifactId>hise-services</artifactId>
+            <version>${project.version}</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.springframework</groupId>
+            <artifactId>spring-test</artifactId>
+            <version>${spring.version}</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>log4j</groupId>
+            <artifactId>log4j</artifactId>
+            <version>${log4j.version}</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>xmlunit</groupId>
+            <artifactId>xmlunit</artifactId>
+            <version>1.3</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>commons-dbcp</groupId>
+            <artifactId>commons-dbcp</artifactId>
+            <version>1.4</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>com.h2database</groupId>
+            <artifactId>h2</artifactId>
+            <version>1.1.117</version>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>cglib</groupId>
+            <artifactId>cglib-nodep</artifactId>
+            <version>2.1_3</version>
+            <scope>test</scope>
+        </dependency>
+    </dependencies>
+</project>

Added: incubator/hise/trunk/rtests/src/test/java/org/apache/hise/MockHandler.java
URL: http://svn.apache.org/viewvc/incubator/hise/trunk/rtests/src/test/java/org/apache/hise/MockHandler.java?rev=987046&view=auto
==============================================================================
--- incubator/hise/trunk/rtests/src/test/java/org/apache/hise/MockHandler.java (added)
+++ incubator/hise/trunk/rtests/src/test/java/org/apache/hise/MockHandler.java Thu Aug 19 07:25:30 2010
@@ -0,0 +1,12 @@
+
+package org.apache.hise;
+
+import org.apache.hise.api.Handler;
+
+public class MockHandler implements Handler {
+
+    public String getId() {
+        return "test";
+    }
+
+}

Added: incubator/hise/trunk/rtests/src/test/java/org/apache/hise/MockSender.java
URL: http://svn.apache.org/viewvc/incubator/hise/trunk/rtests/src/test/java/org/apache/hise/MockSender.java?rev=987046&view=auto
==============================================================================
--- incubator/hise/trunk/rtests/src/test/java/org/apache/hise/MockSender.java (added)
+++ incubator/hise/trunk/rtests/src/test/java/org/apache/hise/MockSender.java Thu Aug 19 07:25:30 2010
@@ -0,0 +1,12 @@
+package org.apache.hise;
+
+import org.apache.hise.api.Sender;
+import org.w3c.dom.Node;
+
+public class MockSender implements  Sender {
+
+    public Node invoke(Node message, Node epr) {
+        return message;
+    }
+
+}

Added: incubator/hise/trunk/rtests/src/test/java/org/apache/hise/TaskTestBase.java
URL: http://svn.apache.org/viewvc/incubator/hise/trunk/rtests/src/test/java/org/apache/hise/TaskTestBase.java?rev=987046&view=auto
==============================================================================
--- incubator/hise/trunk/rtests/src/test/java/org/apache/hise/TaskTestBase.java (added)
+++ incubator/hise/trunk/rtests/src/test/java/org/apache/hise/TaskTestBase.java Thu Aug 19 07:25:30 2010
@@ -0,0 +1,64 @@
+package org.apache.hise;
+
+import javax.xml.namespace.QName;
+import org.apache.hise.api.Handler;
+import org.junit.runner.RunWith;
+import org.springframework.test.context.ContextConfiguration;
+import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
+import org.apache.hise.engine.HISEEngineImpl;
+import org.apache.hise.lang.TaskDefinition;
+import org.apache.hise.lang.xsd.htd.TTaskInterface;
+import org.apache.hise.utils.DOMUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.core.io.ClassPathResource;
+import org.springframework.transaction.annotation.Transactional;
+import org.w3c.dom.Document;
+import org.w3c.dom.Node;
+import org.apache.hise.runtime.Task;
+import org.springframework.context.ApplicationContext;
+import org.springframework.context.support.ClassPathXmlApplicationContext;
+import org.springframework.util.Assert;
+
+@RunWith(SpringJUnit4ClassRunner.class)
+
+@ContextConfiguration(locations = {"classpath:hise-ctx.xml"})
+@Transactional
+public abstract class TaskTestBase {
+
+    @Autowired
+    public HISEEngineImpl hiseEngine = null;
+
+    @Autowired
+    public Handler handler = null;
+
+    @Autowired
+    public ApplicationContext applicationContext = null;
+
+    private ClassPathXmlApplicationContext innerCtx = null;
+
+    public void init(String taskDefPath) {
+        innerCtx = new ClassPathXmlApplicationContext(new String[]{ taskDefPath }, applicationContext);
+    }
+
+    public Task getTask(String startMsgHeaderPath, String startMsgBodyPath, QName taskName) throws Exception {
+
+        Assert.notNull(innerCtx, "Call init first.");
+
+        TaskDefinition taskDef = hiseEngine.getTaskDefinition(taskName);
+        TTaskInterface taskInterface = taskDef.getTaskInterface();
+
+        ClassPathResource header = new ClassPathResource(startMsgHeaderPath);
+        Document headerDoc = DOMUtils.parse(header.getInputStream());
+
+        ClassPathResource body = new ClassPathResource(startMsgBodyPath);
+        Document bodyDoc = DOMUtils.parse(body.getInputStream());
+
+        Node response = hiseEngine.receive(handler, taskInterface.getPortType(), taskInterface.getOperation(), bodyDoc.getDocumentElement(), headerDoc.getDocumentElement());
+
+        String taskId = org.apache.ws.commons.schema.utils.DOMUtil.getChildText(response);
+
+        Task t = Task.load(hiseEngine, Long.parseLong(taskId));
+
+        return t;
+    }
+}

Added: incubator/hise/trunk/rtests/src/test/java/org/apache/hise/example/ExampleTaskTest.java
URL: http://svn.apache.org/viewvc/incubator/hise/trunk/rtests/src/test/java/org/apache/hise/example/ExampleTaskTest.java?rev=987046&view=auto
==============================================================================
--- incubator/hise/trunk/rtests/src/test/java/org/apache/hise/example/ExampleTaskTest.java (added)
+++ incubator/hise/trunk/rtests/src/test/java/org/apache/hise/example/ExampleTaskTest.java Thu Aug 19 07:25:30 2010
@@ -0,0 +1,29 @@
+package org.apache.hise.example;
+
+import javax.xml.namespace.QName;
+import org.apache.hise.TaskTestBase;
+import org.apache.hise.runtime.Task;
+import org.junit.Before;
+import org.junit.Test;
+import org.springframework.util.Assert;
+
+public class ExampleTaskTest extends TaskTestBase {
+    
+    private Task task = null;
+
+    @Before
+    public void setUp() throws Exception {
+        init("test-example/test.xml");
+        task = getTask("test-example/approveHeader.xml", "test-example/approveBody.xml", new QName("http://www.insurance.example.com/claims", "Task1"));
+    }
+
+    @Test
+    public void priorityTest() {
+        Assert.isTrue(Integer.valueOf(2).equals(task.getTaskDto().getPriority()));
+
+        task.getTaskDto().setPriority(5);
+
+        Assert.isTrue(Integer.valueOf(5).equals(task.getTaskDto().getPriority()));
+    }
+
+}

Added: incubator/hise/trunk/rtests/src/test/resources/hise-ctx.xml
URL: http://svn.apache.org/viewvc/incubator/hise/trunk/rtests/src/test/resources/hise-ctx.xml?rev=987046&view=auto
==============================================================================
--- incubator/hise/trunk/rtests/src/test/resources/hise-ctx.xml (added)
+++ incubator/hise/trunk/rtests/src/test/resources/hise-ctx.xml Thu Aug 19 07:25:30 2010
@@ -0,0 +1,114 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+       xmlns:ctx="http://www.springframework.org/schema/context"
+       xmlns:util="http://www.springframework.org/schema/util"
+       xmlns:tx="http://www.springframework.org/schema/tx"
+       xsi:schemaLocation="
+       http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
+       http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd
+       http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-2.5.xsd
+       http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd
+       ">
+
+    <ctx:property-placeholder properties-ref="preProps" />
+
+    <bean id="preProps" class="java.util.Properties">
+        <constructor-arg>
+            <props>
+                <prop key="openjpa.db">H2</prop>
+                <prop key="openjpa.dictionary">org.apache.openjpa.jdbc.sql.H2Dictionary</prop>
+                <prop key="openjpa.synchronizeMappings">buildSchema(ForeignKeys=true,SchemaAction='a')</prop>
+                <prop key="openjpa.generateDdl">true</prop>
+                <prop key="openjpa.showSql">false</prop>
+                <prop key="openjpa.schema"></prop>
+                <prop key="db.driver">org.h2.Driver</prop>
+                <prop key="db.url">jdbc:h2:mem:test;DB_CLOSE_DELAY=-1</prop>
+                <!--prop key="db.url">jdbc:h2:file:target/hise-h2-db;DB_CLOSE_ON_EXIT=false</prop-->
+                <prop key="db.user">sa</prop>
+                <prop key="db.password"></prop>
+                <prop key="db.maxActive">4</prop>
+                <prop key="db.minIdle">0</prop>
+                <prop key="db.maxIdle">0</prop>
+                <prop key="db.testOnBorrow">true</prop>
+                <prop key="db.testWhileIdle">true</prop>
+                <prop key="db.timeBetweenEvictionRunsMillis">5000</prop>
+            </props>
+        </constructor-arg>
+    </bean>
+
+
+    <bean id="htEntityManagerFactory" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
+        <property name="dataSource" ref="dataSource" />
+        <property name="jpaPropertyMap" ref="jpaPropertyMap"/>
+        <property name="jpaVendorAdapter" ref="jpaVendorAdapter"/>
+        <property name="persistenceXmlLocation" value="classpath:/org/apache/hise/persistence.xml" />
+        <property name="persistenceUnitName" value="org.apache.hise"/>
+    </bean>
+
+    <util:map id="jpaPropertyMap">
+    </util:map>
+
+    <!-- OpenJPA H2 Driver -->
+    <bean id="jpaVendorAdapter" class="org.apache.hise.dao.vendor.OpenJpaVendorAdapter">
+        <property name="database" value="${openjpa.db}"/>
+        <property name="databasePlatform" value="${openjpa.dictionary}"/>
+        <property name="generateDdl" value="${openjpa.generateDdl}" />
+        <property name="showSql" value="${openjpa.showSql}" />
+        <property name="extProperties">
+            <util:map>
+                <entry key="openjpa.jdbc.SynchronizeMappings" value="${openjpa.synchronizeMappings}"/>
+                <entry key="openjpa.jdbc.Schema" value="${openjpa.schema}"/>
+            </util:map>
+        </property>
+    </bean>
+
+    <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
+        <property name="driverClassName" value="${db.driver}" />
+        <property name="url" value="${db.url}"/>
+        <property name="username" value="${db.user}" />
+        <property name="password" value="${db.password}"/>
+        <property name="maxActive" value="${db.maxActive}"/>
+        <property name="maxIdle" value="${db.maxIdle}"/>
+        <property name="minIdle" value="${db.minIdle}"/>
+        <property name="testOnBorrow" value="${db.testOnBorrow}"/>
+        <property name="testWhileIdle" value="${db.testWhileIdle}"/>
+        <property name="timeBetweenEvictionRunsMillis" value="${db.timeBetweenEvictionRunsMillis}"/>
+
+    </bean>
+
+    <bean id="hiseDao" class="org.apache.hise.dao.HISEDao">
+        <property name="entityManagerFactory" ref="htEntityManagerFactory"/>
+    </bean>
+
+    <bean id="transactionManager" class="org.springframework.orm.jpa.JpaTransactionManager">
+        <property name="entityManagerFactory" ref="htEntityManagerFactory"/>
+        <property name="dataSource" ref="dataSource"/>
+    </bean>
+
+    <tx:annotation-driven transaction-manager="transactionManager"/>
+
+  <bean id="hiseEngine" class="org.apache.hise.engine.HISEEngineImpl">
+    <property name="hiseDao" ref="hiseDao"/>
+    <property name="hiseScheduler" ref="hiseScheduler"/>
+    <property name="hiseUserDetails" ref="hiseUserDetails"/>
+    <!--property name="peopleQueryProviders">
+        <util:list>
+            <ref bean="TestPeopleQueryProvider"/>
+        </util:list>
+    </property-->
+  </bean>
+
+  <bean id="hiseUserDetails" class="org.apache.hise.engine.DefaultHISEUserDetails">
+    <property name="hiseDao" ref="hiseDao"/>
+  </bean>
+
+  <bean id="hiseScheduler" class="org.apache.hise.engine.HISEScheduler" init-method="init" destroy-method="destroy">
+    <property name="hiseEngine" ref="hiseEngine"/>
+    <property name="transactionManager" ref="transactionManager"/>
+  </bean>
+
+  <bean id="sender" class="org.apache.hise.MockSender"/>
+
+  <bean id="handler" class="org.apache.hise.MockHandler"/>
+
+</beans>
\ No newline at end of file

Added: incubator/hise/trunk/rtests/src/test/resources/log4j.xml
URL: http://svn.apache.org/viewvc/incubator/hise/trunk/rtests/src/test/resources/log4j.xml?rev=987046&view=auto
==============================================================================
--- incubator/hise/trunk/rtests/src/test/resources/log4j.xml (added)
+++ incubator/hise/trunk/rtests/src/test/resources/log4j.xml Thu Aug 19 07:25:30 2010
@@ -0,0 +1,85 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+
+-->
+<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
+
+<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/" debug="false">
+
+    <appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender">
+        <!--param name="threshold" value="DEBUG"/-->
+        <layout class="org.apache.log4j.PatternLayout">
+            <param name="ConversionPattern" value="%-5p - %-30c{1} - %m%n"/>
+        </layout>
+    </appender>
+
+    <appender name="FILE" class="org.apache.log4j.FileAppender">
+        <!--param name="threshold" value="DEBUG"/-->
+        <param name="File" value="target/test.log"/>
+        <layout class="org.apache.log4j.PatternLayout">
+            <param name="ConversionPattern" value="%d{ABSOLUTE} | %-5p | %-10t | %-24.24c{1} | %-30.30C %4L | %m%n"/>
+        </layout>
+    </appender>
+
+    <logger name="httpclient.Wire">
+        <level value="DEBUG"/>
+    </logger>
+ 
+    <root>
+        <level value="DEBUG"/>
+        <appender-ref ref="FILE"/>
+    </root>
+
+</log4j:configuration>
+<!--
+
+Log4J Configuration Quick Reference:
+====================================
+
+Priority order is DEBUG < INFO < WARN < ERROR < FATAL
+
+PatternLayout conversion characters:
+
+%c   Category of the logging event
+%C   Fully qualified class name of the caller
+%d   Date of the logging event  (example: %d{HH:mm:ss,SSS} )
+%F   File name where the logging request was issued (caution: extremely slow)
+%l   Location information of the caller (caution: extremely slow)
+%L   Line number from where the logging request was issued (caution: extremely slow)
+%m   Application-supplied message
+%M   Method name from where the logging request was issued (caution: extremely slow)
+%n   Line separator
+%p   Priority of the logging event
+%r   Number of milliseconds since the start of the application
+%t   Name of the thread that generated the logging event
+%x   Nested diagnotic context associated with the thread
+%%   A single percent sign
+
+Format modifiers examples:
+
+%20c     Left pad with spaces if category is less than 20 characters long
+%-20c    Right pad with spaces if category is less than 20 characters long
+%.30c    Truncate from the beginning if category is more than 30 chars long
+%20.30c  Left pad 20 chars + truncate from beginning if more than 30 chars
+%-20.30c Right pad 20 chars + truncate from beginning if more than 30 chars
+
+Examples:  "%r [%t] %-5p %c %x - %m\n"
+"%-6r [%15.15t] %-5p %30.30c %x - %m\n"
+
+-->
+

Added: incubator/hise/trunk/rtests/src/test/resources/test-example/ExampleTasks.wsdl
URL: http://svn.apache.org/viewvc/incubator/hise/trunk/rtests/src/test/resources/test-example/ExampleTasks.wsdl?rev=987046&view=auto
==============================================================================
--- incubator/hise/trunk/rtests/src/test/resources/test-example/ExampleTasks.wsdl (added)
+++ incubator/hise/trunk/rtests/src/test/resources/test-example/ExampleTasks.wsdl Thu Aug 19 07:25:30 2010
@@ -0,0 +1,144 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/a0c9ce4c-ee02-2a10-4b96-cb205464aa02
+
+© 2007 Active Endpoints Inc., Adobe Systems Inc., BEA Systems Inc., International
+Business Machines Corporation, Oracle Inc., and SAP AG. All rights reserved.
+ -->
+<wsdl:definitions name="ClaimApproval"
+  targetNamespace="http://www.insurance.example.com/claims"
+  xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
+  xmlns:tns="http://www.insurance.example.com/claims"
+  xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
+  xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+  <wsdl:types>
+    <xsd:schema elementFormDefault="qualified"
+      targetNamespace="http://www.insurance.example.com/claims"
+      xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+      xmlns:tns="http://www.insurance.example.com/claims">
+        <xsd:complexType name="ClaimApprovalData">
+          <xsd:sequence>
+            <xsd:element name="cust">
+              <xsd:complexType>
+                <xsd:sequence>
+                  <xsd:element name="id" type="xsd:string">
+                  </xsd:element>
+                  <xsd:element name="firstname" type="xsd:string">
+                  </xsd:element>
+                  <xsd:element name="lastname" type="xsd:string">
+                  </xsd:element>
+                </xsd:sequence>
+              </xsd:complexType>
+            </xsd:element>
+            <xsd:element name="amount" type="xsd:double" />
+            <xsd:element name="region" type="xsd:string" />
+            <xsd:element name="prio" type="xsd:int" />
+            <xsd:element name="activateAt" type="xsd:dateTime" />
+          </xsd:sequence>
+        </xsd:complexType>
+    </xsd:schema>
+  </wsdl:types>
+  <wsdl:message name="ClaimApprovalRequest">
+    <wsdl:part name="ClaimApprovalRequest"
+      type="tns:ClaimApprovalData" />
+  </wsdl:message>
+  <wsdl:message name="ClaimApprovalResponse">
+  </wsdl:message>
+  <wsdl:message name="ClaimResolveRequest">
+    <wsdl:part name="claimId" type="xsd:int" />
+    <wsdl:part name="ok" type="xsd:boolean" />
+  </wsdl:message>
+  <wsdl:message name="ClaimResolveResponse">
+  </wsdl:message>
+  <wsdl:message name="notifyRequest">
+    <wsdl:part name="firstname" type="xsd:string" />
+    <wsdl:part name="lastname" type="xsd:string" />
+    <wsdl:part name="taskId" type="xsd:string" />
+  </wsdl:message>
+  <wsdl:message name="notifyResponse"></wsdl:message>
+  <wsdl:portType name="ClaimsHandlingPT">
+    <wsdl:operation name="approve">
+      <wsdl:input message="tns:ClaimApprovalRequest" />
+      <wsdl:output message="tns:ClaimApprovalResponse" />
+    </wsdl:operation>
+    <wsdl:operation name="escalate">
+      <wsdl:input message="tns:ClaimApprovalRequest" />
+      <wsdl:output message="tns:ClaimApprovalResponse"></wsdl:output>
+    </wsdl:operation>
+  </wsdl:portType>
+  <wsdl:portType name="ClaimsResolvingPT">
+    <wsdl:operation name="resolve">
+      <wsdl:input message="tns:ClaimResolveRequest" />
+      <wsdl:output message="tns:ClaimResolveResponse" />
+    </wsdl:operation>
+  </wsdl:portType>
+  <wsdl:portType name="ClaimApprovalReminderPT">
+    <wsdl:operation name="notify">
+      <wsdl:input message="tns:notifyRequest" />
+      <wsdl:output message="tns:notifyResponse" />
+    </wsdl:operation>
+  </wsdl:portType>
+
+  <wsdl:binding name="ClaimsHandlingBinding" type="tns:ClaimsHandlingPT">
+    <soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http" />
+    <wsdl:operation name="approve">
+      <soap:operation />
+      <wsdl:input>
+        <soap:body use="literal" namespace="http://www.insurance.example.com/claims" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap:body use="literal" namespace="http://www.insurance.example.com/claims" />
+      </wsdl:output>
+    </wsdl:operation>
+    <wsdl:operation name="escalate">
+      <soap:operation />
+      <wsdl:input>
+        <soap:body use="literal" namespace="http://www.insurance.example.com/claims" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap:body use="literal" namespace="http://www.insurance.example.com/claims" />
+      </wsdl:output>
+    </wsdl:operation>
+  </wsdl:binding>
+  <wsdl:service name="ClaimsHandlingService">
+    <wsdl:port name="ClaimsHandlingPort" binding="tns:ClaimsHandlingBinding">
+      <soap:address location="http://localhost:8090"/>
+    </wsdl:port>
+  </wsdl:service>
+
+  <wsdl:binding name="ClaimsResolvingBinding" type="tns:ClaimsResolvingPT">
+    <soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http" />
+    <wsdl:operation name="resolve">
+      <soap:operation/>
+      <wsdl:input>
+        <soap:body use="literal" namespace="http://www.insurance.example.com/claims" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap:body use="literal" namespace="http://www.insurance.example.com/claims" />
+      </wsdl:output>
+    </wsdl:operation>
+  </wsdl:binding>
+  <wsdl:service name="ClaimsResolvingService">
+    <wsdl:port name="ClaimsResolvingPort" binding="tns:ClaimsResolvingBinding">
+      <soap:address location="http://localhost:9999"/> <!--some non existing destination, since it has to be initialized from callback EPR -->
+    </wsdl:port>
+  </wsdl:service>
+
+  <wsdl:binding name="ClaimApprovalReminderBinding" type="tns:ClaimApprovalReminderPT">
+    <soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http" />
+    <wsdl:operation name="notify">
+      <soap:operation/>
+      <wsdl:input>
+        <soap:body use="literal" namespace="http://www.insurance.example.com/claims" />
+      </wsdl:input>
+      <wsdl:output>
+        <soap:body use="literal" namespace="http://www.insurance.example.com/claims" />
+      </wsdl:output>
+    </wsdl:operation>
+  </wsdl:binding>
+  <wsdl:service name="ClaimApprovalReminderService">
+    <wsdl:port name="ClaimApprovalReminderPort" binding="tns:ClaimApprovalReminderBinding">
+      <soap:address location="http://localhost:8090"/> <!--some non existing destination, since it has to be initialized from callback EPR -->
+    </wsdl:port>
+  </wsdl:service>
+</wsdl:definitions>

Added: incubator/hise/trunk/rtests/src/test/resources/test-example/approveBody.xml
URL: http://svn.apache.org/viewvc/incubator/hise/trunk/rtests/src/test/resources/test-example/approveBody.xml?rev=987046&view=auto
==============================================================================
--- incubator/hise/trunk/rtests/src/test/resources/test-example/approveBody.xml (added)
+++ incubator/hise/trunk/rtests/src/test/resources/test-example/approveBody.xml Thu Aug 19 07:25:30 2010
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<soapenv:Body xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:cla="http://www.insurance.example.com/claims">
+    <cla:approve>
+        <ClaimApprovalRequest>
+            <cla:cust>
+                <cla:id>123</cla:id>
+                <cla:firstname>Edmund</cla:firstname>
+                <cla:lastname>Zorn</cla:lastname>
+            </cla:cust>
+            <cla:amount>1234</cla:amount>
+            <cla:region>usa</cla:region>
+            <cla:prio>2</cla:prio>
+            <cla:activateAt>2009-01-02T12:00:00</cla:activateAt>
+        </ClaimApprovalRequest>
+    </cla:approve>
+</soapenv:Body>
\ No newline at end of file

Added: incubator/hise/trunk/rtests/src/test/resources/test-example/approveHeader.xml
URL: http://svn.apache.org/viewvc/incubator/hise/trunk/rtests/src/test/resources/test-example/approveHeader.xml?rev=987046&view=auto
==============================================================================
--- incubator/hise/trunk/rtests/src/test/resources/test-example/approveHeader.xml (added)
+++ incubator/hise/trunk/rtests/src/test/resources/test-example/approveHeader.xml Thu Aug 19 07:25:30 2010
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<soapenv:Header xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:wsa="http://www.w3.org/2005/08/addressing">
+  <wsse:Security soapenv:mustUnderstand="1" xmlns:wsa="http://www.w3.org/2005/08/addressing" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
+    <wsse:UsernameToken wsu:Id="UsernameToken-18874281" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
+      <wsse:Username>user2</wsse:Username>
+      <wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordDigest">9kjX6S6fPxT2wXaewA46x2HkOfw=</wsse:Password>
+      <wsse:Nonce>MIfGhAtlnYCc++maCqCItQ==</wsse:Nonce>
+      <wsu:Created>2010-01-25T10:32:49.292Z</wsu:Created>
+    </wsse:UsernameToken>
+  </wsse:Security>
+  <htd:initiator xmlns:htd="http://www.example.org/WS-HT">soapui</htd:initiator>
+  <wsa:Action xmlns:wsa="http://www.w3.org/2005/08/addressing">http://www.insurance.example.com/claims/ClaimsHandlingPT/approveRequest</wsa:Action>
+  <wsa:ReplyTo xmlns:wsa="http://www.w3.org/2005/08/addressing">
+    <wsa:Address>http://localhost:8082/ClaimsResponseService/</wsa:Address>
+  </wsa:ReplyTo>
+  <wsa:To xmlns:wsa="http://www.w3.org/2005/08/addressing">http://localhost:8080/ClaimsHandlingService/</wsa:To>
+</soapenv:Header>
\ No newline at end of file

Added: incubator/hise/trunk/rtests/src/test/resources/test-example/test.xml
URL: http://svn.apache.org/viewvc/incubator/hise/trunk/rtests/src/test/resources/test-example/test.xml?rev=987046&view=auto
==============================================================================
--- incubator/hise/trunk/rtests/src/test/resources/test-example/test.xml (added)
+++ incubator/hise/trunk/rtests/src/test/resources/test-example/test.xml Thu Aug 19 07:25:30 2010
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+       xmlns:ctx="http://www.springframework.org/schema/context"
+       xmlns:util="http://www.springframework.org/schema/util"
+       xmlns:tx="http://www.springframework.org/schema/tx"
+       xsi:schemaLocation="
+       http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
+       http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd
+       http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-2.5.xsd
+       http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd
+       ">
+
+
+  <bean class="org.apache.hise.engine.store.HISEDeployer" init-method="init" destroy-method="destroy">
+    <property name="hiseEngine" ref="hiseEngine"/>
+    <property name="deploymentInfo">
+      <bean class="org.apache.hise.engine.store.HISEDD">
+        <property name="humanInteractionsResource" value="classpath:test-example/testHtd1.xml"></property>
+        <property name="tasksDI">
+          <list>
+
+            <bean class="org.apache.hise.engine.store.TaskDD">
+              <property name="taskName">
+                <bean class="javax.xml.namespace.QName" factory-method="valueOf">
+                  <constructor-arg type="java.lang.String" value="{http://www.insurance.example.com/claims}Task1"></constructor-arg>
+                </bean>
+              </property>
+              <property name="handler" ref="handler"/>
+              <property name="sender" ref="sender"/>
+            </bean>
+          </list>
+        </property>
+      </bean>
+    </property>
+  </bean>
+
+
+</beans>
\ No newline at end of file

Added: incubator/hise/trunk/rtests/src/test/resources/test-example/testHtd1.xml
URL: http://svn.apache.org/viewvc/incubator/hise/trunk/rtests/src/test/resources/test-example/testHtd1.xml?rev=987046&view=auto
==============================================================================
--- incubator/hise/trunk/rtests/src/test/resources/test-example/testHtd1.xml (added)
+++ incubator/hise/trunk/rtests/src/test/resources/test-example/testHtd1.xml Thu Aug 19 07:25:30 2010
@@ -0,0 +1,391 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/a0c9ce4c-ee02-2a10-4b96-cb205464aa02
+
+© 2007 Active Endpoints Inc., Adobe Systems Inc., BEA Systems Inc., International
+Business Machines Corporation, Oracle Inc., and SAP AG. All rights reserved.
+ -->
+<htd:humanInteractions xmlns:htd="http://www.example.org/WS-HT"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+    xmlns:tns="http://www.insurance.example.com/claims"
+    targetNamespace="http://www.insurance.example.com/claims"
+    xsi:schemaLocation="http://www.example.org/WS-HT file:/usr/share/schemas/ws-humantask.xsd"
+    xmlns:cla="http://www.insurance.example.com/claims">
+    
+    <!-- 
+        
+        Test human task definition. Contains: task definitions, different human roles definitions,
+        descriptions with parameters.
+        
+        TODO:
+         
+         - matching business request
+        
+    -->
+    
+    <htd:import importType="http://schemas.xmlsoap.org/wsdl/" location="test-example/ExampleTasks.wsdl" namespace="http://www.insurance.example.com/claims/"/>
+    
+    <htd:logicalPeopleGroups>
+    
+    	<htd:logicalPeopleGroup name="lpg1">
+            <htd:documentation xml:lang="en-US">Employee group.</htd:documentation>
+            <htd:parameter name="region" type="xsd:string"/>
+        </htd:logicalPeopleGroup>
+
+    </htd:logicalPeopleGroups>
+    
+    <htd:tasks>
+    
+        <!-- Please change properties other than potential owners i both Task1 and Task2 -->
+        
+        <!-- One potential owners -->
+        <htd:task name="Task1">
+            
+            <htd:documentation xml:lang="en-US">This task is used to handle claims that require manual approval. </htd:documentation>
+            <htd:interface portType="tns:ClaimsHandlingPT" operation="approve" responsePortType="tns:ClaimsHandlingCallbackPT" responseOperation="approvalResponse"/>
+            <htd:priority> htd:getInput("ClaimApprovalRequest")/cla:prio </htd:priority>
+            
+            <htd:peopleAssignments>
+            	<htd:potentialOwners>
+                  <htd:from>
+                    <htd:literal>
+                        <htd:organizationalEntity>
+                            <htd:users>
+                                <htd:user>user1</htd:user>
+                            </htd:users>
+                        </htd:organizationalEntity>
+                    </htd:literal>
+                  </htd:from>
+                </htd:potentialOwners>
+                
+                <htd:businessAdministrators>
+                  <htd:from>
+                    <htd:literal>
+                        <htd:organizationalEntity>
+                            <htd:groups>
+                                <htd:group>group1</htd:group>
+                                <htd:group>group2</htd:group>
+                            </htd:groups>
+                        </htd:organizationalEntity>
+                    </htd:literal>
+                  </htd:from>
+                </htd:businessAdministrators>
+
+                <htd:businessAdministrators>
+                  <htd:from>
+                    <htd:literal>
+                        <htd:organizationalEntity>
+                            <htd:users>
+                                <htd:user>user1</htd:user>
+                                <htd:user>user2</htd:user>
+                            </htd:users>
+                        </htd:organizationalEntity>
+                    </htd:literal>
+                  </htd:from>
+                </htd:businessAdministrators>
+
+                <htd:businessAdministrators>
+                    <htd:from logicalPeopleGroup="lpg1">
+                        <htd:argument name="region"> htd:getInput("ClaimApprovalRequest")/region </htd:argument>
+                    </htd:from>
+                </htd:businessAdministrators>
+                
+            	<htd:taskStakeholders>
+                  <htd:from>
+                    <htd:literal>
+                        <htd:organizationalEntity>
+                            <htd:users>
+                                <htd:user>user3</htd:user>
+                            </htd:users>
+                        </htd:organizationalEntity>
+                    </htd:literal>
+                  </htd:from>
+                </htd:taskStakeholders>
+                
+            </htd:peopleAssignments>
+            
+            <htd:delegation potentialDelegatees="nobody"/>
+            
+            <htd:presentationElements>
+                
+                <htd:name xml:lang="en-US"> Approve Claim </htd:name>
+                
+                <htd:presentationParameters>
+                    
+                    <htd:presentationParameter name="firstname" type="xsd:string">
+                        htd:getInput("ClaimApprovalRequest")/cust/firstname </htd:presentationParameter>
+                    
+                    <htd:presentationParameter name="lastname" type="xsd:string">
+                        htd:getInput("ClaimApprovalRequest")/cust/lastname </htd:presentationParameter>
+                    
+                    <htd:presentationParameter name="euroAmount" type="xsd:double">
+                        htd:getInput("ClaimApprovalRequest")/amount </htd:presentationParameter>
+                        
+                </htd:presentationParameters>
+                
+                <htd:subject xml:lang="en-US"> Approve the insurance claim for PLN $euroAmount$ on behalf of $firstname$ $lastname$ </htd:subject>
+
+                <htd:description xml:lang="en-US" contentType="text/plain"> Approve this claim following corporate guideline #4711.0815/7 ... </htd:description>
+
+            </htd:presentationElements>
+            <htd:outcome>someOutput</htd:outcome>
+            
+  <htd:deadlines>
+    <htd:startDeadline>
+      <htd:for>'PT5S'</htd:for>
+      <htd:escalation name="reassignTask3">
+        <htd:reassignment>
+          <htd:potentialOwners>
+            <htd:from>
+              <htd:literal>
+                <htd:organizationalEntity>
+                  <htd:users>
+                    <htd:user>user3</htd:user>
+                  </htd:users>
+                </htd:organizationalEntity>
+
+              </htd:literal>
+            </htd:from>
+          </htd:potentialOwners>
+        </htd:reassignment>
+      </htd:escalation>
+    </htd:startDeadline>
+    <htd:completionDeadline>
+      <htd:for>'PT10S'</htd:for>
+      <htd:escalation name="reassignTask3Completion">
+        <htd:reassignment>
+          <htd:potentialOwners>
+            <htd:from>
+              <htd:literal>
+                <htd:organizationalEntity>
+                  <htd:users>
+                    <htd:user>user4</htd:user>
+                  </htd:users>
+                </htd:organizationalEntity>
+              </htd:literal>
+            </htd:from>
+          </htd:potentialOwners>
+        </htd:reassignment>
+      </htd:escalation>
+    </htd:completionDeadline>
+  </htd:deadlines>
+        </htd:task>    
+        
+        <!-- Two potential owners -->
+        <htd:task name="Task2">
+            
+            <htd:documentation xml:lang="en-US">This task is used to handle claims that require manual approval. </htd:documentation>
+            <htd:interface portType="tns:ClaimsHandlingPT" operation="approve2" responsePortType="tns:ClaimsHandlingCallbackPT" responseOperation="approvalResponse"/>
+            <htd:priority> htd:getInput("ClaimApprovalRequest")/prio </htd:priority>
+            
+            <htd:peopleAssignments>
+            
+            	<htd:potentialOwners>
+                  <htd:from>
+                    <htd:literal>
+                        <htd:organizationalEntity>
+                            <htd:users>
+                                <htd:user>user1</htd:user>
+                                <htd:user>user2</htd:user>
+                            </htd:users>
+                        </htd:organizationalEntity>
+                    </htd:literal>
+                  </htd:from>
+                </htd:potentialOwners>
+                
+                <htd:businessAdministrators>
+                  <htd:from>
+                    <htd:literal>
+                        <htd:organizationalEntity>
+                            <htd:groups>
+                                <htd:group>group1</htd:group>
+                                <htd:group>group2</htd:group>
+                            </htd:groups>
+                        </htd:organizationalEntity>
+                    </htd:literal>
+                  </htd:from>  
+                </htd:businessAdministrators>
+
+                <htd:businessAdministrators>
+                  <htd:from>
+                    <htd:literal>
+                        <htd:organizationalEntity>
+                            <htd:users>
+                                <htd:user>user1</htd:user>
+                                <htd:user>user2</htd:user>
+                            </htd:users>
+                        </htd:organizationalEntity>
+                    </htd:literal>
+                  </htd:from>  
+                </htd:businessAdministrators>
+
+                <htd:businessAdministrators>
+                    <htd:from logicalPeopleGroup="lpg1">
+                        <htd:argument name="region"> htd:getInput("ClaimApprovalRequest")/region </htd:argument>
+                    </htd:from>
+                </htd:businessAdministrators>
+                
+            	<htd:taskStakeholders>
+                  <htd:from>
+                    <htd:literal>
+                        <htd:organizationalEntity>
+                            <htd:users>
+                                <htd:user>user3</htd:user>
+                            </htd:users>
+                        </htd:organizationalEntity>
+                    </htd:literal>
+                  </htd:from>  
+                </htd:taskStakeholders>
+                
+            </htd:peopleAssignments>
+            
+            <htd:delegation potentialDelegatees="nobody"/>
+            
+            <htd:presentationElements>
+                
+                <htd:name xml:lang="en-US"> Approve Claim </htd:name>
+                
+                <htd:presentationParameters>
+                    
+                    <htd:presentationParameter name="firstname" type="xsd:string">
+                        htd:getInput("ClaimApprovalRequest")/cust/firstname </htd:presentationParameter>
+                    
+                    <htd:presentationParameter name="lastname" type="xsd:string">
+                        htd:getInput("ClaimApprovalRequest")/cust/lastname </htd:presentationParameter>
+                    
+                    <htd:presentationParameter name="euroAmount" type="xsd:double">
+                        htd:getInput("ClaimApprovalRequest")/amount </htd:presentationParameter>
+                        
+                </htd:presentationParameters>
+                
+                <htd:subject xml:lang="en-US"> Approve the insurance claim for PLN $euroAmount$ on behalf of $firstname$ $lastname$ </htd:subject>
+
+                <htd:description xml:lang="en-US" contentType="text/plain"> Approve this claim following corporate guideline #4711.0815/7 ... </htd:description>
+
+            </htd:presentationElements>
+            
+        </htd:task>    
+
+
+        <!-- Escalation -->
+        <htd:task name="Task3">
+            
+            <htd:documentation xml:lang="en-US">This task is used to handle claims that require manual approval. </htd:documentation>
+            <htd:interface portType="tns:ClaimsHandlingPT" operation="approve3"/>
+            
+            <htd:peopleAssignments>
+              <htd:potentialOwners>
+                  <htd:from>
+                    <htd:literal>
+                        <htd:organizationalEntity>
+                            <htd:users>
+                                <htd:user>user1</htd:user>
+                            </htd:users>
+                        </htd:organizationalEntity>
+                    </htd:literal>
+                  </htd:from>
+                </htd:potentialOwners>
+
+                <htd:businessAdministrators>
+                  <htd:from>
+                    <htd:literal>
+                        <htd:organizationalEntity>
+                            <htd:users>
+                                <htd:user>user2</htd:user>
+                            </htd:users>
+                        </htd:organizationalEntity>
+                    </htd:literal>
+                  </htd:from>
+                </htd:businessAdministrators>
+            </htd:peopleAssignments>
+            
+            <htd:presentationElements>
+                
+                <htd:name xml:lang="en-US"> Approve Claim </htd:name>
+                
+                <htd:presentationParameters>
+                    
+                    <htd:presentationParameter name="firstname" type="xsd:string">
+                        htd:getInput("ClaimApprovalRequest")/cust/firstname </htd:presentationParameter>
+                    
+                    <htd:presentationParameter name="lastname" type="xsd:string">
+                        htd:getInput("ClaimApprovalRequest")/cust/lastname </htd:presentationParameter>
+                    
+                    <htd:presentationParameter name="euroAmount" type="xsd:double">
+                        htd:getInput("ClaimApprovalRequest")/amount </htd:presentationParameter>
+                        
+                </htd:presentationParameters>
+                
+                <htd:subject xml:lang="en-US"> Approve the insurance claim for PLN $euroAmount$ on behalf of $firstname$ $lastname$ </htd:subject>
+
+                <htd:description xml:lang="en-US" contentType="text/plain"> Approve this claim following corporate guideline #4711.0815/7 ... </htd:description>
+
+            </htd:presentationElements>
+
+  <htd:deadlines>
+    <htd:startDeadline>
+      <htd:for>PT5S</htd:for>
+      <htd:escalation name="reassignTask3">
+        <htd:reassignment>
+          <htd:potentialOwners>
+            <htd:from>
+              <htd:literal>
+                <htd:organizationalEntity>
+                  <htd:users>
+                    <htd:user>user3</htd:user>
+                  </htd:users>
+                </htd:organizationalEntity>
+
+              </htd:literal>
+            </htd:from>
+          </htd:potentialOwners>
+        </htd:reassignment>
+      </htd:escalation>
+    </htd:startDeadline>
+    <htd:completionDeadline>
+      <htd:for>PT10S</htd:for>
+      <htd:escalation name="reassignTask3Completion">
+        <htd:reassignment>
+          <htd:potentialOwners>
+            <htd:from>
+              <htd:literal>
+                <htd:organizationalEntity>
+                  <htd:users>
+                    <htd:user>user4</htd:user>
+                  </htd:users>
+                </htd:organizationalEntity>
+              </htd:literal>
+            </htd:from>
+          </htd:potentialOwners>
+        </htd:reassignment>
+      </htd:escalation>
+    </htd:completionDeadline>
+  </htd:deadlines>
+        </htd:task>    
+    </htd:tasks>
+    
+    <htd:notifications>
+      <htd:notification name="Notify2">
+        <htd:interface portType="tns:ClaimApprovalReminderPT" operation="notify"></htd:interface>
+        <htd:peopleAssignments>
+          <htd:potentialOwners>
+            <htd:from>
+              <htd:literal>
+                <htd:organizationalEntity>
+                  <htd:users>
+                    <htd:user>user5</htd:user>
+                  </htd:users>
+                </htd:organizationalEntity>
+              </htd:literal>
+            </htd:from>
+          </htd:potentialOwners>
+        </htd:peopleAssignments>
+        <htd:presentationElements>
+          <htd:name>Notify2Name</htd:name>
+          <htd:subject>Name2Subject</htd:subject>
+        </htd:presentationElements>
+      </htd:notification>
+    </htd:notifications>
+        
+</htd:humanInteractions>



Mime
View raw message