[
https://issues.apache.org/jira/browse/JENA-1231?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Andy Seaborne updated JENA-1231:
--------------------------------
Description:
The proposal is to deprecate {{executeInTransaction}}, which returns "Object"
and have operations:
{noformat}
<T> T executeRtn( Supplier<T> action ) ;
{noformat}
and the non-result version:
{noformat}
void execute( Runnable action );
{noformat}
It helps in the IDE to have different names because they both start
"{{()\->...}}". In my experience (Eclipse) completion and error messages are
not good when there is the same name and ambiguity over the inferred type.
Using the {{()->methodresultsvalue()}} form is ambiguous.
For model, call them {{executeInTxnRtn}} and {{executeInTxn}}.
was:
The proposal is to deprecate {{executeInTransaction}}, which returns "Object"
and have operations:
{noformat}
<T> T executeRtn( Supplier<T> action ) ;
{noformat}
and the non-result version:
{noformat}
void execute( Runnable action );
{noformat}
It helps in the IDE to have different names because they both start
"{{()->...}}". In my experience (Eclipse) completion and error messages are
not good when there is the same name and ambiguity over the inferred type.
Using the {{()->methodresultsvalue()}} form is ambiguous.
For model, call them {{executeInTxnRtn}} and {{executeInTxn}}.
> Update "executeInTransaction" to Java8 style (Model, TransactionHandler).
> -------------------------------------------------------------------------
>
> Key: JENA-1231
> URL: https://issues.apache.org/jira/browse/JENA-1231
> Project: Apache Jena
> Issue Type: Bug
> Affects Versions: Jena 3.1.0
> Reporter: Andy Seaborne
> Assignee: Andy Seaborne
> Priority: Minor
>
> The proposal is to deprecate {{executeInTransaction}}, which returns "Object"
> and have operations:
> {noformat}
> <T> T executeRtn( Supplier<T> action ) ;
> {noformat}
> and the non-result version:
> {noformat}
> void execute( Runnable action );
> {noformat}
> It helps in the IDE to have different names because they both start
> "{{()\->...}}". In my experience (Eclipse) completion and error messages are
> not good when there is the same name and ambiguity over the inferred type.
> Using the {{()->methodresultsvalue()}} form is ambiguous.
> For model, call them {{executeInTxnRtn}} and {{executeInTxn}}.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)