I'm looking at implementing CacheProvider with IBM ObjectGrid and have a couple of questions. First, how are changes to the cache state scoped? We support atomic transactions and it would be nice if changes to application state/conversation state etc were bracketable with a 'transaction' so that consistency is maintained. Example, any cache state changes made in a conversation scope or request scope were committed together etc. The CacheProvider class right now gets no indication of when to start/commit a transaction in this sense.
Also, is the clear method supposed to take a region string also? All the other methods are region scoped.
The CacheProvider interface provides a common map style interface to the backing cache, as not all cache's are transactional, you're going to need to use the underling cache to control transactions. Use the getDelegate() method to get the underling cache.
You can file a feature request for just clearing a specific region.