[
https://issues.jboss.org/browse/ISPN-5704?page=com.atlassian.jira.plugin....
]
Galder Zamarreño commented on ISPN-5704:
----------------------------------------
* evalMany methods taking Map should be typed more generically because the way {{entries}}
has been defined, it can only carry value information but no metadata paramaters. In other
words, with {{entries}} value side being {{? extends V}}, it's difficult to construct
to a Map where you have both value and metadata information, and then apply that.
Here's how it looks now in WriteOnlyMap:
{code}
CompletableFuture<Void> evalMany(Map<? extends K, ? extends V> entries,
BiConsumer<V, WriteEntryView<V>> f);
{code}
Here's how it could look:
{code}
<T> CompletableFuture<Void> evalMany(Map<? extends K, T> entries,
BiConsumer<T, WriteEntryView<V>> f);
{code}
By doing that, T could be flexible enough to contain both value and any extra metadata
parameters.
Enhancements for Functional Map API
-----------------------------------
Key: ISPN-5704
URL:
https://issues.jboss.org/browse/ISPN-5704
Project: Infinispan
Issue Type: Enhancement
Reporter: Galder Zamarreño
Assignee: Galder Zamarreño
Fix For: 8.1.0.Final
List of enhancements that didn't make it into 8.0:
* Transaction support.
* Verify locks are acquired for all operations (once tx is in place, locks can be checked
easily)
* Complete persistence support (remove many returning previous, put many returning
previous, remove many)
* Replication of per-invocation parameters.
* Port mode *Becoming*Test to functional APIs, and expand on testing other functional
APIs.
* Test interoperability with cache, e.g. cache put with lifespan can be retrieved via
functional map with lifespan, and viceversa
* Test compatibility mode
* Add more listener events: activation, passivation and expiration.
* Use check isLocal instead of `e == null` in command impls
* Fix branch skip issue (see previous PR:
https://github.com/infinispan/infinispan/pull/3571)
* Add externalizers for primitive versions of Optional.
* ValueMatcherMode indexes in MarshallableFunctionExternalizers should be based on
{{ordinal()}} calls to annotation. Also, could the core's enumeration use the
annotations defined in commons?
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)