← Prev in month ← Prev in thread
Next in thread → Next in month →

Re: [sca-bindings] ISSUE-48: How are mayProvide intents on bindingssatisfied - more discussion

From
Mike Edwards <>
Date
2008-10-16T13:55:07+00:00
ID
Thread
Re: [sca-bindings] ISSUE-48: How are mayProvide intents on bindingssatisfied - more discussion
Folks,

It is first worth me posting here a
proposed resolution for POLICY-61 which clarifies the meaning and use of
the @mayProvides attribute

of a binding type:

-------------------------------------------------------------

Here is a proposal which resolves POLICY-56.
 First a preamble to give some reasoning for what follows:

 

Where a Binding type declares @mayProvide="a list
of intents", what this means is: 

- an instance of this Binding type can provide any of the intents in the
list 

- each intent in the list is provided by the binding instance WHEN the
list of intents applied to the binding instance includes that intent

(I assume that IF the @mayProvides list of intents includes an unqualified
form of a qualifiable intent, then any qualified form of the intent applied
to 

the binding instance means that the qualified form of the intent is what
is actually provided) 

- "applied to the binding instance" means that the intent is
declared EITHER directly on the binding instance OR on one of its parent

elements 

The resolution of POLICY-56 is worth reading in this light:

- a binding type MAY have parameters (other than intents & policy sets)
that affect policy related attributes of the binding 

BUT IF this is the case and a particular binding instance has those parameters
set in a way which is in conflict with the intents

and/or policySets applied to a binding instance, THEN the runtime must
raise an error.

OK, here are my proposed changes to the Policy Spec (WD-08):

Replace lines 1243 - 1247 with: 

The set of provided intents for a binding instance is the union
of the set of intents listed in the 

“alwaysProvides” attribute and the set of intents listed in the “mayProvides”
attribute of of its binding type. 

The capabilities represented by the "alwaysProvides" intent set
are always present, irrespective of the 

configuration of the binding instance. Each capability represented by the
"mayProvides" intent set is 

only present when the list of intents applied to the binding instance (either
applied directly, or inherited) 

contains the particular intent (or a qualified version of that intent,
if the intent set contains an unqualified 

form of a qualifiable intent). When an intent is directly provided by the
binding type, there is no need to 

apply a policy set that provides that intent. 

Replace lines 1378 - 1380 with: 

For a binding instance, the set of intents
listed in the @alwaysProvides attribute of the binding type definition

plus the set of intents listed in the binding type’s @mayProvides attribute

-------------------------------------------------------------

So, what does this mean for the resolution
of Bindings Issue 48, you ask?

I believe that it implies the following:

1) Each bindings spec MUST state which
@mayProvides intents exist for the bindings it defines

2) Each bindings spec must describe
if any of the configuration parameters affect any of the @mayProvides intents
and provide warnings about which combinations of configuration data and
intents will cause errors

Binding.ws specification already says
that there are no @alwaysProvides or @mayProvides intents

Binding.jca specification says nothing
about @alwaysProvides or @mayProvides

Binding.jms specification does define
1 @alwaysProvides intent (JMS) and a set of @mayProvides intents  -

"atLeastOnce atMostOnce ordered
conversational"

So I think that the resolution of Issue
48 means writing a new section (6.1? in cd01-rev1) which describes whether

any of the configuration parameters
defined for binding.jms affect any of the listed intents and if so, how
to avoid

error situations.

Anyone care to write such a section,
please?

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:  

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
← Prev in month ← Prev in thread
Next in thread → Next in month →