package com.l7tech.server;

import com.l7tech.objectmodel.PersistentEntity;
import org.hibernate.HibernateException;
import org.hibernate.Session;
import org.springframework.orm.hibernate5.HibernateCallback;

class ae implements HibernateCallback<Void> {
   final PersistentEntity val$et;
   final HibernateEntityManager this$0;

   ae(HibernateEntityManager var1, PersistentEntity var2) {
      this.this$0 = var1;
      this.val$et = var2;
   }

   public Void doInHibernate(Session var1) throws HibernateException {
      PersistentEntity var2 = (PersistentEntity)var1.get(this.this$0.getImpClass(), this.val$et.getGoid());

      try {
         if (var2 == null) {
            this.this$0.a(this.val$et);
            var1.delete(this.val$et);
            return null;
         }
      } catch (HibernateException var3) {
         throw a(var3);
      }

      this.this$0.a(var2);
      var1.delete(var2);
      return null;
   }

   private static HibernateException a(HibernateException var0) {
      return var0;
   }
}
