public virtual void ManageInsertTriggerAfter(string className, object @object, NeoDatis.Odb.OID
                                              oid)
 {
     if (HasInsertTriggersFor(className))
     {
         NeoDatis.Odb.Core.Trigger.InsertTrigger trigger  = null;
         System.Collections.IEnumerator          iterator = GetListOfInsertTriggersFor(className).GetEnumerator
                                                                ();
         while (iterator.MoveNext())
         {
             trigger = (NeoDatis.Odb.Core.Trigger.InsertTrigger)iterator.Current;
             if (trigger.GetOdb() == null)
             {
                 trigger.SetOdb(new NeoDatis.Odb.Impl.Main.ODBForTrigger(storageEngine));
             }
             try
             {
                 trigger.AfterInsert(Transform(@object), oid);
             }
             catch (System.Exception e)
             {
                 NeoDatis.Odb.Core.IError warning = NeoDatis.Odb.Core.NeoDatisError.AfterInsertTriggerHasThrownException
                                                    .AddParameter(trigger.GetType().FullName).AddParameter(NeoDatis.Tool.Wrappers.OdbString
                                                                                                           .ExceptionToString(e, false));
                 if (NeoDatis.Odb.OdbConfiguration.DisplayWarnings())
                 {
                     NeoDatis.Tool.DLogger.Info(warning);
                 }
             }
         }
     }
 }
Esempio n. 2
0
 public virtual void AddInsertTrigger(System.Type clazz, NeoDatis.Odb.Core.Trigger.InsertTrigger
                                      trigger)
 {
     if (trigger is NeoDatis.Odb.Core.Server.Trigger.ServerInsertTrigger)
     {
         throw new NeoDatis.Odb.ODBRuntimeException(NeoDatis.Odb.Core.NeoDatisError.CanNotAssociateServerTriggerToLocalOrClientOdb
                                                    .AddParameter(trigger.GetType().FullName));
     }
     storageEngine.AddInsertTriggerFor(clazz.FullName, trigger);
 }
 public virtual void AddInsertTriggerFor(string className, NeoDatis.Odb.Core.Trigger.InsertTrigger
                                         trigger)
 {
     if (className == null)
     {
         className = AllClassTrigger;
     }
     NeoDatis.Tool.Wrappers.List.IOdbList <NeoDatis.Odb.Core.Trigger.Trigger> c = listOfInsertTriggers
                                                                                  [className];
     if (c == null)
     {
         c = new NeoDatis.Tool.Wrappers.List.OdbArrayList <NeoDatis.Odb.Core.Trigger.Trigger
                                                           >();
         listOfInsertTriggers.Add(className, c);
     }
     c.Add(trigger);
 }
 public abstract void AddInsertTrigger(System.Type clazz, NeoDatis.Odb.Core.Trigger.InsertTrigger
                                       trigger);
 public virtual void AddInsertTriggerFor(string className, NeoDatis.Odb.Core.Trigger.InsertTrigger
                                         trigger)
 {
     triggerManager.AddInsertTriggerFor(className, trigger);
 }
Esempio n. 6
0
 public virtual void AddInsertTrigger(NeoDatis.Odb.Core.Trigger.InsertTrigger trigger
                                      )
 {
     throw new NeoDatis.Odb.ODBRuntimeException(NeoDatis.Odb.Core.NeoDatisError.OperationNotAllowedInTrigger
                                                );
 }
 public abstract void AddInsertTriggerFor(string arg1, NeoDatis.Odb.Core.Trigger.InsertTrigger
                                          arg2);