You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@felix.apache.org by "Stefan Bischof (Jira)" <ji...@apache.org> on 2020/03/12 09:32:01 UTC
[jira] [Updated] (FELIX-6239) Converter should be able to invoke
default methods in Interfaces
[ https://issues.apache.org/jira/browse/FELIX-6239?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Stefan Bischof updated FELIX-6239:
----------------------------------
Description:
Would be nice if Converter could invoke default methods in Interfaces.
https://github.com/apache/felix-dev/blob/f4304bdea3fb9280ccc0b75dc97275125bc5cbfb/converter/converter/src/main/java/org/osgi/util/converter/ConvertingImpl.java#L807-L820
I didn't found a proper way to invoke default methods <= and > Java 8.
Test:
{code:java}
interface InterfaceWithDefault
{
default String s()
{
return "s";
}
}
@Test()
public void testInterfaceWithDefault() throws Exception
{
InterfaceWithDefault i = Converters.standardConverter().convert(new HashMap<String, Object>()).to(InterfaceWithDefault.class);
assertEquals("s", i.s());
}
{code}
was:
{code:java}
interface InterfaceWithDefault
{
default String s()
{
return "s";
}
}
@Test()
public void testInterfaceWithDefault() throws Exception
{
InterfaceWithDefault i = Converters.standardConverter().convert(new HashMap<String, Object>()).to(InterfaceWithDefault.class);
assertEquals("s", i.s());
}
{code}
Priority: Minor (was: Major)
> Converter should be able to invoke default methods in Interfaces
> ----------------------------------------------------------------
>
> Key: FELIX-6239
> URL: https://issues.apache.org/jira/browse/FELIX-6239
> Project: Felix
> Issue Type: New Feature
> Components: Converter
> Reporter: Stefan Bischof
> Priority: Minor
>
> Would be nice if Converter could invoke default methods in Interfaces.
> https://github.com/apache/felix-dev/blob/f4304bdea3fb9280ccc0b75dc97275125bc5cbfb/converter/converter/src/main/java/org/osgi/util/converter/ConvertingImpl.java#L807-L820
> I didn't found a proper way to invoke default methods <= and > Java 8.
> Test:
> {code:java}
> interface InterfaceWithDefault
> {
> default String s()
> {
> return "s";
> }
> }
> @Test()
> public void testInterfaceWithDefault() throws Exception
> {
> InterfaceWithDefault i = Converters.standardConverter().convert(new HashMap<String, Object>()).to(InterfaceWithDefault.class);
> assertEquals("s", i.s());
> }
> {code}
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)