[Neo] Event framework has landed

Mattias Persson mattias at neotechnology.com
Tue Apr 27 10:15:48 CEST 2010


Hi everyone!

I'm quite pleased to announce that the new event framework has been
committed in kernel 1.1-SNAPSHOT. After feedback from you guys the framework
got quite small and cosy. Here's a summary.

*TransactionEventHandler*
can be registered at a GraphDatabaseService and will thereafter recieve
diffs of modifications made in each transaction before and after they are
committed. The transaction can still be modified in beforeCommit() and that
method can also throw an exception to prevent the transaction from
committing, causing a TransactionFailureException to be thrown from the code
which is committing the transaction.

*KernelEventHandler*
can be registered at a GraphDatabaseService and will receive notifications
about when a shutdown is about to occur for the GraphhDatabaseService
instance. It will also receive notifications about "kernel panics" which is
a state which the kernel can come to from where it cannot continue without
needing to be restarted. An example of such an error would be a hard drive
breakdown or when no more space is left on the device the graph database is
running on.

The next step is to write an "auto indexer" for the IndexService so that
that you won't have to do the manual indexService.index( node, key, value )
anymore. Another thing would be to remove (deprecate) the
IndexService#shutdown() method as it no longer would be required.

So it'd be great if you guys would try this out and tell us how it feels.

-- 
Mattias Persson, [mattias at neotechnology.com]
Hacker, Neo Technology
www.neotechnology.com


More information about the User mailing list