[SAGA-RG] Service Discovery spec updated at last ...

Andre Merzky andre at merzky.net
Thu Dec 18 16:42:34 CST 2008


Quoting [Steve Fisher] (Dec 18 2008):
> 
> OK I can buy that. I should have complained about the notation when
> the core spec was being put together. 

Yes :-)

> If you reference it that should
> be fine.

Ok, cool  - one down :-)

Cheers, Andre.


> Steve
> 
> 2008/12/18 Andre Merzky <andre at merzky.net>:
> > Quoting [Steve Fisher] (Dec 18 2008):
> >>
> >> >> I would like to be consistent - however the url here is not a string
> >> >> but a SAGA URL object - so it cannot have a default value of "".
> >> >
> >> > Basically, it means that the URL would be created by giving
> >> > an empty string to the URL's constructor.
> >> >
> >> > Thus
> >> >
> >> >  object (saga::url u = "");
> >> >
> >> > is a short form for
> >> >
> >> >  object (saga::url u = saga::url (""));
> >> >
> >> >
> >> >
> >> >> Whatever syntax is appropriate for an optional session parameter is
> >> >> also good for an optional url parameter.
> >> >
> >> > Well, we describe the session parameter default explicitely
> >> > in section 3.5.2 in the Core spec, but we do not describe it
> >> > for other parameter types anywhere, in particular not for
> >> > URL.
> >>
> >> This discoverer class should have has the same constructor as the
> >> job_service. Where the spec says:
> >
> > Exactly!
> >
> >
> >> CONSTRUCTOR (in session s,
> >> in url rm = "",
> >> out job_service obj);
> >>
> >> However the Java interface has got 3 "constructors" in the job factory
> >> with arguments:
> >>
> >> (session, url)
> >> (session)
> >> ()
> >>
> >> I want the Java API to be like this but, for convenience,  with the addition of:
> >>
> >> (url)
> >
> > Sure, but that is a language binding issue.  And again, that
> > probably should follow the language binding for the
> > job_service, although I do not know how that is rendered in
> > Java at the moment.
> >
> >
> >> I am happy to express this in the spec with a single constructor with
> >> 2 optional arguments - so our *only* concern is the precise notation.
> >> I don't want to rely upon people having read section 3.5.2 of the main
> >> spec to appreciate that session parameters are always optional and I
> >> don't like a notation which implies using a url from the default
> >> constructor being used to represent a default url.
> >
> > I added an explicit reference to section 3.5.2 and 2.2.2 of
> > the core spec, where the handling of session, and of other
> > default parameters, is descibed in some detailed.
> >
> > 2.2.2 says that default parameters are to expressed in the
> > language bindings in a way native to the languge, and should
> > give you enough freedom for Java.
> >
> > With that, is the notation precise enough for you?
> >
> > Best, Andre.
> >
> > ------------------------------------------
> >    - CONSTRUCTOR
> >      Purpose:  create a new discoverer object
> >      Format:   CONSTRUCTOR     (in session session,
> > !                                in url url = "",
> >                                 out discoverer dis);
> >      Inputs:   session:         session handle
> >                url:             URL to guide the implementation
> >      Outputs:  dis:             new discoverer object
> >      Throws:   NotImplemented
> >                IncorrectURL
> > +               DoesNotExist
> > +               AuthorizationFailed
> > +               AuthenticationFailed
> > +               TimeOut
> >                NoSuccess
> >      Notes:    - the url specified as in input parameter is to
> >                  assist the implementation to locate the
> >                  underlying information system such that it
> >                  can be queried.
> > +               - if the url is syntactically valid, but no
> > +                 backend service can be contacted at that URL,
> > +                 a 'DoesNotExist' exception is thrown.
> > +               - the semantics for the other exceptions is as
> > +                 outlined in the SAGA Core API specification.
> > +               - note that the session parameter is optional,
> > +                 as described in the SAGA Core API
> > +                 specification, section 3.5.2.  Also Section
> > +                 2.2.2 of the same document applies to
> > +                 url and its default value.
> > ------------------------------------------
> >
> >
> >
> > --
> > Nothing is ever easy.
> >



-- 
Nothing is ever easy.


More information about the saga-rg mailing list