if ( logger.isDebugEnabled() ) logger.debug( " Saving event before merge. " );
    private void beforeSave( Object argument, UpdateFilter filter )    {        if ( argument == null )            throw new IllegalArgumentException(                     "Argument to save cannot be null.");        // Save event before we enter.        Event currentEvent = CurrentDetails.getCreationEvent();        Event mergedEvent = (Event) internalSave( currentEvent, filter );//        FIXME ERROR HERE: //            internalSave is replacing details of Event even though it should be//            persistent.                 CurrentDetails.setCreationEvent( mergedEvent );        // Don't flush until we're done.        currentSession().setFlushMode(FlushMode.COMMIT);    }