[infinispan-issues] [JBoss JIRA] (ISPN-5849) AutoCloseable return from adding listeners can be clunky to use
Galder Zamarreño (JIRA)
issues at jboss.org
Mon Oct 12 03:29:00 EDT 2015
Galder Zamarreño created ISPN-5849:
--------------------------------------
Summary: AutoCloseable return from adding listeners can be clunky to use
Key: ISPN-5849
URL: https://issues.jboss.org/browse/ISPN-5849
Project: Infinispan
Issue Type: Sub-task
Reporter: Galder Zamarreño
Assignee: Galder Zamarreño
Fix For: 8.1.0.Final
On one side, to use it as a try-with-resource, you need to declare it right in the {{try()}};
{code}
try(AutoCloseable handler = writeOnlyMap.listeners().onWrite(written ->
System.out.printf("Written (via onWrite): %s%n", written.get()))) {
Map<String, String> entries = new HashMap<>();
entries.put("key1", "value1");
entries.put("key2", "value2");
writeOnlyMap.evalMany(entries, (v, writeView) -> writeView.set(v))
.get(); // Wait for completable future
}
{code}
So it's usability is mostly designed for unit tests since listeners tend to be set and removed at a later stage. IOW, listeners are not generally a short-lived object.
The other aspect that is clunky to use is the fact that AutoCloseable's close() throws Exception, which again makes it ackward to use for example if lambdas.
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
More information about the infinispan-issues
mailing list