diff options
author | dougsleite <dougsleite@13f79535-47bb-0310-9956-ffa450edef68> | 2009-09-28 14:37:58 +0000 |
---|---|---|
committer | dougsleite <dougsleite@13f79535-47bb-0310-9956-ffa450edef68> | 2009-09-28 14:37:58 +0000 |
commit | f4f96f8c8ec04e4c1709d3037e57589145be12fa (patch) | |
tree | a8bf81061fdc2af53fae50eebf063bd1ecfdc854 /sandbox/dougsleite/guardian-model/src/main/java/org | |
parent | 215c005bde88752999978adce56b09d2a90a13b7 (diff) |
- Changing the guardian-model, policy-recoveryrules, policy-resolutiontrees to a new module: implementation-guardian;
- The new module creates a new kind of implementation (implementation.guardian)
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@819561 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to '')
18 files changed, 77 insertions, 78 deletions
diff --git a/sandbox/dougsleite/guardian-model/src/main/java/org/apache/tuscany/sca/guardian/BlockingInterface.java b/sandbox/dougsleite/implementation-guardian/src/main/java/org/apache/tuscany/sca/implementation/guardian/BlockingInterface.java index 848c4a874d..1bb1066435 100644 --- a/sandbox/dougsleite/guardian-model/src/main/java/org/apache/tuscany/sca/guardian/BlockingInterface.java +++ b/sandbox/dougsleite/implementation-guardian/src/main/java/org/apache/tuscany/sca/implementation/guardian/BlockingInterface.java @@ -16,8 +16,9 @@ * specific language governing permissions and limitations * under the License. */ -package org.apache.tuscany.sca.guardian; +package org.apache.tuscany.sca.implementation.guardian; +@Deprecated public interface BlockingInterface { //@OneWay diff --git a/sandbox/dougsleite/guardian-model/src/main/java/org/apache/tuscany/sca/guardian/GuardianGroup.java b/sandbox/dougsleite/implementation-guardian/src/main/java/org/apache/tuscany/sca/implementation/guardian/GuardianGroup.java index 5119390a14..2775699843 100644 --- a/sandbox/dougsleite/guardian-model/src/main/java/org/apache/tuscany/sca/guardian/GuardianGroup.java +++ b/sandbox/dougsleite/implementation-guardian/src/main/java/org/apache/tuscany/sca/implementation/guardian/GuardianGroup.java @@ -16,11 +16,8 @@ * specific language governing permissions and limitations * under the License. */ -package org.apache.tuscany.sca.guardian; +package org.apache.tuscany.sca.implementation.guardian; -import org.osoa.sca.annotations.Remotable; - -//@Remotable public interface GuardianGroup extends GuardianPrimitives { public static int NORMAL_PARTICIPANT_STATE = 0; diff --git a/sandbox/dougsleite/guardian-model/src/main/java/org/apache/tuscany/sca/guardian/GuardianMember.java b/sandbox/dougsleite/implementation-guardian/src/main/java/org/apache/tuscany/sca/implementation/guardian/GuardianMember.java index 48dad22bff..b82bf082b1 100644 --- a/sandbox/dougsleite/guardian-model/src/main/java/org/apache/tuscany/sca/guardian/GuardianMember.java +++ b/sandbox/dougsleite/implementation-guardian/src/main/java/org/apache/tuscany/sca/implementation/guardian/GuardianMember.java @@ -16,19 +16,16 @@ * specific language governing permissions and limitations * under the License. */ -package org.apache.tuscany.sca.guardian; +package org.apache.tuscany.sca.implementation.guardian; + +import org.apache.tuscany.sca.implementation.guardian.common.Context; +import org.apache.tuscany.sca.implementation.guardian.common.GlobalException; public interface GuardianMember extends GuardianPrimitives { public void addException(GlobalException ex); - public void setService(BlockingInterface service); - - public void removeService(); - - public Context getCurrentContext(); - - public BlockingInterface getService(); + public Context getCurrentContext(); public String getParticipantIdentifier(); diff --git a/sandbox/dougsleite/guardian-model/src/main/java/org/apache/tuscany/sca/guardian/GuardianPrimitives.java b/sandbox/dougsleite/implementation-guardian/src/main/java/org/apache/tuscany/sca/implementation/guardian/GuardianPrimitives.java index 9ddd22a2fd..c50e855d30 100644 --- a/sandbox/dougsleite/guardian-model/src/main/java/org/apache/tuscany/sca/guardian/GuardianPrimitives.java +++ b/sandbox/dougsleite/implementation-guardian/src/main/java/org/apache/tuscany/sca/implementation/guardian/GuardianPrimitives.java @@ -16,9 +16,12 @@ * specific language governing permissions and limitations * under the License. */ -package org.apache.tuscany.sca.guardian; +package org.apache.tuscany.sca.implementation.guardian; import java.util.List; +import org.apache.tuscany.sca.implementation.guardian.common.Context; +import org.apache.tuscany.sca.implementation.guardian.common.GlobalException; +import org.apache.tuscany.sca.implementation.guardian.common.GlobalExceptionInterface; //@Remotable public interface GuardianPrimitives { diff --git a/sandbox/dougsleite/guardian-model/src/main/java/org/apache/tuscany/sca/guardian/ConcurrentExceptionOcurrenceException.java b/sandbox/dougsleite/implementation-guardian/src/main/java/org/apache/tuscany/sca/implementation/guardian/common/ConcurrentExceptionOcurrenceException.java index 30584f2d78..4bfe1320b4 100644 --- a/sandbox/dougsleite/guardian-model/src/main/java/org/apache/tuscany/sca/guardian/ConcurrentExceptionOcurrenceException.java +++ b/sandbox/dougsleite/implementation-guardian/src/main/java/org/apache/tuscany/sca/implementation/guardian/common/ConcurrentExceptionOcurrenceException.java @@ -16,9 +16,9 @@ * specific language governing permissions and limitations * under the License. */ -package org.apache.tuscany.sca.guardian; +package org.apache.tuscany.sca.implementation.guardian.common; -class ConcurrentExceptionOcurrenceException extends Exception { +public class ConcurrentExceptionOcurrenceException extends Exception { public ConcurrentExceptionOcurrenceException() { super(); diff --git a/sandbox/dougsleite/guardian-model/src/main/java/org/apache/tuscany/sca/guardian/Constants.java b/sandbox/dougsleite/implementation-guardian/src/main/java/org/apache/tuscany/sca/implementation/guardian/common/Constants.java index 9fa4db4f78..cf5d56179d 100644 --- a/sandbox/dougsleite/guardian-model/src/main/java/org/apache/tuscany/sca/guardian/Constants.java +++ b/sandbox/dougsleite/implementation-guardian/src/main/java/org/apache/tuscany/sca/implementation/guardian/common/Constants.java @@ -16,7 +16,7 @@ * specific language governing permissions and limitations * under the License. */ -package org.apache.tuscany.sca.guardian; +package org.apache.tuscany.sca.implementation.guardian.common; import javax.xml.namespace.QName; @@ -78,4 +78,5 @@ public interface Constants { String EXCEPTION = "exception"; QName EXCEPTION_QNAME = new QName(org.apache.tuscany.sca.assembly.xml.Constants.SCA10_TUSCANY_NS, EXCEPTION); + } diff --git a/sandbox/dougsleite/guardian-model/src/main/java/org/apache/tuscany/sca/guardian/Context.java b/sandbox/dougsleite/implementation-guardian/src/main/java/org/apache/tuscany/sca/implementation/guardian/common/Context.java index 3ac5d63a42..95c6f3bed6 100644 --- a/sandbox/dougsleite/guardian-model/src/main/java/org/apache/tuscany/sca/guardian/Context.java +++ b/sandbox/dougsleite/implementation-guardian/src/main/java/org/apache/tuscany/sca/implementation/guardian/common/Context.java @@ -16,7 +16,7 @@ * specific language governing permissions and limitations * under the License. */ -package org.apache.tuscany.sca.guardian; +package org.apache.tuscany.sca.implementation.guardian.common; import java.util.LinkedList; import java.util.List; diff --git a/sandbox/dougsleite/guardian-model/src/main/java/org/apache/tuscany/sca/guardian/GlobalException.java b/sandbox/dougsleite/implementation-guardian/src/main/java/org/apache/tuscany/sca/implementation/guardian/common/GlobalException.java index b880db6aa1..022fe1a5f8 100644 --- a/sandbox/dougsleite/guardian-model/src/main/java/org/apache/tuscany/sca/guardian/GlobalException.java +++ b/sandbox/dougsleite/implementation-guardian/src/main/java/org/apache/tuscany/sca/implementation/guardian/common/GlobalException.java @@ -16,7 +16,7 @@ * specific language governing permissions and limitations * under the License. */ -package org.apache.tuscany.sca.guardian; +package org.apache.tuscany.sca.implementation.guardian.common; import java.util.LinkedList; import java.util.List; diff --git a/sandbox/dougsleite/guardian-model/src/main/java/org/apache/tuscany/sca/guardian/GlobalExceptionInterface.java b/sandbox/dougsleite/implementation-guardian/src/main/java/org/apache/tuscany/sca/implementation/guardian/common/GlobalExceptionInterface.java index 68a09a9bc8..450d4ae18b 100644 --- a/sandbox/dougsleite/guardian-model/src/main/java/org/apache/tuscany/sca/guardian/GlobalExceptionInterface.java +++ b/sandbox/dougsleite/implementation-guardian/src/main/java/org/apache/tuscany/sca/implementation/guardian/common/GlobalExceptionInterface.java @@ -16,7 +16,7 @@ * specific language governing permissions and limitations * under the License. */ -package org.apache.tuscany.sca.guardian; +package org.apache.tuscany.sca.implementation.guardian.common; import java.util.List; diff --git a/sandbox/dougsleite/guardian-model/src/main/java/org/apache/tuscany/sca/guardian/InvalidNodeException.java b/sandbox/dougsleite/implementation-guardian/src/main/java/org/apache/tuscany/sca/implementation/guardian/common/InvalidNodeException.java index 3df76b0596..ed85661dbf 100644 --- a/sandbox/dougsleite/guardian-model/src/main/java/org/apache/tuscany/sca/guardian/InvalidNodeException.java +++ b/sandbox/dougsleite/implementation-guardian/src/main/java/org/apache/tuscany/sca/implementation/guardian/common/InvalidNodeException.java @@ -16,7 +16,7 @@ * specific language governing permissions and limitations * under the License. */ -package org.apache.tuscany.sca.guardian; +package org.apache.tuscany.sca.implementation.guardian.common; public class InvalidNodeException extends RuntimeException { diff --git a/sandbox/dougsleite/guardian-model/src/main/java/org/apache/tuscany/sca/guardian/InvalidRegularExpression.java b/sandbox/dougsleite/implementation-guardian/src/main/java/org/apache/tuscany/sca/implementation/guardian/common/InvalidRegularExpressionException.java index 30e750941e..99aa027fb8 100644 --- a/sandbox/dougsleite/guardian-model/src/main/java/org/apache/tuscany/sca/guardian/InvalidRegularExpression.java +++ b/sandbox/dougsleite/implementation-guardian/src/main/java/org/apache/tuscany/sca/implementation/guardian/common/InvalidRegularExpressionException.java @@ -16,15 +16,15 @@ * specific language governing permissions and limitations * under the License. */ -package org.apache.tuscany.sca.guardian; +package org.apache.tuscany.sca.implementation.guardian.common; -public class InvalidRegularExpression extends RuntimeException { +public class InvalidRegularExpressionException extends RuntimeException { - public InvalidRegularExpression() { + public InvalidRegularExpressionException() { super(); } - public InvalidRegularExpression(String message) { + public InvalidRegularExpressionException(String message) { super(message); } } diff --git a/sandbox/dougsleite/guardian-model/src/main/java/org/apache/tuscany/sca/guardian/JoinException.java b/sandbox/dougsleite/implementation-guardian/src/main/java/org/apache/tuscany/sca/implementation/guardian/common/JoinException.java index b14ebeac2b..890b8704ee 100644 --- a/sandbox/dougsleite/guardian-model/src/main/java/org/apache/tuscany/sca/guardian/JoinException.java +++ b/sandbox/dougsleite/implementation-guardian/src/main/java/org/apache/tuscany/sca/implementation/guardian/common/JoinException.java @@ -17,9 +17,9 @@ * under the License. */ -package org.apache.tuscany.sca.guardian; +package org.apache.tuscany.sca.implementation.guardian.common; -class JoinException extends GlobalException { +public class JoinException extends GlobalException { public JoinException() { super(); diff --git a/sandbox/dougsleite/guardian-model/src/main/java/org/apache/tuscany/sca/guardian/LeaveException.java b/sandbox/dougsleite/implementation-guardian/src/main/java/org/apache/tuscany/sca/implementation/guardian/common/LeaveException.java index 04e892f4bd..9684de22ad 100644 --- a/sandbox/dougsleite/guardian-model/src/main/java/org/apache/tuscany/sca/guardian/LeaveException.java +++ b/sandbox/dougsleite/implementation-guardian/src/main/java/org/apache/tuscany/sca/implementation/guardian/common/LeaveException.java @@ -16,9 +16,9 @@ * specific language governing permissions and limitations * under the License. */ -package org.apache.tuscany.sca.guardian; +package org.apache.tuscany.sca.implementation.guardian.common; -class LeaveException extends GlobalException { +public class LeaveException extends GlobalException { public LeaveException() { super(); diff --git a/sandbox/dougsleite/guardian-model/src/main/java/org/apache/tuscany/sca/guardian/ResolutionTreeUtils.java b/sandbox/dougsleite/implementation-guardian/src/main/java/org/apache/tuscany/sca/implementation/guardian/common/ResolutionTreeUtils.java index 09dd0673eb..fbf147285e 100644 --- a/sandbox/dougsleite/guardian-model/src/main/java/org/apache/tuscany/sca/guardian/ResolutionTreeUtils.java +++ b/sandbox/dougsleite/implementation-guardian/src/main/java/org/apache/tuscany/sca/implementation/guardian/common/ResolutionTreeUtils.java @@ -16,7 +16,7 @@ * specific language governing permissions and limitations * under the License. */ -package org.apache.tuscany.sca.guardian; +package org.apache.tuscany.sca.implementation.guardian.common; import java.util.Collections; import java.util.Hashtable; diff --git a/sandbox/dougsleite/guardian-model/src/main/java/org/apache/tuscany/sca/guardian/SuspendException.java b/sandbox/dougsleite/implementation-guardian/src/main/java/org/apache/tuscany/sca/implementation/guardian/common/SuspendException.java index b7ede6d530..5ce2f5afd9 100644 --- a/sandbox/dougsleite/guardian-model/src/main/java/org/apache/tuscany/sca/guardian/SuspendException.java +++ b/sandbox/dougsleite/implementation-guardian/src/main/java/org/apache/tuscany/sca/implementation/guardian/common/SuspendException.java @@ -16,9 +16,9 @@ * specific language governing permissions and limitations * under the License. */ -package org.apache.tuscany.sca.guardian; +package org.apache.tuscany.sca.implementation.guardian.common; -class SuspendException extends GlobalException { +public class SuspendException extends GlobalException { public SuspendException() { super(); diff --git a/sandbox/dougsleite/guardian-model/src/main/java/org/apache/tuscany/sca/guardian/UnhandledException.java b/sandbox/dougsleite/implementation-guardian/src/main/java/org/apache/tuscany/sca/implementation/guardian/common/UnhandledException.java index 81e3844280..a8f9cdfad6 100644 --- a/sandbox/dougsleite/guardian-model/src/main/java/org/apache/tuscany/sca/guardian/UnhandledException.java +++ b/sandbox/dougsleite/implementation-guardian/src/main/java/org/apache/tuscany/sca/implementation/guardian/common/UnhandledException.java @@ -16,7 +16,7 @@ * specific language governing permissions and limitations * under the License. */ -package org.apache.tuscany.sca.guardian; +package org.apache.tuscany.sca.implementation.guardian.common; public class UnhandledException extends GlobalException { diff --git a/sandbox/dougsleite/guardian-model/src/main/java/org/apache/tuscany/sca/guardian/GuardianGroupImpl.java b/sandbox/dougsleite/implementation-guardian/src/main/java/org/apache/tuscany/sca/implementation/guardian/impl/GuardianGroupImpl.java index f9fe5c2c59..5a243560e3 100644 --- a/sandbox/dougsleite/guardian-model/src/main/java/org/apache/tuscany/sca/guardian/GuardianGroupImpl.java +++ b/sandbox/dougsleite/implementation-guardian/src/main/java/org/apache/tuscany/sca/implementation/guardian/impl/GuardianGroupImpl.java @@ -16,10 +16,8 @@ * specific language governing permissions and limitations * under the License. */ -package org.apache.tuscany.sca.guardian; +package org.apache.tuscany.sca.implementation.guardian.impl; -import org.apache.tuscany.sca.contribution.service.ContributionReadException; -import org.apache.tuscany.sca.policy.resolutiontrees.ResolutionTreesPolicyProcessor; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.util.Iterator; @@ -33,13 +31,21 @@ import javax.xml.stream.XMLStreamException; import javax.xml.stream.XMLStreamReader; import org.apache.axiom.om.OMAttribute; import org.apache.axiom.om.OMElement; -import org.osoa.sca.annotations.Property; -import org.osoa.sca.annotations.Scope; -import org.osoa.sca.annotations.Service; -import org.apache.tuscany.sca.policy.recoveryrules.RecoveryRulesPolicyProcessor; +import org.apache.tuscany.sca.contribution.service.ContributionReadException; +import org.apache.tuscany.sca.implementation.guardian.common.InvalidRegularExpressionException; +import org.apache.tuscany.sca.implementation.guardian.GuardianGroup; +import org.apache.tuscany.sca.implementation.guardian.GuardianMember; +import org.apache.tuscany.sca.implementation.guardian.common.ConcurrentExceptionOcurrenceException; +import org.apache.tuscany.sca.implementation.guardian.common.Constants; +import org.apache.tuscany.sca.implementation.guardian.common.Context; +import org.apache.tuscany.sca.implementation.guardian.common.GlobalException; +import org.apache.tuscany.sca.implementation.guardian.common.GlobalExceptionInterface; +import org.apache.tuscany.sca.implementation.guardian.common.InvalidNodeException; +import org.apache.tuscany.sca.implementation.guardian.common.ResolutionTreeUtils; +import org.apache.tuscany.sca.implementation.guardian.common.SuspendException; +import org.apache.tuscany.sca.implementation.guardian.xml.RecoveryRulesProcessor; +import org.apache.tuscany.sca.implementation.guardian.xml.ResolutionTreesProcessor; -@Service(GuardianGroup.class) -@Scope("COMPOSITE") public class GuardianGroupImpl implements GuardianGroup { private List<GuardianMember> guardianList; @@ -49,20 +55,22 @@ public class GuardianGroupImpl implements GuardianGroup { private ResolutionTreeUtils resolutionTreeUtils; private Map<String, OMElement> ruleElements; - public GuardianGroupImpl() { + public GuardianGroupImpl(String recoveryRules, String resolutionTrees) { guardianList = new LinkedList<GuardianMember>(); concurrentExList = new LinkedList<GlobalExceptionInterface>(); innerThread = new InnerGuardianGroupThread(); resolutionTreeUtils = new ResolutionTreeUtils(); + + setRecoveryRules(recoveryRules); + setResolutionTree(resolutionTrees); } - @Property(name = "recovery_rules", required = false) - public void setRecoveryRules(String recoveryRules) { + private void setRecoveryRules(String recoveryRules) { try { FileInputStream fileInputStream = new FileInputStream(recoveryRules); XMLStreamReader xmlReader = XMLInputFactory.newInstance().createXMLStreamReader(fileInputStream); - RecoveryRulesPolicyProcessor processor = new RecoveryRulesPolicyProcessor(null, null); + RecoveryRulesProcessor processor = new RecoveryRulesProcessor(); ruleElements = processor.read(xmlReader).getRuleElements(); } catch (ContributionReadException ex) { @@ -74,14 +82,13 @@ public class GuardianGroupImpl implements GuardianGroup { } } - @Property(name = "resolution_tree", required = false) - public void setResolutionTree(String resolutionTree) { + private void setResolutionTree(String resolutionTree) { try { FileInputStream fileInputStream = new FileInputStream(resolutionTree); XMLStreamReader resolutionTreeReader = XMLInputFactory.newInstance().createXMLStreamReader(fileInputStream); - ResolutionTreesPolicyProcessor processor = new ResolutionTreesPolicyProcessor(null, null); + ResolutionTreesProcessor processor = new ResolutionTreesProcessor(); resolutionTreeElements = processor.read(resolutionTreeReader).getResolutionTreeElements(); } catch (ContributionReadException ex) { @@ -98,9 +105,12 @@ public class GuardianGroupImpl implements GuardianGroup { guardianMember.setUniqueParticipantID(guardianList.size() - 1); } + public boolean removeGuardianMember(GuardianMember guardianMember) { + throw new UnsupportedOperationException("Not supported yet."); + } + public void enableContext(Context context) { - System.out.println("Enable Context.. nothing to do!"); - //throw new UnsupportedOperationException("Not supported yet."); + throw new UnsupportedOperationException("Not supported yet."); } public void removeContext() { @@ -132,6 +142,7 @@ public class GuardianGroupImpl implements GuardianGroup { innerThread.setGlobalException(ex); new Thread(innerThread).start(); } + } public boolean propagate(GlobalExceptionInterface ex) { @@ -142,10 +153,6 @@ public class GuardianGroupImpl implements GuardianGroup { throw new UnsupportedOperationException("Not supported yet."); } - public boolean removeGuardianMember(GuardianMember guardianMember) { - return this.guardianList.remove(guardianMember); - } - private class InnerGuardianGroupThread implements Runnable { private boolean isRunning; @@ -485,7 +492,7 @@ public class GuardianGroupImpl implements GuardianGroup { //Invalid regular expression if (splitByComma.length > 2) { - throw new InvalidRegularExpression("The comma ',' operator can only be applied for two expressions"); + throw new InvalidRegularExpressionException("The comma ',' operator can only be applied for two expressions"); } //There is no comma on the regular expression @@ -533,7 +540,7 @@ public class GuardianGroupImpl implements GuardianGroup { //Invalid expression if (index == -1) { - throw new InvalidRegularExpression("The comma ',' requires a SIGNALER or !SIGNALER element in one side of the expression"); + throw new InvalidRegularExpressionException("The comma ',' requires a SIGNALER or !SIGNALER element in one side of the expression"); } String re = createJavaRegularExpression(splitByComma[1 - index]); @@ -570,7 +577,7 @@ public class GuardianGroupImpl implements GuardianGroup { * * Not supported yet: !<Context>, !<Context> || <Context>, !(<Context> || <Context>) */ - private String createJavaRegularExpression(String regularExpression) throws InvalidRegularExpression { + private String createJavaRegularExpression(String regularExpression) throws InvalidRegularExpressionException { StringBuffer re = new StringBuffer(); String[] splitByBar = regularExpression.split("\\|\\|"); @@ -592,7 +599,7 @@ public class GuardianGroupImpl implements GuardianGroup { //Validate the regular expression if (j + 1 != splitByPeriod.length && splitByPeriod[j + 1].equals("*")) { - throw new InvalidRegularExpression(); + throw new InvalidRegularExpressionException(); } //* @@ -634,4 +641,4 @@ public class GuardianGroupImpl implements GuardianGroup { return re.toString(); } } -}
\ No newline at end of file +} diff --git a/sandbox/dougsleite/guardian-model/src/main/java/org/apache/tuscany/sca/guardian/GuardianMemberImpl.java b/sandbox/dougsleite/implementation-guardian/src/main/java/org/apache/tuscany/sca/implementation/guardian/impl/GuardianMemberImpl.java index 893d5fcb1b..80b9321e79 100644 --- a/sandbox/dougsleite/guardian-model/src/main/java/org/apache/tuscany/sca/guardian/GuardianMemberImpl.java +++ b/sandbox/dougsleite/implementation-guardian/src/main/java/org/apache/tuscany/sca/implementation/guardian/impl/GuardianMemberImpl.java @@ -16,7 +16,7 @@ * specific language governing permissions and limitations * under the License. */ -package org.apache.tuscany.sca.guardian; +package org.apache.tuscany.sca.implementation.guardian.impl; import java.util.LinkedList; import java.util.List; @@ -24,10 +24,17 @@ import java.util.Queue; import java.util.Stack; import java.util.logging.Level; import java.util.logging.Logger; +import org.apache.tuscany.sca.implementation.guardian.common.GlobalExceptionInterface; +import org.apache.tuscany.sca.implementation.guardian.GuardianGroup; +import org.apache.tuscany.sca.implementation.guardian.GuardianMember; +import org.apache.tuscany.sca.implementation.guardian.common.Context; +import org.apache.tuscany.sca.implementation.guardian.common.GlobalException; +import org.apache.tuscany.sca.implementation.guardian.common.JoinException; +import org.apache.tuscany.sca.implementation.guardian.common.SuspendException; +import org.osoa.sca.annotations.Destroy; import org.osoa.sca.annotations.Init; import org.osoa.sca.annotations.Reference; import org.osoa.sca.annotations.Scope; -import org.osoa.sca.annotations.Destroy; import org.osoa.sca.annotations.Service; @Service(GuardianMember.class) @@ -36,7 +43,7 @@ public class GuardianMemberImpl implements GuardianMember { private int participantState; private Stack<Context> contextList; - private BlockingInterface service; + private Queue<GlobalException> exceptionQueue; @Reference(name = "guardian_group", required = true) public GuardianGroup guardianGroup; @@ -66,17 +73,10 @@ public class GuardianMemberImpl implements GuardianMember { exceptionQueue.add(ex); } - public void setService(BlockingInterface service) { - this.service = service; - } - public Context getCurrentContext() { return contextList.peek(); } - - public BlockingInterface getService() { - return service; - } + public void enableContext(Context context) { //Update the context list with the related set of exceptions @@ -109,9 +109,6 @@ public class GuardianMemberImpl implements GuardianMember { guardianGroup.gthrow(ex, participantList); exceptionThrown = true; } else { - /*if (service instanceof BlockingInterface && !service.isBlocked()) { - service.block(); - }*/ setParticipantState(GuardianGroup.SUSPENDED_PARTICIPANT_STATE); } } @@ -170,10 +167,6 @@ public class GuardianMemberImpl implements GuardianMember { this.id = id; } - public void removeService() { - this.service = null; - } - public int getParticipantState() { return participantState; } |