This is an automated email from the ASF dual-hosted git repository.
thiagohp pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/tapestry-5.git
The following commit(s) were added to refs/heads/master by this push:
new 9e8491f TAP5-2588: making overrides of interfaces default methods
work again
9e8491f is described below
commit 9e8491f023bc76c8a71f188f8b310ddd6a73e706
Author: Thiago H. de Paula Figueiredo <[email protected]>
AuthorDate: Fri Jun 21 22:40:01 2019 -0300
TAP5-2588: making overrides of interfaces default methods work again
---
.../apache/tapestry5/internal/plastic/PlasticClassImpl.java | 2 +-
.../java/org/apache/tapestry5/ioc/DefaultMethodService.java | 13 +++++++++++++
2 files changed, 14 insertions(+), 1 deletion(-)
diff --git
a/plastic/src/main/java/org/apache/tapestry5/internal/plastic/PlasticClassImpl.java
b/plastic/src/main/java/org/apache/tapestry5/internal/plastic/PlasticClassImpl.java
index fffd910..7951008 100644
---
a/plastic/src/main/java/org/apache/tapestry5/internal/plastic/PlasticClassImpl.java
+++
b/plastic/src/main/java/org/apache/tapestry5/internal/plastic/PlasticClassImpl.java
@@ -1437,7 +1437,7 @@ public class PlasticClassImpl extends Lockable implements
PlasticClass, Internal
{
MethodDescription description = new MethodDescription(m);
- if (!isMethodImplemented(description) && !isDefaultMethod(m) &&
!Modifier.isStatic(description.modifiers) &&
!contains(alreadyIntroducedMethods, m))
+ if (!isMethodImplemented(description) &&
!Modifier.isStatic(description.modifiers) &&
!contains(alreadyIntroducedMethods, m))
{
PlasticMethod introducedMethod = introduceMethod(m);
introducedMethods.add(introducedMethod);
diff --git
a/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/DefaultMethodService.java
b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/DefaultMethodService.java
new file mode 100644
index 0000000..2f391ed
--- /dev/null
+++
b/tapestry-ioc/src/test/java/org/apache/tapestry5/ioc/DefaultMethodService.java
@@ -0,0 +1,13 @@
+package org.apache.tapestry5.ioc;
+
+public interface DefaultMethodService {
+
+ public default String overriden() {
+ return "Default";
+ }
+
+ public default String notOverriden() {
+ return "Default";
+ }
+
+}