Issue 5451: Actions and removal (ots-structs-ftf) Source: University of Newcastle upon Tyne (Dr. Mark Little, m.c.little@ncl.ac.uk) Nature: Uncategorized Issue Severity: Summary: In the Additional Structuring Mechanisms for the OTS, an Action can register interest in more than one SignalSet, i.e., it can be passed to add_action more than once, with a different SignalSet parameter. However, remove_action is not parameterised on the SignalSet, so currently it must remove the Action from all registered SignalSets. We can either add the SignalSet as a parameter to remove_action or add another method, leaving the semantics of remove_action as they are Resolution: close no change Revised Text: Actions taken: July 3, 2002: received issue March 10, 2004: closed issue Discussion: Close this issue as it is addressed by the solution to issue 4252. End of Annotations:===== From: "Mark Little" To: "XOTS FTF" Cc: Subject: Actions and removal Date: Wed, 3 Jul 2002 10:08:02 +0100 X-Mailer: Microsoft Outlook Express 6.00.2600.0000 In the Additional Structuring Mechanisms for the OTS, an Action can register interest in more than one SignalSet, i.e., it can be passed to add_action more than once, with a different SignalSet parameter. However, remove_action is not parameterised on the SignalSet, so currently it must remove the Action from all registered SignalSets. We can either add the SignalSet as a parameter to remove_action or add another method, leaving the semantics of remove_action as they are. Mark. ---------------------------------------------- Dr. Mark Little (mark_little@hp.com) Transactions Architect, HP Arjuna Labs Phone +44 191 2606216 Fax +44 191 2606250 Importance: Normal Sensitivity: Subject: Re: issue 5451 - Actions and removal To: "Mark Little" Cc: "XOTS FTF" , X-Mailer: Lotus Notes Release 5.0.7 March 21, 2001 From: "Ian Robinson" Date: Tue, 30 Jul 2002 19:51:16 +0100 X-MIMETrack: Serialize by Router on d06ml007/06/M/IBM(Release 5.0.9a |January 7, 2002) at 30/07/2002 19:53:16 This has already been resolved via issue 4252 by adding the SignalSet name to the remove_action and the specification (orbos/01-11-08) documents this according to the resolved text. Regards...Ian Ian Robinson, WebSphere Transactions Architecture IBM Hursley Lab Tel (Ext) +44-1962-818626 (Int) 7-248626 Fax +44-1962-818626 ian_robinson@uk.ibm.com "Mark Little" on 03/07/2002 10:08:02 Please respond to "Mark Little" To: "XOTS FTF" cc: Subject: Actions and removal In the Additional Structuring Mechanisms for the OTS, an Action can register interest in more than one SignalSet, i.e., it can be passed to add_action more than once, with a different SignalSet parameter. However, remove_action is not parameterised on the SignalSet, so currently it must remove the Action from all registered SignalSets. We can either add the SignalSet as a parameter to remove_action or add another method, leaving the semantics of remove_action as they are. Mark. ---------------------------------------------- Dr. Mark Little (mark_little@hp.com) Transactions Architect, HP Arjuna Labs Phone +44 191 2606216 Fax +44 191 2606250 From: "Mark Little" To: "Ian Robinson" Cc: "XOTS FTF" , Subject: Re: issue 5451 - Actions and removal Date: Tue, 30 Jul 2002 21:54:42 +0100 X-Mailer: Microsoft Outlook Express 6.00.2600.0000 We're both right and I'd like to slightly change the text of the issue: the IDL in the specification doesn't always match this for remove_actions! Take a look at the appendix! This is what I saw and didn't check the text or the past issues! Mark. ----- Original Message ----- From: "Ian Robinson" To: "Mark Little" Cc: "XOTS FTF" ; Sent: Tuesday, July 30, 2002 7:51 PM Subject: Re: issue 5451 - Actions and removal > This has already been resolved via issue 4252 by adding the SignalSet name > to the remove_action and the specification (orbos/01-11-08) documents this > according to the resolved text. > > Regards...Ian > > Ian Robinson, > WebSphere Transactions Architecture > IBM Hursley Lab > Tel (Ext) +44-1962-818626 (Int) 7-248626 > Fax +44-1962-818626 > ian_robinson@uk.ibm.com > > > "Mark Little" on 03/07/2002 10:08:02 > > Please respond to "Mark Little" > > To: "XOTS FTF" > cc: > Subject: Actions and removal > > > > In the Additional Structuring Mechanisms for the OTS, an Action can > register > interest in more than one SignalSet, i.e., it can be passed to add_action > more than once, with a different SignalSet parameter. However, > remove_action > is not parameterised on the SignalSet, so currently it must remove the > Action from all registered SignalSets. We can either add the SignalSet as a > parameter to remove_action or add another method, leaving the semantics of > remove_action as they are. > > Mark. > > ---------------------------------------------- > Dr. Mark Little (mark_little@hp.com) > Transactions Architect, HP Arjuna Labs > Phone +44 191 2606216 > Fax +44 191 2606250 > > From: "Mark Little" To: Subject: issue 5451 Date: Fri, 4 Apr 2003 11:27:49 +0100 X-Mailer: Microsoft Outlook Express 6.00.2600.0000 X-Newcastle-MailScanner: Found to be clean Here's proposed resolution for issue 5451: Change the signature of remove_action so that it takes the signal_set_name and also throws SignalSetUnknown, i.e., void remove_action (in Action act) raises(ActionNotFound) becomes void remove_action (in Action act, in string signal_set_name) raises(ActionNotFound,SignalSetUnknown). Change the text associated with remove_action from: "This method removes the specified Action from the ActivityCoordinator. If the Action has not previously been registered with the coordinator then it will throw the ActionNotFound exception. If the Activity has begun completion, or has completed, then the INVALID_ACTIVITY exception is thrown." to "This method removes the Action from the specified SignalSet with the ActivityCoordinator. If the Action has not previously been registered with the coordinator then it will throw the ActionNotFound exception. If the SignalSet is not known about then the SignalSetUnknown exception is thrown. If the Activity has begun completion, or has completed, then the INVALID_ACTIVITY exception is thrown." Mark. Subject: Re: issue 5451 To: "Mark Little" Cc: ots-structs-rtf@omg.org X-Mailer: Lotus Notes Release 5.0.7 March 21, 2001 From: "Ian Robinson" Date: Sat, 5 Apr 2003 20:53:09 +0100 X-MIMETrack: Serialize by Router on d06ml007/06/M/IBM(Release 5.0.9a |January 7, 2002) at 05/04/2003 21:45:18 This issue has already been resolved by Issue 4252. The revised text for that Issue is: Revised Text: The following text, in section 2.2.1.1, should be removed: "An Action is implicitly associated with a single Activity and should only be with that Activity." There is then no inconsistency with the following statement in sections 1.2.1.5 "An Action may register interest in more than one SignalSet and an Activity may use more than one SignalSet during its lifetime." One advantage of this clarification is that interposition can be implemented by a subordinate ActivityCoordinator registering as an Action with the discrete set of its superior's SignalSets. The following statement should be added to the description of the ActivityCoordinator and Current interfaces' add_action and add_actions methods: If the specified Action is registered multiple times for the same SignalSet then it will invoked multiple times with the Signals from that SignalSet. The remove_action and remove_actions methods of the ActivityCoordinator and Current interfaces should each have an additional string parameter of signal_set_name added so that Actions registered with multiple SignalSets can be removed from specific SignalSets. The interfaces and descriptions should be changed as follows: void remove_action(in CosActivity::Action act, in string signal_set_name) raises(CosActivity::ActionNotFound, CosActivity::NoActivity); Removes the interest relationship between the specified Action and the named SignalSet. No further Signals from the named SignalSet will be sent to the specified Action. If signal_set_name is specified as an empty string, then the Action will be sent no further Signals from any SignalSet. If the Action has not previously been registered with the coordinator, then the ActionNotFound exception will be thrown. If there is no Activity associated with the current thread, then the NoActivity exception will be thrown. If the Activity has begun completion, or has completed, then the INVALID_ACTIVITY exception is thrown. CosActivity::ActionSeq remove_actions(in CosActivity::ActionSeq acts, in string signal_set_name) raises(CosActivity::NoActivity); Removes the interest relationship between the specified Actions and the named SignalSet. No further Signals from the named SignalSet will be sent to the specified Actions. If signal_set_name is specified as an empty string, then the Actions will be sent no further Signals from any SignalSet. If any of the Actions have not previously been registered with the coordinator, then it will return references to them after removing all other Actions in the sequence. Otherwise nil will be returned. If there is no Activity associated with the current thread, then the NoActivity exception will be thrown. If the Activity has begun completion, or has completed, then the INVALID_ACTIVITY exception is thrown. With regard remove_action and remove_actions on the Current and ActivityCoordinator interfaces.... void remove_action(in CosActivity::Action act, in string signal_set_name) raises(CosActivity::ActionNotFound, CosActivity::NoActivity); The NoActivity exception is only appropriate on the Current interface, not the ActivityCoordinator interface. I suggest we close 5451 as already resolved by 4252. Ian Robinson, Senior Technical Staff Member, WebSphere Transactions Architecture & Development, IBM Hursley Lab, UK Tel +44-(0)1962-818626 Tie: 724-8626 ian_robinson@uk.ibm.com |---------+----------------------------> | | "Mark Little" | | | | | | | | | 04/04/2003 11:27 | | | | |---------+----------------------------> >---------------------------------------------------------------------------------------------------------------------| | | | To: | | cc: | | Subject: issue 5451 | | | | | >---------------------------------------------------------------------------------------------------------------------| Here's proposed resolution for issue 5451: Change the signature of remove_action so that it takes the signal_set_name and also throws SignalSetUnknown, i.e., void remove_action (in Action act) raises(ActionNotFound) becomes void remove_action (in Action act, in string signal_set_name) raises(ActionNotFound,SignalSetUnknown). Change the text associated with remove_action from: "This method removes the specified Action from the ActivityCoordinator. If the Action has not previously been registered with the coordinator then it will throw the ActionNotFound exception. If the Activity has begun completion, or has completed, then the INVALID_ACTIVITY exception is thrown." to "This method removes the Action from the specified SignalSet with the ActivityCoordinator. If the Action has not previously been registered with the coordinator then it will throw the ActionNotFound exception. If the SignalSet is not known about then the SignalSetUnknown exception is thrown. If the Activity has begun completion, or has completed, then the INVALID_ACTIVITY exception is thrown." Mark. From: "Mark Little" To: "Ian Robinson" Cc: Subject: Re: issue 5451 Date: Sun, 6 Apr 2003 20:39:44 +0100 X-Mailer: Microsoft Outlook Express 6.00.2600.0000 X-Newcastle-MailScanner: Found to be clean Note to self: refer to current specification ;-) You're right - the version of the docs I was looking at was the last set I sent to Linda prior to making the updates to our last set of adoptions! I agree that this is already resolved, so I think we close the issue with a referenceto Issue 4252. Mark. ----- Original Message ----- From: "Ian Robinson" To: "Mark Little" Cc: Sent: Saturday, April 05, 2003 8:53 PM Subject: Re: issue 5451 > This issue has already been resolved by Issue 4252. The revised text for > that Issue is: > > Revised Text: The following text, in section 2.2.1.1, should be removed: > "An Action is implicitly associated with a single Activity and should only > be with that Activity." There is then no inconsistency with the following > statement in sections 1.2.1.5 "An Action may register interest in more than > one SignalSet and an Activity may use more than one SignalSet during its > lifetime." One advantage of this clarification is that interposition can be > implemented by a subordinate ActivityCoordinator registering as an Action > with the discrete set of its superior's SignalSets. The following statement > should be added to the description of the ActivityCoordinator and Current > interfaces' add_action and add_actions methods: If the specified Action is > registered multiple times for the same SignalSet then it will invoked > multiple times with the Signals from that SignalSet. The remove_action and > remove_actions methods of the ActivityCoordinator and Current interfaces > should each have an additional string parameter of signal_set_name added so > that Actions registered with multiple SignalSets can be removed from > specific SignalSets. The interfaces and descriptions should be changed as > follows: void remove_action(in CosActivity::Action act, in string > signal_set_name) raises(CosActivity::ActionNotFound, > CosActivity::NoActivity); Removes the interest relationship between the > specified Action and the named SignalSet. No further Signals from the named > SignalSet will be sent to the specified Action. If signal_set_name is > specified as an empty string, then the Action will be sent no further > Signals from any SignalSet. If the Action has not previously been > registered with the coordinator, then the ActionNotFound exception will be > thrown. If there is no Activity associated with the current thread, then > the NoActivity exception will be thrown. If the Activity has begun > completion, or has completed, then the INVALID_ACTIVITY exception is > thrown. CosActivity::ActionSeq remove_actions(in CosActivity::ActionSeq > acts, in string signal_set_name) raises(CosActivity::NoActivity); Removes > the interest relationship between the specified Actions and the named > SignalSet. No further Signals from the named SignalSet will be sent to the > specified Actions. If signal_set_name is specified as an empty string, then > the Actions will be sent no further Signals from any SignalSet. If any of > the Actions have not previously been registered with the coordinator, then > it will return references to them after removing all other Actions in the > sequence. Otherwise nil will be returned. If there is no Activity > associated with the current thread, then the NoActivity exception will be > thrown. If the Activity has begun completion, or has completed, then the > INVALID_ACTIVITY exception is thrown. With regard remove_action and > remove_actions on the Current and ActivityCoordinator interfaces.... void > remove_action(in CosActivity::Action act, in string signal_set_name) > raises(CosActivity::ActionNotFound, CosActivity::NoActivity); The > NoActivity exception is only appropriate on the Current interface, not the > ActivityCoordinator interface. > > I suggest we close 5451 as already resolved by 4252. > > Ian Robinson, > Senior Technical Staff Member, > WebSphere Transactions Architecture & Development, > IBM Hursley Lab, UK > Tel +44-(0)1962-818626 Tie: 724-8626 > ian_robinson@uk.ibm.com > > > > |---------+----------------------------> > | | "Mark Little" | > | | | | c.uk> | > | | | > | | 04/04/2003 11:27 | > | | | > |---------+----------------------------> > >--------------------------------------------------------------------------- ------------------------------------------| > | | > | To: | > | cc: | > | Subject: issue 5451 | > | | > | | > >--------------------------------------------------------------------------- ------------------------------------------| > > > > Here's proposed resolution for issue 5451: > > Change the signature of remove_action so that it takes the signal_set_name > and also throws SignalSetUnknown, i.e., > > void remove_action (in Action act) raises(ActionNotFound) > > becomes > > void remove_action (in Action act, in string signal_set_name) > raises(ActionNotFound,SignalSetUnknown). > > Change the text associated with remove_action from: > > "This method removes the specified Action from the ActivityCoordinator. If > the Action has not previously been registered with the coordinator then it > will throw the ActionNotFound exception. If the Activity has begun > completion, or has completed, then the INVALID_ACTIVITY exception is > thrown." > > to > > "This method removes the Action from the specified SignalSet with the > ActivityCoordinator. If the Action has not previously been registered with > the coordinator then it will throw the ActionNotFound exception. If the > SignalSet is not known about then the SignalSetUnknown exception is thrown. > If the Activity has begun completion, or has completed, then the > INVALID_ACTIVITY exception is thrown." > > Mark. > From: "Mark Little" To: Subject: issues 5451 and 5452 Date: Sun, 6 Apr 2003 20:50:53 +0100 X-Mailer: Microsoft Outlook Express 6.00.2600.0000 X-Newcastle-MailScanner: Found to be clean Owing to time constraints I'm proposing that we don't vote on either of these issues this time round, i.e., we leave them open. Any objections? Mark. From: "Mark Little" To: Subject: Re: issues 5451 and 5452 Date: Tue, 8 Apr 2003 14:14:11 +0100 X-Mailer: Microsoft Outlook Express 6.00.2720.3000 X-Newcastle-MailScanner: Found to be clean This was a typo and should have referred to issues 5452 and 5431 Mark. ----- Original Message ----- From: "Mark Little" To: Sent: Sunday, April 06, 2003 8:50 PM Subject: issues 5451 and 5452 > Owing to time constraints I'm proposing that we don't vote on either of > these issues this time round, i.e., we leave them open. > > Any objections? > > Mark. > > >