[saga-rg] 1.4 version of the spec [part2]

Andre Merzky andre at merzky.net
Fri Feb 24 05:54:08 CST 2006


Oops! thanks :-)

A.

Quoting [Graeme Pound] (Feb 24 2006):
> Date: Fri, 24 Feb 2006 11:48:20 +0000
> From: Graeme Pound <G.E.POUND at soton.ac.uk>
> To: Andre Merzky <andre at merzky.net>, SAGA RG <saga-rg at ggf.org>
> Subject: Re: [saga-rg] 1.4 version of the spec [part2]
> 
> Andre,
> 
> Your reply did not go to the mailing list.
> 
> Graeme
> 
> 
> Andre Merzky wrote:
> >Quoting [Graeme Pound] (Feb 24 2006):
> >>Andre,
> >>
> >>Further comments on revision 0.4 (not all negative ;-)
> >
> >Phew! :-)
> >
> >
> >>Thanks
> >>   Graeme
> >>
> >>
> >> #1 submitJob() has been renamed create_job(), however there is still 
> >>no endpoint defined for this method - this is broken
> >
> >Right, fixed in CVS now.
> >
> >
> >> #2 submitJob()/create_job(). The described behaviour of this method 
> >>has not changed; is this merely a superficial change, or is it intended 
> >>to facilitate the separation of Job creation and submission at a later 
> >>date?
> >
> >It is!  job.run ();  triggers the submission.
> >
> >The job part is missing a number of description and semantic
> >notes.  Also, it is missing exceptions completely - its on
> >the TODO list *sigh*
> >
> 
> 
> OK, I missed the Job.run() method.
> 
> >
> >>#3 Regarding the position upon getter/setter methods.
> >>
> >>   "Many SAGA objects have very frequently use attributes.  To
> >>    simplify usage of these objects, setter and getter methods MAY
> >>    be defined by the various language bindings, additionally to
> >>    the interface described below"
> >>
> >>  I appreciate this statement. I have been pondering this issue and 
> >>believe that getter and setter methods are appropriate for the Java 
> >>bindings. In addition to the issue of typesafety they allow the 
> >>semantics defined by these attributes to be versioned much more 
> >>explicitly. When the SAGA API changes (infrequently ;-) a client using 
> >>an unsupported attribute via the getter/setter will receive a compile 
> >>time error, otherwise the attribute will be hardcoded as a string and 
> >>produce a runtime error. This is less of an issue for dynamic languages 
> >>such as Python.
> >
> >Agree.
> >
> >
> >>#4 Should the close() method be defined as a method of ns_entry? As I 
> >>mentioned in an earlier email it is not applicable to Directorys (which 
> >>implement ns_entry), and perhaps not to logical_files or 
> >>logical_directory. I believe that close() should be defined for classes 
> >>as required.
> >
> >As said before, I am not sure about this.  Close was
> >requested as means of freeing the resource explicitely (i.e.
> >timely) on systems with garbage collection (Java ;-).  Maybe
> >'destroy' would have been more appropriate, but that again
> >would clash on real files and streams, as 'close' is 'the
> >right thing' on those.
> >
> >I don't have a better idea right now.  Out?  In?  *shrug*
> >
> >
> >> -3.33 The uniqueness of Context within a Session is a little 
> >>ambiguous. Defined as "a single Context instance can get attached only 
> >>once to a specific Session instance". Whilst it would be possible to 
> >>determine whether the same instance of a Context object has been added 
> >>to a session, two different Context instances could describe the same 
> >>security information. What is the intention of this restriction? Is 
> >>there a better way to specify the uniqueness of Context objects; perhaps 
> >>based upon contextType? (see 3.34)
> >
> >I pondered about that as well some days ago.  I don't see a
> >good reason for that statement anymore.  It simply should
> >not matter if a context gets added twice.
> >
> >The only potential problem is confusion with remove_context,
> >as that should certainly remove only one instance - so a
> >double context would be still attached on the session after
> >a single remove call.  I don't think that this is a problem
> >though.
> >
> >I would prefer to delete the statement, if there ar no
> >objections...
> >
> >
> >> -3.34 Session.removeContext(Context context) is a little awkward. The 
> >>client would have to retrieve the instance Context in order to specify 
> >>that it should be removed (see 3.33). Could Context instances within a 
> >>Session have labels, removal could then be based upon label?
> >
> >We do have cookies for callbacks, so we could also have them
> >for contexts, sure.  But then also for tasks (in
> >task_container)?  
> >
> >I guess its a matter of taste - I can imagine use cases for
> >both versions.  But one version is easily mapped to the
> >other on in application space.
> >
> >
> >>######### Comments on the Strawman API document
> >>
> >> -4.18 Not all methods are documented in revision 0.4, including;
> >>        File.read_p()
> >>        File.write_p()
> >>        File.read_e()
> >>        File.write_e()
> >>	File.modes_e()
> >
> >Right, thats on the issue list.
> >
> >
> >> -4.19 Buffer arguments should be described as byte arrays, not strings 
> >>in File and Ivec.
> >
> >Oh, did I miss that?  I though I fixed all the buffer
> >strings... - will check.
> >
> >Hmm:
> >
> >    struct ivec 
> >    {
> >      long          offeset; // position of data  to be r/w
> >      long          length;  // number   of bytes to be r/w
> >      array<byte,1> buffer;  // data              to be r/w
> >      long          result;  // number   of bytes       r/w
> >    }
> >
> >Hmm, is byte array in CVS.  I am wondering if we look at the
> >version?
> >
> 
> Sorry that is an anachronistic comment from revision 0.3 that slipped in.
> 
> 
> >
> >> -4.21 Typo in ivec "offeset" should read "offset"
> >
> >Aehm, thanks :-)
> >
> >
> >> -4.22 removeContext "Security Context to add" should read "Security 
> >>Context to remove"
> >
> >Fixed.
> >
> >
> >> -4.23 removeContext "DoesNotExists" should read "DoesNotExist"
> >
> >fixed.
> >
> >Thanks, Andre.
> >
> >
> >>Andre Merzky wrote:
> >>>Hi all, 
> >>>
> >>>the lates version of the strawman (1.4) is on the wiki.
> >>>
> >>>Cheers, Andre.
> >>>
> >>>
> >
> >
> >



-- 
"So much time, so little to do..."  -- Garfield





More information about the saga-rg mailing list