diff options
Diffstat (limited to 'sandbox/dougsleite/guardian-model/src/main/resources')
5 files changed, 255 insertions, 8 deletions
diff --git a/sandbox/dougsleite/guardian-model/src/main/resources/primaryNbackups.composite b/sandbox/dougsleite/guardian-model/src/main/resources/primaryNbackups.composite new file mode 100644 index 0000000000..ecb12079f5 --- /dev/null +++ b/sandbox/dougsleite/guardian-model/src/main/resources/primaryNbackups.composite @@ -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 (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. +--> +<composite xmlns="http://www.osoa.org/xmlns/sca/1.0" + xmlns:t="http://tuscany.apache.org/xmlns/sca/1.0" + targetNamespace="http://serverbackup" + name="serverbackup"> + + <component name="Participant1"> + <implementation.java class="org.apache.tuscany.sca.guardian.itests.primaryBackup.common.NodeImpl"/> + <reference name="guardian_member" target="GuardianMember1"/> + <reference name="nodes" target="Participant2 Participant3 Participant4"/> + </component> + + <component name="Participant2"> + <implementation.java class="org.apache.tuscany.sca.guardian.itests.primaryBackup.common.NodeImpl"/> + <reference name="guardian_member" target="GuardianMember2"/> + <reference name="nodes" target="Participant1 Participant3 Participant4"/> + </component> + + <component name="Participant3"> + <implementation.java class="org.apache.tuscany.sca.guardian.itests.primaryBackup.common.NodeImpl"/> + <reference name="guardian_member" target="GuardianMember3"/> + <reference name="nodes" target="Participant1 Participant2 Participant4"/> + </component> + + <component name="Participant4"> + <implementation.java class="org.apache.tuscany.sca.guardian.itests.primaryBackup.common.NodeImpl"/> + <reference name="guardian_member" target="GuardianMember4"/> + <reference name="nodes" target="Participant1 Participant2 Participant3"/> + </component> + + <component name="GuardianMember1"> + <implementation.java class="org.apache.tuscany.sca.guardian.GuardianMemberImpl"/> + <reference name="guardian_group" target="GuardianGroup"/> + </component> + + <component name="GuardianMember2"> + <implementation.java class="org.apache.tuscany.sca.guardian.GuardianMemberImpl"/> + <reference name="guardian_group" target="GuardianGroup"/> + </component> + + <component name="GuardianMember3"> + <implementation.java class="org.apache.tuscany.sca.guardian.GuardianMemberImpl"/> + <reference name="guardian_group" target="GuardianGroup"/> + </component> + + <component name="GuardianMember4"> + <implementation.java class="org.apache.tuscany.sca.guardian.GuardianMemberImpl"/> + <reference name="guardian_group" target="GuardianGroup"/> + </component> + + <component name="GuardianGroup"> + <implementation.java class="org.apache.tuscany.sca.guardian.GuardianGroupImpl"/> + <property name="recovery_rules">src/main/resources/recoveryrules_nbackpus.xml</property> + </component> + +</composite> diff --git a/sandbox/dougsleite/guardian-model/src/main/resources/primarybackup-ws.composite b/sandbox/dougsleite/guardian-model/src/main/resources/primarybackup-ws.composite new file mode 100644 index 0000000000..3de5d87fa2 --- /dev/null +++ b/sandbox/dougsleite/guardian-model/src/main/resources/primarybackup-ws.composite @@ -0,0 +1,63 @@ +<?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. +--> +<composite xmlns="http://www.osoa.org/xmlns/sca/1.0" + xmlns:t="http://tuscany.apache.org/xmlns/sca/1.0" + targetNamespace="http://serverbackup" + name="serverbackup"> +<!-- + <component name="Participant1"> + <implementation.java class="org.apache.tuscany.sca.guardian.itests.NodeImpl"/> + <reference name="guardian_member" target="GuardianMember1"/> + <reference name="node" target="Participant2"/> + </component> + + <component name="Participant2"> + <implementation.java class="org.apache.tuscany.sca.guardian.itests.NodeImpl"/> + <reference name="guardian_member" target="GuardianMember2"/> + <reference name="node" target="Participant1"/> + </component> + + <component name="GuardianMember1"> + <implementation.java class="org.apache.tuscany.sca.guardian.GuardianMemberImpl"/> + <reference name="guardian_group"> + <interface.java interface="org.apache.tuscany.sca.guardian.GuardianGroup"/> + <binding.ws uri="http://localhost:8085/GuardianGroup" requires="MTOM"/> + </reference> + </component> + + <component name="GuardianMember2"> + <implementation.java class="org.apache.tuscany.sca.guardian.GuardianMemberImpl"/> + <reference name="guardian_group"> + <interface.java interface="org.apache.tuscany.sca.guardian.GuardianGroup"/> + <binding.ws uri="http://localhost:8085/GuardianGroup" requires="MTOM"/> + </reference> + </component> +--> + + <component name="GuardianGroupComponent"> + <implementation.java class="org.apache.tuscany.sca.guardian.GuardianGroupImpl"/> + <property name="recovery_rules">src/main/resources/recoveryrules.xml</property> + <service name="GuardianGroup"> + <interface.java interface="org.apache.tuscany.sca.guardian.GuardianGroup"/> + <binding.ws uri="http://localhost:8085/GuardianGroup" requires="MTOM"/> + </service> + </component> + +</composite> diff --git a/sandbox/dougsleite/guardian-model/src/main/resources/primarybackup.composite b/sandbox/dougsleite/guardian-model/src/main/resources/primarybackup.composite new file mode 100644 index 0000000000..9160a070c8 --- /dev/null +++ b/sandbox/dougsleite/guardian-model/src/main/resources/primarybackup.composite @@ -0,0 +1,52 @@ +<?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. +--> +<composite xmlns="http://www.osoa.org/xmlns/sca/1.0" + xmlns:t="http://tuscany.apache.org/xmlns/sca/1.0" + targetNamespace="http://primarybackup" + name="primarybackup"> + + <component name="Participant1"> + <implementation.java class="org.apache.tuscany.sca.guardian.itests.primaryBackup.common.NodeImpl"/> + <reference name="guardian_member" target="GuardianMember1"/> + <reference name="nodes" target="Participant2"/> + </component> + + <component name="Participant2"> + <implementation.java class="org.apache.tuscany.sca.guardian.itests.primaryBackup.common.NodeImpl"/> + <reference name="guardian_member" target="GuardianMember2"/> + <reference name="nodes" target="Participant1"/> + </component> + + <component name="GuardianMember1"> + <implementation.java class="org.apache.tuscany.sca.guardian.GuardianMemberImpl"/> + <reference name="guardian_group" target="GuardianGroup"/> + </component> + + <component name="GuardianMember2"> + <implementation.java class="org.apache.tuscany.sca.guardian.GuardianMemberImpl"/> + <reference name="guardian_group" target="GuardianGroup"/> + </component> + + <component name="GuardianGroup"> + <implementation.java class="org.apache.tuscany.sca.guardian.GuardianGroupImpl"/> + <property name="recovery_rules">src/main/resources/recoveryrules.xml</property> + </component> + +</composite> diff --git a/sandbox/dougsleite/guardian-model/src/main/resources/recoveryrules.xml b/sandbox/dougsleite/guardian-model/src/main/resources/recoveryrules.xml index b0db8cbd9a..5df6a321e6 100644 --- a/sandbox/dougsleite/guardian-model/src/main/resources/recoveryrules.xml +++ b/sandbox/dougsleite/guardian-model/src/main/resources/recoveryrules.xml @@ -23,33 +23,33 @@ <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"/> + <throw_exception class="org.apache.tuscany.sca.guardian.itests.primaryBackup.common.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"/> + <throw_exception class="org.apache.tuscany.sca.guardian.itests.primaryBackup.common.BackupJoinedException" target_context="PRIMARY" min_participant_joined="2"/> </participant> </rule> - <rule name="Rule2" signaled_exception="org.apache.tuscany.sca.guardian.itests.PrimaryFailedException"> + <rule name="Rule2" signaled_exception="org.apache.tuscany.sca.guardian.itests.primaryBackup.common.PrimaryFailedException"> <participant match="*.PRIMARY"> - <throw_exception class="org.apache.tuscany.sca.guardian.itests.PrimaryFailedException" target_context="INIT_CONTEXT"/> + <throw_exception class="org.apache.tuscany.sca.guardian.itests.primaryBackup.common.PrimaryFailedException" target_context="INIT_CONTEXT"/> </participant> <participant match="*.BACKUP"> - <throw_exception class="org.apache.tuscany.sca.guardian.itests.PrimaryFailedException" target_context="MAIN"/> + <throw_exception class="org.apache.tuscany.sca.guardian.itests.primaryBackup.common.PrimaryFailedException" target_context="MAIN"/> </participant> </rule> - <rule name="Rule3" signaled_exception="org.apache.tuscany.sca.guardian.itests.BackupFailedException"> + <rule name="Rule3" signaled_exception="org.apache.tuscany.sca.guardian.itests.primaryBackup.common.BackupFailedException"> <participant match="*.PRIMARY"> - <throw_exception class="org.apache.tuscany.sca.guardian.itests.BackupFailedException" target_context="PRIMARY"/> + <throw_exception class="org.apache.tuscany.sca.guardian.itests.primaryBackup.common.BackupFailedException" target_context="PRIMARY"/> </participant> <participant match="*.BACKUP"> - <throw_exception class="org.apache.tuscany.sca.guardian.itests.BackupFailedException" target_context="INIT_CONTEXT"/> + <throw_exception class="org.apache.tuscany.sca.guardian.itests.primaryBackup.common.BackupFailedException" target_context="INIT_CONTEXT"/> </participant> </rule> diff --git a/sandbox/dougsleite/guardian-model/src/main/resources/recoveryrules_nbackpus.xml b/sandbox/dougsleite/guardian-model/src/main/resources/recoveryrules_nbackpus.xml new file mode 100644 index 0000000000..468fe5fc3a --- /dev/null +++ b/sandbox/dougsleite/guardian-model/src/main/resources/recoveryrules_nbackpus.xml @@ -0,0 +1,58 @@ +<?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="*.PRIMARY"> + <throw_exception class="org.apache.tuscany.sca.guardian.itests.primaryBackup.common.BackupJoinedException" target_context="PRIMARY"/> + </participant> + + <participant match="SIGNALER"> + <throw_exception class="org.apache.tuscany.sca.guardian.itests.primaryBackup.common.PrimaryExistsException" target_context="MAIN" min_participant_joined="2"/> + </participant> + </rule> + + <rule name="Rule2" signaled_exception="org.apache.tuscany.sca.guardian.itests.primaryBackup.common.PrimaryFailedException"> + + <participant match="*.PRIMARY"> + <throw_exception class="org.apache.tuscany.sca.guardian.itests.primaryBackup.common.PrimaryFailedException" target_context="INIT_CONTEXT"/> + </participant> + + <participant match="*.BACKUP"> + <throw_exception class="org.apache.tuscany.sca.guardian.itests.primaryBackup.common.PrimaryFailedException" target_context="MAIN"> + <affected_participants>FIRST</affected_participants> + </throw_exception> + </participant> + </rule> + + <rule name="Rule3" signaled_exception="org.apache.tuscany.sca.guardian.itests.primaryBackup.common.BackupFailedException"> + + <participant match="*.PRIMARY"> + <throw_exception class="org.apache.tuscany.sca.guardian.itests.primaryBackup.common.BackupFailedException" target_context="PRIMARY"/> + </participant> + + <participant match="SIGNALER"> + <throw_exception class="org.apache.tuscany.sca.guardian.itests.primaryBackup.common.BackupFailedException" target_context="INIT_CONTEXT"/> + </participant> + </rule> + +</recovery_rules> |