code: public static LinkedList<Class<?>> getLIFOSuperClassesList(Class<?> interceptorClass)
      {
          LinkedList<Class<?>> supers = new LinkedList<Class<?>>();
          supers.addFirst(interceptorClass);
          Class<?> interceptorSuperClass = interceptorClass.getSuperclass();
          while (interceptorSuperClass != null && interceptorSuperClass != java.lang.Object.class) // d469514
          {
              supers.addFirst(interceptorSuperClass);
              interceptorSuperClass = interceptorSuperClass.getSuperclass();
          }
  
          return supers;
      }
docs: Create a LIFO LinkedList of Class objects starting with a specified
  interceptor class object itself and then each of its the super classes.
  A LIFO is used so that the interceptor methods in the most general
  superclass are invoked first as required by the EJB specification.
  
  @param interceptorClass is the Class object of the interceptor class.
  
  @return the desired LIFO LinkedList of Class objects.