On Mar 20, 2013, at 11:51 AM, Manik Surtani <msurtani(a)redhat.com> wrote:
On 18 Mar 2013, at 12:21, Galder Zamarreño <galder(a)redhat.com> wrote:
> IOW, you'll be able to say: create an Infinsipan Server that has String as key
and value of type X, where X is the actual data type, no metadata!! The metadata (version,
encoding, whatever is requried to fulfill the compatibility reqs in ISPN-2281) will be
passed as part of the put/replace…etc (I will email this around when in place).
Not sure I get this.
Understandable.
Where will this metadata be stored?
^ Right now, lifespan/maxIdle/version are stored in InternalCacheEntry. My plan is to wrap
all this Metadata mentioned (lifespan/maxidle/version) into a a class that's stored in
InternalCacheEntry.
The way Hot Rod, and others would pass more metadata if needed, would be by
extending/implementing that Metadata class and adding extra information there.
In some stashed changes I have I already added putWithMetadata(K, V, Metadata) which
includes lifespan/maxIdle/version. This would work nicely towards avoiding all the mayhem
of overloaded methods we have which I hate with passion…
This will also work nicely towards having Hibernate provide a version to the data stored
in Infinispan
The API is not finished by any means and this is still in flux… but as soon as I have
something that I'm happy with and I've confirmed that it works nicely, I'll
post for review of course.
What I mean by nice is: I can pass standard metadata from embedded, but servers can extend
it nicely to put more metadata into the
internal container…
Cheers,
--
Manik Surtani
manik(a)jboss.org
twitter.com/maniksurtani
Platform Architect, JBoss Data Grid
http://red.ht/data-grid
_______________________________________________
infinispan-dev mailing list
infinispan-dev(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/infinispan-dev
--
Galder Zamarreño
galder(a)redhat.com
twitter.com/galderz
Project Lead, Escalante
http://escalante.io
Engineer, Infinispan
http://infinispan.org