OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

sca-j message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: Re: [sca-j] [NEW ISSUE] Missing Normative statement relating togetServiceReference() method - [JAVA-158]


Anish, Yes, I should have said multiplicity 0..1 in my comment below because this issue is only about the getServiceReference() API.

Dave Booz
STSM, BPM and SCA Architecture
Co-Chair OASIS SCA-Policy TC and SCA-J TC
"Distributed objects first, then world hunger"
Poughkeepsie, NY (845)-435-6093 or 8-295-6093
e-mail:booz@us.ibm.com

Anish Karmarkar <Anish.Karmarkar@oracle.com> wrote on 05/04/2009 01:11:35 AM:

> [image removed]

>
> Re: [sca-j] [NEW ISSUE] Missing Normative statement relating to
> getServiceReference() method - [JAVA-158]

>
> Anish Karmarkar

>
> to:

>
> Simon Nash

>
> 05/04/2009 01:12 AM

>
> Cc:

>
> sca-j

>
> Simon Nash wrote:
> > Anish Karmarkar wrote:
> >> +1
> >>
> >> I do have a clarification Q:
> >> The spec says -- "This method MUST throw an IllegalArgumentException
> >> if the reference has multiplicity greater than one."
> >> I had assumed that this means "multiplicity" as defined in Assembly
> >> and not how many services the reference is wired to, for that
> >> particular component. I.e., if the multiplicity is 0..N, regardless of
> >> how many services the reference is wired to, this method would throw
> >> an IllegalArgumentException. IOW, which method to use
> >> (getServiceReference() or getServiceReferences()) depends on the
> >> ComponentType and not on the component. I hope my
> >> assumption/interpretation is correct.
> >>
> >> I ask because you used "0..x" rather than 0..1.
> >>
> > I agree that it depends on the componentType multiplicity.
> >
> > If this multiplicity is 0..1, NULL could be a non-error return
> > value if the reference is unwired.
> >
> > If this multiplicity is 0..n, NULL could not be a non-error
> > return value.  An unwired 0..n reference would result in an
> > empty array being returned (see JCA90023).
> >
>
> Yes, but that will be for the method getServiceReferences() and not
> getServiceReference().
>
> -Anish
> --
>
> > I agree with Dave that this call should not return NULL in
> > error cases.
> >
> >   Simon
> >
> >> Thanks.
> >>
> >> -Anish
> >> --
> >>
> >>
> >> David Booz wrote:
> >>> I know we haven't accepted the issue yet, but I want to comment on
> >>> the proposal anyway.
> >>>
> >>> I think the error condition described by JCA80006 should also throw
> >>> IllegalArgumentException (or some other exception) instead of
> >>> returning null. Null could be a valid (non-error) return value if the
> >>> multiplicity is 0..x and the reference is unwired. It's important for
> >>> the component developer to be able to distinguish between unexpected
> >>> errors and expected behavior.
> >>>
> >>> Dave Booz
> >>> STSM, BPM and SCA Architecture
> >>> Co-Chair OASIS SCA-Policy TC and SCA-J TC
> >>> "Distributed objects first, then world hunger"
> >>> Poughkeepsie, NY (845)-435-6093 or 8-295-6093
> >>> e-mail:booz@us.ibm.com
> >>>
> >>> Inactive hide details for "Mark Combellack" ---04/30/2009 06:40:59
> >>> AM---Hi,"Mark Combellack" ---04/30/2009 06:40:59 AM---Hi,
> >>>
> >>>
> >>> From:   "Mark Combellack" <mcombellack@avaya.com>
> >>>
> >>> To:   "Mike Edwards" <mike_edwards@uk.ibm.com>, "OASIS Java"
> >>> <sca-j@lists.oasis-open.org>
> >>>
> >>> Date:   04/30/2009 06:40 AM
> >>>
> >>> Subject:   RE: [sca-j] [NEW ISSUE] Missing Normative statement
> >>> relating to getServiceReference() method - [JAVA-158]
> >>>
> >>> ------------------------------------------------------------------------
> >>>
> >>>
> >>>
> >>> Hi,
> >>>
> >>> I have raised this new issue as JAVA-158. See:
> >>>
> >>>             _http://www.osoa.org/jira/browse/JAVA-158_
> >>> Thanks,
> >>>
> >>> Mark
> >>> Mark Combellack| Software Developer| Avaya | Eastern Business Park |
> >>> St. Mellons | Cardiff | CF3 5EA | Voice: +44 (0) 29 2081 7624 |
> >>> _mcombellack@avaya.com_ <mailto:%7Cmcombellack@avaya.com>
> >>> ------------------------------------------------------------------------
> >>> *From:* Mike Edwards [mailto:mike_edwards@uk.ibm.com] *
> >>> Sent:* 30 April 2009 08:48*
> >>> To:* OASIS Java*
> >>> Subject:* [sca-j] [NEW ISSUE] Missing Normative statement relating to
> >>> getServiceReference() method
> >>>
> >>>
> >>> Raiser: Mike Edwards
> >>>
> >>> Target: sca-javacaa-1.1-spec-cd02-rev7.doc
> >>>
> >>> Description:
> >>>
> >>> The paragraph describing the getServiceReference() method in section
> >>> 9.1 contains normative material that
> >>> is not tagged as a normative statement:
> >>>
> >>> Lines 1320-1322:
> >>>
> >>> */getServiceReference(Class<B> businessInterface, String
> >>> referenceName) /*
> >>>
> >>> – Returns a ServiceReference defined by the current component. This
> >>> method MUST throw an IllegalArgumentException if the reference has
> >>> multiplicity greater than one.
> >>>
> >>> I also note that the description for this method does not describe
> >>> other error cases that should be covered.
> >>>
> >>>
> >>> Proposal:
> >>>
> >>> Create a new normative statements, appropriately tagged, as follows:
> >>>
> >>> */getServiceReference(Class<B> businessInterface, String
> >>> referenceName) /*
> >>>
> >>> – Returns a ServiceReference defined by the current component.
> >>>
> >>> */businessInterface /*- the interface class of the reference
> >>>
> >>> */referenceName /*- the name of the reference
> >>>
> >>> The getServiceReference method MUST throw an IllegalArgumentException
> >>> if the reference named by the referenceName parameter has
> >>> multiplicity greater than one. [JCA80004]
> >>>
> >>> The getServiceReference method MUST throw an IllegalArgumentException
> >>> if the reference named by the referenceName parameter does not have
> >>> an interface of the type defined by the businessInterface parameter.
> >>> [JCA80005]
> >>>
> >>> The getServiceReference method MUST return null if the component does
> >>> not have a reference with the name provided in the referenceName
> >>> parameter. [JCA80006]
> >>>
> >>>
> >>>
> >>> Yours, Mike.
> >>>
> >>> Strategist - Emerging Technologies, SCA & SDO.
> >>> Co Chair OASIS SCA Assembly TC.
> >>> IBM Hursley Park, Mail Point 146, Winchester, SO21 2JN, Great Britain.
> >>> Phone & FAX: +44-1962-818014 Mobile: +44-7802-467431
> >>> Email: mike_edwards@uk.ibm.com
> >>>
> >>> ------------------------------------------------------------------------
> >>>
> >>> /Unless stated otherwise above:
> >>> IBM United Kingdom Limited - Registered in England and Wales with
> >>> number 741598.
> >>> Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire
> >>> PO6 3AU/
> >>>
> >>>
> >>>
> >>>
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe from this mail list, you must leave the OASIS TC that
> >> generates this mail.  Follow this link to all your TCs in OASIS at:
> >> https://www.oasis-open.org/apps/org/workgroup/portal/my_workgroups.php
> >>
> >>
> >
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe from this mail list, you must leave the OASIS TC that
> > generates this mail.  Follow this link to all your TCs in OASIS at:
> > https://www.oasis-open.org/apps/org/workgroup/portal/my_workgroups.php
>
> ---------------------------------------------------------------------
> To unsubscribe from this mail list, you must leave the OASIS TC that
> generates this mail.  Follow this link to all your TCs in OASIS at:
> https://www.oasis-open.org/apps/org/workgroup/portal/my_workgroups.php
>



[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]