code: @Override
      public final <E> E merge(E e)
      {
          checkClosed();
          checkTransactionNeeded();
          try
          {
              return getPersistenceDelegator().merge(e);
          }
          catch (Exception ex)
          {
              // on Rollback
              doRollback();
              throw new KunderaException(ex);
          }
      }
docs: Merge the state of the given entity into the current persistence context.
  
  @param entity
  @return the managed instance that the state was merged to
  @throws IllegalArgumentException
  if instance is not an entity or is a removed entity
  @throws TransactionRequiredException
  if invoked on a container-managed entity manager of type
  PersistenceContextType.TRANSACTION and there is no
  transaction
  @see javax.persistence.EntityManager#merge(java.lang.Object)