use of com.arjuna.mw.wsas.UserActivity in project narayana by jbosstm.
the class StartEndTest method testStartEnd.
@Test
public void testStartEnd() throws Exception {
UserActivity ua = UserActivityFactory.userActivity();
ua.start("dummy");
ua.end();
}
use of com.arjuna.mw.wsas.UserActivity in project narayana by jbosstm.
the class NestedActivityTest method testNestedActivity.
@Test
public void testNestedActivity() throws Exception {
UserActivity ua = UserActivityFactory.userActivity();
try {
ua.start("dummy");
System.out.println("Started: " + ua.activityName());
ua.start("dummy");
String nested = ua.activityName();
System.out.println("Started: " + nested);
System.out.println("\nEnding: " + nested);
ua.end();
String parent = ua.activityName();
System.out.println("\nCurrent: " + parent);
System.out.println("\nEnding: " + parent);
ua.end();
try {
if (ua.activityName() != null) {
fail("activity name should be null but is " + ua.activityName());
}
} catch (NoActivityException ex) {
// ok if we get here
}
System.out.println("\nEnded.");
} catch (Exception ex) {
WSASTestUtils.cleanup(ua);
throw ex;
}
}
use of com.arjuna.mw.wsas.UserActivity in project narayana by jbosstm.
the class ResumeTest method testResume.
@Test
public void testResume() throws Exception {
UserActivity ua = UserActivityFactory.userActivity();
try {
GlobalId ac1 = null;
GlobalId ac2 = null;
ua.start("dummy");
ac1 = ua.activityId();
System.out.println("Started: " + ac1);
ua.start("dummy");
ac2 = ua.activityId();
System.out.println("\nStarted: " + ac2);
ActivityHierarchy ctx = ua.suspend();
System.out.println("\nSuspended: " + ctx);
if (ua.currentActivity() != null) {
fail("Current activity shoudl be null " + ua.currentActivity());
}
ua.resume(ctx);
if (!ac2.equals(ua.activityId())) {
fail("Current activity id " + ua.activityId() + " should equal " + ac2);
}
ua.end();
if (!ac1.equals(ua.activityId())) {
fail("Current activity id " + ua.activityId() + " should equal " + ac1);
}
} finally {
WSASTestUtils.cleanup(ua);
}
}
use of com.arjuna.mw.wsas.UserActivity in project narayana by jbosstm.
the class TimeoutTest method testTimeout.
@Test
public void testTimeout() throws Exception {
UserActivity ua = UserActivityFactory.userActivity();
int timeout = ua.getTimeout();
try {
ua.setTimeout(1);
ua.start("dummy");
Thread.currentThread();
Thread.sleep(2000);
if (!(ua.status() instanceof Completed)) {
ua.end();
fail("Activity status should be Completed " + ua.status());
}
if (!(ua.getCompletionStatus() instanceof Failure)) {
fail("Activity completion status should be Failure " + ua.getCompletionStatus());
}
System.out.println("Activity status: " + ua.status());
} finally {
ua.setTimeout(timeout);
WSASTestUtils.cleanup(ua);
}
}
use of com.arjuna.mw.wsas.UserActivity in project narayana by jbosstm.
the class Context2Test method testContext2.
@Test
public void testContext2() throws Exception {
UserActivity ua = UserActivityFactory.userActivity();
DemoHLS demoHLS = new DemoHLS();
// this constructor means it will not fail
FailureHLS failureHLS = new FailureHLS();
HLS[] currentHLS = ActivityManagerFactory.activityManager().allHighLevelServices();
for (HLS hls : currentHLS) {
ActivityManagerFactory.activityManager().removeHLS(hls);
}
try {
ActivityManagerFactory.activityManager().addHLS(demoHLS);
ActivityManagerFactory.activityManager().addHLS(failureHLS);
DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder docBuilder = docFactory.newDocumentBuilder();
org.w3c.dom.Document doc = docBuilder.newDocument();
org.w3c.dom.Element root = doc.createElement("Context2-test");
doc.appendChild(root);
String demoServiceType = demoHLS.identity();
String failureServiceType = failureHLS.identity();
ua.start(demoServiceType);
System.out.println("Started: " + ua.activityName());
ua.start(failureServiceType);
System.out.println("Started: " + ua.activityName() + "\n");
String currentServiceType = ua.serviceType();
if (currentServiceType != failureServiceType) {
fail("invalid service type for current activity");
}
ContextManager contextManager = new ContextManager();
Context demoServiceContext;
Context failureServiceContext;
demoServiceContext = contextManager.context(demoServiceType);
failureServiceContext = contextManager.context(failureServiceType);
if (failureServiceContext == null) {
fail("Failure context not found");
} else if (demoServiceContext != null) {
fail("Found multiple contexts");
}
if (!(failureServiceContext instanceof DemoSOAPContextImple)) {
fail("Failure context not found");
}
((SOAPContext) failureServiceContext).serialiseToElement(root);
System.out.println("Faiure Context is " + root.getTextContent());
ua.end();
System.out.println("\nFinished child activity.\n");
currentServiceType = ua.serviceType();
if (currentServiceType != demoServiceType) {
fail("invalid service type for current activity");
}
demoServiceContext = contextManager.context(demoServiceType);
failureServiceContext = contextManager.context(failureServiceType);
if (demoServiceContext == null) {
fail("Demo context not found");
} else if (failureServiceContext != null) {
fail("Found multiple contexts");
}
if (!(demoServiceContext instanceof DemoSOAPContextImple)) {
fail("Demo context not found");
}
((SOAPContext) demoServiceContext).serialiseToElement(root);
System.out.println("Demo Context is " + root.getTextContent());
ua.end();
System.out.println("\nFinished parent activity.\n");
} catch (Exception ex) {
WSASTestUtils.cleanup(ua);
throw ex;
} finally {
try {
for (HLS hls : currentHLS) {
ActivityManagerFactory.activityManager().addHLS(hls);
}
} catch (Exception ex) {
// ignore this
}
try {
if (demoHLS != null) {
ActivityManagerFactory.activityManager().removeHLS(demoHLS);
}
} catch (Exception ex) {
// ignore this
}
try {
if (failureHLS != null) {
ActivityManagerFactory.activityManager().removeHLS(failureHLS);
}
} catch (Exception ex) {
// ignore this
}
}
}
Aggregations