Intent matching is not performed for intents that may be provided by the binding
--------------------------------------------------------------------------------
Key: TUSCANY-3959
URL: https://issues.apache.org/jira/browse/TUSCANY-3959
Project: Tuscany
Issue Type: Bug
Affects Versions: Java-SCA-2.0
Reporter: Greg Dritschler
EndpointReferenceBinderImpl.haveMatchingPolicy() matches the intents specified
on a reference bindiing to those specified on a potential target service
binding. For some reason, it skips over intents that may be provided by the
binding.
} else if (bindingType != null &&
bindingType.getMayProvidedIntents().contains(intent)){
eprIntents.remove(intent);
Even though the binding provides the intent when requested to do so, it still
should be matched. It doesn't make sense to allow the client to tell the
reference binding to do something if the service binding isn't doing the same
thing. Note that this applies only to interaction intents. Implementation
intents (such as transactedOneWay) SHOULD NOT be matched. So the above logic
should be changed such that:
a) if the intent is an interaction intent, remove it if the endpoint also has
the endpoint
b) if the intent is an implementation intent, remove it
** NOTE ** TUSCANY-3958 must be addressed before this JIRA. TUSCANY-3958
reports that intents are not present in a remote endpoint. Obviously we have
to fix getting the intents in remote endpoints before we fix matching them.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira