code: public void transition (Class<?> clazz, String name, Transition trans)
          throws PersistenceException
      {
          if (!isTransitionApplied(clazz, name) && noteTransition(clazz, name)) {
              try {
                  trans.run();
  
              } catch (PersistenceException e) {
                  try {
                      clearTransition(clazz, name);
                  } catch (PersistenceException pe) {
                      log.warning("Failed to clear failed transition", "class", clazz, "name", name,
                                  pe);
                  }
                  throw e;
  
              } catch (RuntimeException rte) {
                  try {
                      clearTransition(clazz, name);
                  } catch (PersistenceException pe) {
                      log.warning("Failed to clear failed transition", "class", clazz, "name", name,
                                  pe);
                  }
                  throw rte;
              }
          }
      }
docs: Perform a transition if it has not already been applied, and record that it was applied.