Hi Denis, and people from the ignite project.
I have just created an empty project at Github for the integration:
As we spoke before, the interface is really simple. Probably we may have gone too far with the simplicity because some things need to be explained.
The cache adapter just needs to implement the Cache interface:
One instance of this class is created for each namespace. The namespace is an String received as a paremeter to the constructor:
public IgniteCache(String id) {
super();
}
The namespace is just a set of statatements. They are held in the same mapper xml file or in the same mapper interface. From the cache perspective, all the statements in a namespace have only one thing in common: they are flushed all together and share the same properties (like eviction policy, size...)
There is no special method to bootstrap the underlying cache system so this has to be done in an static block. See the Redis cache adapter for an example:
Properties are read from the cache elament and passed to any setter method in the adapter class. The code is here:
Hope this basic info is enough to start.
Apart from that... the only condition is that any code contributed will be licensed under the Apache License 2.0 which I suppose that is not going to be a problem ;)
And that we can start with pull requests but have no problem at all in giving direct commit rights to the creator (or creators) of the plugin.
Regards.