[Serializable]
public class YourFlushListener : DefaultFlushEventListener
{
public virtual void OnFlush(FlushEvent @event)
{
try
{
base.OnFlush(@event);
}
catch (StaleStateException ex)
{
throw new DataConcurrencyException(ex.Message, ex);
}
}
}2011/2/4 Juan Cuello <[email protected]> > Hola a todos, > > Debido a que estamos desarrollando un proyecto con arquitectura > desacoplada, nos encontramos con un problema en la gestión de > concurrencia. El problema es que cuando salta una excepción de > concurrencia StaleStateException, queremos automatizar que en realidad > se lance una excepción de nuestro framework. > > La idea que he tenido es agregar un listener que herede por ejemplo de > DefaultUpdateEventListener para hacer lo siguiente: > > protected override object > PerformSaveOrUpdate(NHibernate.Event.SaveOrUpdateEvent @event) > { > try > { > return base.PerformSaveOrUpdate(@event); > } > catch (StaleStateException ex) > { > throw new DataConcurrencyException(ex.Message, ex); > } > } > > Para la concurrencia, que sólo saltaría en updates (lógicamente), de > qué clase debo heredar: DefaultUpdateEventListener, > DefaultSaveEventListener, DefaultSaveOrUpdateEventListener, > DefaultSaveOrUpdateCopyEventListener????? > > A alguien se le ocurre una forma mejor de hacer esto? > > Muchas gracias > > -- > Para escribir al Grupo, hágalo a esta dirección: > [email protected] > Para más, visite: http://groups.google.com/group/NHibernate-Hispano -- Fabio Maulo -- Para escribir al Grupo, hágalo a esta dirección: [email protected] Para más, visite: http://groups.google.com/group/NHibernate-Hispano
