Issue 17397: Null tokens are not sent on by control nodes (fuml-rtf) Source: Model Driven Solutions (Mr. Ed Seidewitz, ed-s(at)modeldriven.com) Nature: Uncategorized Issue Severity: Summary: Specification: Semantics of a Foundational Subset for Executable UML Models (fUML), v1.0 (formal/2011-02-02) Subclause: 8.5.2.2.15 ObjectNodeActivation When an object node has no tokens, ObjectNodeActivation::sendOffers creates a null token to send. However, the holder attribute of this token is not set. This means that, even though the token gets offered, when a node tries to take it from the offering edge instance, the token is considered to have been withdrawn and is not passed on to the token. The effect of this is, in particular, that control node activations will never pass on null tokens, which is incorrect. To avoid this, sendOffers should set the holder of the null token to be the object node sending it. Resolution: agreed Revised Text: In Subclause 8.5.2.2.15, in the sendOffers operation, replace the statement tokens.addValue(new ObjectToken()); with ObjectToken token = new ObjectToken(); token.holder = this tokens.addValue(token); Actions taken: May 28, 2012: received issue January 7, 2013: closed issue Discussion: End of Annotations:===== m: Ed Seidewitz To: "issue@omg.org" Date: Mon, 28 May 2012 12:10:15 -0400 Subject: Null tokens are not sent on by control nodes Thread-Topic: Null tokens are not sent on by control nodes Thread-Index: Ac0866FS2peLco2zR9S7rref0aBRwg== Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: acceptlanguage: en-US X-Mailprotector-Decision: deliver X-Mailprotector-Connection: TLSv1|[10.1.50.225]|10.1.50.225|outbound.mailprotector.net|0|0|0|new|ugly|0|0|0|0 X-Mailprotector-Results: null_ptr clean X-Mailprotector-Score: 40 X-Mailprotector-IP-Analysis: 0, 10.1.50.225, Ugly c=0 p=0 Source New X-Mailprotector-Scan-Diagnostics: 0-0-0-6034-c X-Mailprotector-ID: 3e2d83e7-f664-43f8-bdf0-850e2cf3d601 Specification: Semantics of a Foundational Subset for Executable UML Models (fUML), v1.0 (formal/2011-02-02) Subclause: 8.5.2.2.15 ObjectNodeActivation When an object node has no tokens, ObjectNodeActivation::sendOffers creates a null token to send. However, the holder attribute of this token is not set. This means that, even though the token gets offered, when a node tries to take it from the offering edge instance, the token is considered to have been withdrawn and is not passed on to the token. The effect of this is, in particular, that control node activations will never pass on null tokens, which is incorrect. To avoid this, sendOffers should set the holder of the null token to be the object node sending it.