Yes. I can tick of one of the use cases on my list of expected ones.

I would like some more input on this though. I'm assuming that you would
want proactive event handlers for building this. That would enable you to
reject changes if the MetaModel validator doesn't accept them. Or would it
be enough to be able to output a log message about there being a change that
violated the validation?

Cheers,
Tobias

On Wed, Mar 31, 2010 at 1:54 PM, Niels Hoogeveen
<pd_aficion...@hotmail.com>wrote:

>
> A use case I have mentioned earlier on this list is a MetaModel validator.
> Such a component should be triggered on transaction success to validate the
> added/deleted relationships, nodes and properties, and the updated property
> values. It's an open question to me, whether every change event should be
> logged by the validator, or if the validator can somehow get a set of
> nodes/relationship/properties from Transaction with those entities that have
> been touched within that transaction.
>
> The nicest solution from my point of view would be that the onSuccess event
> has a property touchedNodes, which is a list of node facades, where only the
> immutable methods of Node are implemented, and where the return value of
> each method returns an immutable value.
>
> The book keeping with respect to transactions is already done within the
> transactions, so logging all changes once more for a validator seems a waste
> of cycles and memory. So, to me an event with a reference to this change
> log, would seem the nicest solution.
>
> Kind regards,
> Niels Hoogeveen
>
> > From: tobias.ivars...@neotechnology.com
> > Date: Wed, 31 Mar 2010 12:39:25 +0200
> > To: user@lists.neo4j.org
> > Subject: [Neo] Requirements for an event framework for Neo4j
> >
> > Fellow developers!
> >
> > The time has come to start the work on an event framework for Neo4j. In
> > order to do a good work at this we would get input on what requirements
> you
> > have on an event framework. We would like to get a list of use cases for
> > which you would use an event framework, along with the features you think
> > the use case would need from the event framework (i.e. which events you
> > would like to receive notification about, and when). We would also like
> you
> > to motivate why these features are required by the use case. Events can
> > easily degrade performance if the framework is ill designed, so we would
> > like to keep things very lean.
> >
> > We have made some early analysis and arrived at the following
> conclusions:
> >
> > * There can be two kinds of event handlers: Proactive event handlers and
> > Reactive event handlers.
> > Proactive event handlers have the ability to preempt operations and
> Reactive
> > event handlers simply react to an event and cannot cause the event to not
> > succeed.
> >
> > * There are three kinds of events in Neo4j kernel:
> >   - Lifecycle events, such as shutdown.
> >   - Transactional events, such as start commit, commit successful,
> rollback,
> > etc.
> >   - Data modification events, such as node created, property changed,
> > relationship removed, etc.
> >
> > It might be possible that other components, such as the indexing
> component,
> > would want to add more events to the event framework.
> >
> > These are of course just some initial input to get your thoughts going,
> feel
> > free to think outside of the constraints above. Our ultimate goal is to
> > create an event framework that is as useful as possible while maintaining
> >
> > --
> > Tobias Ivarsson <tobias.ivars...@neotechnology.com>
> > Hacker, Neo Technology
> > www.neotechnology.com
> > Cellphone: +46 706 534857
> > _______________________________________________
> > Neo mailing list
> > User@lists.neo4j.org
> > https://lists.neo4j.org/mailman/listinfo/user
>
> _________________________________________________________________
> New Windows 7: Find the right PC for you. Learn more.
> http://windows.microsoft.com/shop
> _______________________________________________
> Neo mailing list
> User@lists.neo4j.org
> https://lists.neo4j.org/mailman/listinfo/user
>



-- 
Tobias Ivarsson <tobias.ivars...@neotechnology.com>
Hacker, Neo Technology
www.neotechnology.com
Cellphone: +46 706 534857
_______________________________________________
Neo mailing list
User@lists.neo4j.org
https://lists.neo4j.org/mailman/listinfo/user

Reply via email to