Author: nash
Date: Thu Sep 3 08:58:55 2009
New Revision: 810833
URL: http://svn.apache.org/viewvc?rev=810833&view=rev
Log:
Fix interface compatibility checking for callback operations (TUSCANY-3251)
Modified:
tuscany/branches/sca-java-1.5.1/modules/interface/src/main/java/org/apache/tuscany/sca/interfacedef/impl/InterfaceContractMapperImpl.java
Modified: tuscany/branches/sca-java-1.5.1/modules/interface/src/main/java/org/apache/tuscany/sca/interfacedef/impl/InterfaceContractMapperImpl.java
URL: http://svn.apache.org/viewvc/tuscany/branches/sca-java-1.5.1/modules/interface/src/main/java/org/apache/tuscany/sca/interfacedef/impl/InterfaceContractMapperImpl.java?rev=810833&r1=810832&r2=810833&view=diff
==============================================================================
--- tuscany/branches/sca-java-1.5.1/modules/interface/src/main/java/org/apache/tuscany/sca/interfacedef/impl/InterfaceContractMapperImpl.java
(original)
+++ tuscany/branches/sca-java-1.5.1/modules/interface/src/main/java/org/apache/tuscany/sca/interfacedef/impl/InterfaceContractMapperImpl.java
Thu Sep 3 08:58:55 2009
@@ -209,8 +209,7 @@
}
for (Operation operation : source.getCallbackInterface().getOperations()) {
- Operation targetOperation =
- getOperation(target.getCallbackInterface().getOperations(), operation.getName());
+ Operation targetOperation = map(target.getCallbackInterface(), operation);
if (targetOperation == null) {
if (!silent) {
throw new IncompatibleInterfaceContractException("Callback operation
not found on target", source,
@@ -221,7 +220,7 @@
}
if (!source.getCallbackInterface().isRemotable()) {
// FIXME: for remotable operation, only compare name for now
- if (!operation.equals(targetOperation)) {
+ if (!isCompatible(operation, targetOperation, false)) {
if (!silent) {
throw new IncompatibleInterfaceContractException("Target callback
operation is not compatible",
source, target,
operation, targetOperation);
|