[jboss-svn-commits] JBL Code SVN: r26781 - in labs/jbosstm/workspace/resttx: demo/src/main/java/org/jboss/jbossts/rts/demo/client and 1 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Fri May 29 13:08:52 EDT 2009
Author: mmusgrov
Date: 2009-05-29 13:08:52 -0400 (Fri, 29 May 2009)
New Revision: 26781
Modified:
labs/jbosstm/workspace/resttx/demo/src/main/java/org/jboss/jbossts/rts/demo/client/RESTDemoApp.java
labs/jbosstm/workspace/resttx/readme.txt
labs/jbosstm/workspace/resttx/tx/src/main/java/org/jboss/jbossts/rts/resource/RESTRecord.java
Log:
Add extra fault definitions
Modified: labs/jbosstm/workspace/resttx/demo/src/main/java/org/jboss/jbossts/rts/demo/client/RESTDemoApp.java
===================================================================
--- labs/jbosstm/workspace/resttx/demo/src/main/java/org/jboss/jbossts/rts/demo/client/RESTDemoApp.java 2009-05-29 16:57:52 UTC (rev 26780)
+++ labs/jbosstm/workspace/resttx/demo/src/main/java/org/jboss/jbossts/rts/demo/client/RESTDemoApp.java 2009-05-29 17:08:52 UTC (rev 26781)
@@ -65,7 +65,7 @@
private static final String RESTAURANT_URL = "http://localhost:8001/";
private static final String TAXI_URL = "http://localhost:8002/";
- private static final String[] faultNames = {"none", "abort_halt", "prepare_halt",
+ private static final String[] faultNames = {"none", "abort_halt", "abort_suspend", "prepare_halt", "prepare_suspend",
"commit_halt", "commit_suspend", "h_commit", "h_rollback", "h_hazard", "h_mixed"};
private StatusPanel statusPanel = new StatusPanel(0, "", 0, false);
Modified: labs/jbosstm/workspace/resttx/readme.txt
===================================================================
--- labs/jbosstm/workspace/resttx/readme.txt 2009-05-29 16:57:52 UTC (rev 26780)
+++ labs/jbosstm/workspace/resttx/readme.txt 2009-05-29 17:08:52 UTC (rev 26781)
@@ -1,4 +1,6 @@
-There are some extra notes in the docs directory.
+There are some extra notes in the docs directory including the protocol
+specificaton.
+
mvn clean install # build everything with tests
mvn clean install -Dmaven.test.skip # build everything without tests
@@ -8,3 +10,6 @@
To run the demo:
cd demo; cat go
where the script demo/go shows what processes to run for the demo.
+
+To turn up the logging:
+ edit webservice/src/test/resources/log4j.xml
Modified: labs/jbosstm/workspace/resttx/tx/src/main/java/org/jboss/jbossts/rts/resource/RESTRecord.java
===================================================================
--- labs/jbosstm/workspace/resttx/tx/src/main/java/org/jboss/jbossts/rts/resource/RESTRecord.java 2009-05-29 16:57:52 UTC (rev 26780)
+++ labs/jbosstm/workspace/resttx/tx/src/main/java/org/jboss/jbossts/rts/resource/RESTRecord.java 2009-05-29 17:08:52 UTC (rev 26781)
@@ -108,15 +108,38 @@
return TwoPhaseOutcome.PREPARE_OK; // do nothing
}
+ private void check_suspend(Fault f)
+ {
+ if (fault.equals(f))
+ {
+ try
+ {
+ log.info(f + ": for 10 seconds");
+ Thread.sleep(10000);
+ }
+ catch (InterruptedException e)
+ {
+ e.printStackTrace();
+ }
+ }
+ }
+
+ private void check_halt(Fault f)
+ {
+ if (fault.equals(f))
+ {
+ log.info(f + ": halt VM");
+ Runtime.getRuntime().halt(1);
+ }
+ }
+
public int topLevelPrepare()
{
log.debug("prepare " + url);
- if (fault.equals(Fault.prepare_halt)) {
- log.info("prepare: halt VM");
- Runtime.getRuntime().halt(1);
- }
-
+ check_halt(Fault.prepare_halt);
+ check_suspend(Fault.prepare_suspend);
+
if (fault.equals(Fault.h_hazard))
return TwoPhaseOutcome.HEURISTIC_HAZARD;
@@ -144,10 +167,8 @@
{
log.debug("abort " + url);
- if (fault.equals(Fault.abort_halt)) {
- log.info("abort: halt VM");
- Runtime.getRuntime().halt(1);
- }
+ check_halt(Fault.abort_halt);
+ check_suspend(Fault.abort_suspend);
if (url == null || txId == null)
return TwoPhaseOutcome.FINISH_ERROR;
@@ -192,22 +213,9 @@
public int topLevelOnePhaseCommit()
{
- if (fault.equals(Fault.commit_halt)) {
- log.info("commit: halt VM");
- Runtime.getRuntime().halt(1);
- }
+ check_halt(Fault.commit_halt);
+ check_suspend(Fault.commit_suspend);
- if (fault.equals(Fault.commit_suspend)) {
- try
- {
- Thread.sleep(10000);
- }
- catch (InterruptedException e)
- {
- e.printStackTrace();
- }
- }
-
if (txId == null)
return TwoPhaseOutcome.FINISH_ERROR;
@@ -365,7 +373,11 @@
return false;
}
- enum Fault {abort_halt, prepare_halt, commit_halt, commit_suspend, h_commit, h_rollback, h_hazard, h_mixed, none}
+ enum Fault {
+ abort_halt, abort_suspend, prepare_halt,
+ prepare_suspend, commit_halt, commit_suspend,
+ h_commit, h_rollback, h_hazard, h_mixed, none
+ }
Fault fault = Fault.none;
public void setFault(String name)
More information about the jboss-svn-commits
mailing list