Issue 10544: Request clarification on a WRITE_ONLY CacheAccess, cloning, and refresh() (data-distribution-rtf) Source: OCI (Mr. Donald Busch, busch_d(at)ociweb.com) Nature: Uncategorized Issue Severity: Summary: The spec is not completely clear on what you can and cannot do with a WRITE_ONLY CacheAccess. Is it legal to clone an object into a WRITE_ONLY CacheAccess, or are we only permitted to create brand new objects (via create_object) in a WRITE_ONLY CacheAccess? On a related note, is a CacheAccess::refresh() for a WRITE_ONLY CacheAccess always a noop, or should it throw an exception? It seems like it should thrown an exception (such as a WriteOnlyMode exception, which doesn't exist) to be consistent with CacheAccess::write, which throws a ReadOnlyMode exception when you call it from a READ_ONLY CacheAccess. Resolution: Revised Text: Actions taken: December 22, 2006: received issue Discussion: End of Annotations:===== il-OSG: xWfvRz4VM1nEq.OCbzSPtrcZOM_DAx3JiX_D83y50p41WCz0Wu53icjpMU20HjlopB7EKdSI.vHT_0Nw.deo01jHgh38iBOhtlQETl5guXArKShPkZrUsjPvW7tqK0cpSZ5CjRBgsSyBlC4- Date: Fri, 22 Dec 2006 16:28:44 -0600 From: Don Busch User-Agent: Thunderbird 1.5.0.9 (Windows/20061207) To: issues@omg.org Subject: DDS 06-04-09, DLRL Issue: Request clarification on a WRITE_ONLY CacheAccess, cloning, and refresh() The spec is not completely clear on what you can and cannot do with a WRITE_ONLY CacheAccess. Is it legal to clone an object into a WRITE_ONLY CacheAccess, or are we only permitted to create brand new objects (via create_object) in a WRITE_ONLY CacheAccess? On a related note, is a CacheAccess::refresh() for a WRITE_ONLY CacheAccess always a noop, or should it throw an exception? It seems like it should thrown an exception (such as a WriteOnlyMode exception, which doesn't exist) to be consistent with CacheAccess::write, which throws a ReadOnlyMode exception when you call it from a READ_ONLY CacheAccess. -Don Busch -- ---------------------------------------------------------------- Don Busch, Principal Software Engineer and Partner Object Computing, Inc. (OCI) http://www.ociweb.com http://www.theaceorb.com http://jacorb.ociweb.com "Never let what you can't do get in the way of what you can do." - John Wooden X-YMail-OSG: fjCJY9EVM1lEEtaEnJ1he_Ed8PzWEhjkdw4kHf.Ll2eQ7S5J3fCodD5MuqcWPzGysOfFS35Agm8Ihsy0B4bLfNYDEmubtu5IRlToabsaKulOtdg90cs- Date: Wed, 09 May 2007 13:16:05 -0500 From: Don Busch User-Agent: Thunderbird 1.5.0.10 (Windows/20070221) To: data-distribution-rtf@omg.org Subject: [Issue 10544] We suggest making the following changes to the descriptions of CacheBase, Cache, and CacheAccess: 8.1.6.2.2, CacheBase::refresh: Add "The operation throws a PreconditionNotMet if the Cache or CacheAccess is WRITE_ONLY" 8.1.6.3.3, CacheAccess::create_contract: Add "The operation throws a PreconditionNotMet if the CacheAccess is WRITE_ONLY" 8.1.5.3.4, Cache::enable_updates: Add "The operation throws a PreconditionNotMet if the Cache is WRITE_ONLY" 8.1.5.3.4, Cache::disable_updates: Add "The operation throws a PreconditionNotMet if the Cache is WRITE_ONLY" This is consistent with the approach of having CacheAccess::write() throw a ReadOnlyMode exception if the CacheAccess is not writable. -- ---------------------------------------------------------------- Don Busch, Principal Software Engineer and Partner Object Computing, Inc. (OCI) http://www.ociweb.com http://www.theaceorb.com http://jacorb.ociweb.com "Never let what you can't do get in the way of what you can do." - John Wooden ---------------------------------------------------------------- ----------------------------------------------------------------