summaryrefslogtreecommitdiffstats
path: root/sandbox/dougsleite/guardian-model/src
diff options
context:
space:
mode:
authordougsleite <dougsleite@13f79535-47bb-0310-9956-ffa450edef68>2009-06-02 18:01:46 +0000
committerdougsleite <dougsleite@13f79535-47bb-0310-9956-ffa450edef68>2009-06-02 18:01:46 +0000
commit26a0b619df3a85a84aadd780305a80dc495ef6e1 (patch)
treecc8f43c9af5f01cfdbc01543c11b91c87ad7b54d /sandbox/dougsleite/guardian-model/src
parentdc597c10f1ef39ba5513a7131f809ca9a3d3b6a4 (diff)
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@781105 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'sandbox/dougsleite/guardian-model/src')
-rw-r--r--sandbox/dougsleite/guardian-model/src/main/resources/recoveryrules.xml56
1 files changed, 56 insertions, 0 deletions
diff --git a/sandbox/dougsleite/guardian-model/src/main/resources/recoveryrules.xml b/sandbox/dougsleite/guardian-model/src/main/resources/recoveryrules.xml
new file mode 100644
index 0000000000..b0db8cbd9a
--- /dev/null
+++ b/sandbox/dougsleite/guardian-model/src/main/resources/recoveryrules.xml
@@ -0,0 +1,56 @@
+<?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 (thea
+ * "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.
+-->
+
+<recovery_rules>
+
+ <rule name="Rule1" signaled_exception="org.apache.tuscany.sca.guardian.JoinException">
+
+ <participant match="SIGNALER">
+ <throw_exception class="org.apache.tuscany.sca.guardian.itests.PrimaryExistsException" target_context="MAIN" min_participant_joined="2"/>
+ </participant>
+
+ <participant match="!SIGNALER">
+ <throw_exception class="org.apache.tuscany.sca.guardian.itests.BackupJoinedException" target_context="PRIMARY" min_participant_joined="2"/>
+ </participant>
+ </rule>
+
+ <rule name="Rule2" signaled_exception="org.apache.tuscany.sca.guardian.itests.PrimaryFailedException">
+
+ <participant match="*.PRIMARY">
+ <throw_exception class="org.apache.tuscany.sca.guardian.itests.PrimaryFailedException" target_context="INIT_CONTEXT"/>
+ </participant>
+
+ <participant match="*.BACKUP">
+ <throw_exception class="org.apache.tuscany.sca.guardian.itests.PrimaryFailedException" target_context="MAIN"/>
+ </participant>
+ </rule>
+
+ <rule name="Rule3" signaled_exception="org.apache.tuscany.sca.guardian.itests.BackupFailedException">
+
+ <participant match="*.PRIMARY">
+ <throw_exception class="org.apache.tuscany.sca.guardian.itests.BackupFailedException" target_context="PRIMARY"/>
+ </participant>
+
+ <participant match="*.BACKUP">
+ <throw_exception class="org.apache.tuscany.sca.guardian.itests.BackupFailedException" target_context="INIT_CONTEXT"/>
+ </participant>
+ </rule>
+
+</recovery_rules>