160 * <ul> |
160 * <ul> |
161 * <li>starting from the initial class file bytes |
161 * <li>starting from the initial class file bytes |
162 * </li> |
162 * </li> |
163 * <li>for each transformer that was added with <code>canRetransform</code> |
163 * <li>for each transformer that was added with <code>canRetransform</code> |
164 * false, the bytes returned by |
164 * false, the bytes returned by |
165 * {@link ClassFileTransformer#transform(Module,String,Class,ProtectionDomain,byte[]) |
165 * {@link ClassFileTransformer#transform(Module,ClassLoader,String,Class,ProtectionDomain,byte[]) |
166 * transform} during the last class load or redefine are |
166 * transform} during the last class load or redefine are |
167 * reused as the output of the transformation; note that this is |
167 * reused as the output of the transformation; note that this is |
168 * equivalent to reapplying the previous transformation, unaltered; |
168 * equivalent to reapplying the previous transformation, unaltered; |
169 * except that {@code transform} method is not called. |
169 * except that {@code transform} method is not called. |
170 * </li> |
170 * </li> |
171 * <li>for each transformer that was added with <code>canRetransform</code> |
171 * <li>for each transformer that was added with <code>canRetransform</code> |
172 * true, the |
172 * true, the |
173 * {@link ClassFileTransformer#transform(Module,String,Class,ProtectionDomain,byte[]) |
173 * {@link ClassFileTransformer#transform(Module,ClassLoader,String,Class,ProtectionDomain,byte[]) |
174 * transform} method is called in these transformers |
174 * transform} method is called in these transformers |
175 * </li> |
175 * </li> |
176 * <li>the transformed class file bytes are installed as the new |
176 * <li>the transformed class file bytes are installed as the new |
177 * definition of the class |
177 * definition of the class |
178 * </li> |
178 * </li> |