Author: markt Date: Thu May 28 19:12:19 2015 New Revision: 1682311 URL: http://svn.apache.org/r1682311 Log: Merge BCEL changes from r1614166 to r1682271 The changes consist of: - code clean-up - Javadoc tweaks - some renaming There are no functional changes
Modified: tomcat/trunk/java/org/apache/tomcat/util/bcel/ (props changed) tomcat/trunk/java/org/apache/tomcat/util/bcel/Constants.java tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/AnnotationEntry.java tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/Annotations.java tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/ClassParser.java tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/Constant.java tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/ConstantLong.java tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/ConstantPool.java tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/ConstantUtf8.java tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/ElementValue.java tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/JavaClass.java tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/Utility.java tomcat/trunk/java/org/apache/tomcat/util/bcel/package.html Propchange: tomcat/trunk/java/org/apache/tomcat/util/bcel/ ------------------------------------------------------------------------------ --- svn:mergeinfo (original) +++ svn:mergeinfo Thu May 28 19:12:19 2015 @@ -1,2 +1,2 @@ -/commons/proper/bcel/trunk/src/main/java/org/apache/bcel:1149512-1614166 +/commons/proper/bcel/trunk/src/main/java/org/apache/bcel:1149512-1682271 /jakarta/bcel/trunk/src/main/java/org/apache/bcel:886845-1149511 Modified: tomcat/trunk/java/org/apache/tomcat/util/bcel/Constants.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/bcel/Constants.java?rev=1682311&r1=1682310&r2=1682311&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/tomcat/util/bcel/Constants.java (original) +++ tomcat/trunk/java/org/apache/tomcat/util/bcel/Constants.java Thu May 28 19:12:19 2015 @@ -24,7 +24,11 @@ package org.apache.tomcat.util.bcel; */ public interface Constants { - /** One of the access flags for fields, methods, or classes. + /** + * One of the access flags for fields, methods, or classes. + * @see "<a href='http://docs.oracle.com/javase/specs/jvms/se8/html/jvms-4.html#jvms-4.5'>Flag definitions for Fields in the Java Virtual Machine Specification (Java SE 8 Edition).</a>" + * @see "<a href='http://docs.oracle.com/javase/specs/jvms/se8/html/jvms-4.html#jvms-4.6'>Flag definitions for Methods in the Java Virtual Machine Specification (Java SE 8 Edition).</a>" + * @see "<a href='http://docs.oracle.com/javase/specs/jvms/se8/html/jvms-4.html#jvms-4.7.6-300-D.1-D.1'>Flag definitions for Classes in the Java Virtual Machine Specification (Java SE 8 Edition).</a>" */ public static final short ACC_FINAL = 0x0010; @@ -90,5 +94,4 @@ public interface Constants { "CONSTANT_Methodref", "CONSTANT_InterfaceMethodref", "CONSTANT_NameAndType", "", "", "CONSTANT_MethodHandle", "CONSTANT_MethodType", "", "CONSTANT_InvokeDynamic" }; - } Modified: tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/AnnotationEntry.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/AnnotationEntry.java?rev=1682311&r1=1682310&r2=1682311&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/AnnotationEntry.java (original) +++ tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/AnnotationEntry.java Thu May 28 19:12:19 2015 @@ -40,20 +40,20 @@ public class AnnotationEntry implements /** * Creates an AnnotationEntry from a DataInputStream * - * @param file + * @param input * @param constant_pool * @throws IOException */ - AnnotationEntry(DataInput file, ConstantPool constant_pool) throws IOException { + AnnotationEntry(DataInput input, ConstantPool constant_pool) throws IOException { this.constant_pool = constant_pool; - type_index = file.readUnsignedShort(); - int num_element_value_pairs = file.readUnsignedShort(); + type_index = input.readUnsignedShort(); + int num_element_value_pairs = input.readUnsignedShort(); element_value_pairs = new ArrayList<>(num_element_value_pairs); for (int i = 0; i < num_element_value_pairs; i++) { - element_value_pairs.add(new ElementValuePair(file, constant_pool)); + element_value_pairs.add(new ElementValuePair(input, constant_pool)); } } Modified: tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/Annotations.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/Annotations.java?rev=1682311&r1=1682310&r2=1682311&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/Annotations.java (original) +++ tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/Annotations.java Thu May 28 19:12:19 2015 @@ -31,15 +31,14 @@ public class Annotations { private final AnnotationEntry[] annotation_table; /** - * @param file Input stream + * @param input Input stream * @param constant_pool Array of constants */ - Annotations(DataInput file, ConstantPool constant_pool) - throws IOException { - final int annotation_table_length = (file.readUnsignedShort()); + Annotations(DataInput input, ConstantPool constant_pool) throws IOException { + final int annotation_table_length = (input.readUnsignedShort()); annotation_table = new AnnotationEntry[annotation_table_length]; for (int i = 0; i < annotation_table_length; i++) { - annotation_table[i] = new AnnotationEntry(file, constant_pool); + annotation_table[i] = new AnnotationEntry(input, constant_pool); } } Modified: tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/ClassParser.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/ClassParser.java?rev=1682311&r1=1682310&r2=1682311&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/ClassParser.java (original) +++ tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/ClassParser.java Thu May 28 19:12:19 2015 @@ -33,7 +33,7 @@ import org.apache.tomcat.util.bcel.Const * the caller. * * The structure and the names comply, except for a few conveniences, - * exactly with the <A href="ftp://java.sun.com/docs/specs/vmspec.ps"> + * exactly with the <A href="http://docs.oracle.com/javase/specs/"> * JVM specification 1.0</a>. See this paper for * further details about the structure of a bytecode file. * @@ -43,7 +43,7 @@ public final class ClassParser { private static final int MAGIC = 0xCAFEBABE; - private final DataInput file; + private final DataInput dataInputStream; private String class_name, superclass_name; private int access_flags; // Access rights of parsed class private String[] interface_names; // Names of implemented interfaces @@ -56,10 +56,10 @@ public final class ClassParser { /** * Parse class from the given stream. * - * @param file Input stream + * @param inputStream Input stream */ - public ClassParser(InputStream file) { - this.file = new DataInputStream(new BufferedInputStream(file, BUFSIZE)); + public ClassParser(InputStream inputStream) { + this.dataInputStream = new DataInputStream(new BufferedInputStream(inputStream, BUFSIZE)); } @@ -108,30 +108,29 @@ public final class ClassParser { * @throws ClassFormatException */ private void readAttributes() throws IOException, ClassFormatException { - int attributes_count; - attributes_count = file.readUnsignedShort(); + int attributes_count = dataInputStream.readUnsignedShort(); for (int i = 0; i < attributes_count; i++) { ConstantUtf8 c; String name; int name_index; int length; // Get class name from constant pool via `name_index' indirection - name_index = file.readUnsignedShort(); + name_index = dataInputStream.readUnsignedShort(); c = (ConstantUtf8) constant_pool.getConstant(name_index, Constants.CONSTANT_Utf8); name = c.getBytes(); // Length of data in bytes - length = file.readInt(); + length = dataInputStream.readInt(); if (name.equals("RuntimeVisibleAnnotations")) { if (runtimeVisibleAnnotations != null) { throw new ClassFormatException( "RuntimeVisibleAnnotations attribute is not allowed more than once in a class file"); } - runtimeVisibleAnnotations = new Annotations(file, constant_pool); + runtimeVisibleAnnotations = new Annotations(dataInputStream, constant_pool); } else { // All other attributes are skipped - Utility.skipFully(file, length); + Utility.skipFully(dataInputStream, length); } } } @@ -143,7 +142,7 @@ public final class ClassParser { * @throws ClassFormatException */ private void readClassInfo() throws IOException, ClassFormatException { - access_flags = file.readUnsignedShort(); + access_flags = dataInputStream.readUnsignedShort(); /* Interfaces are implicitely abstract, the flag should be set * according to the JVM specification. */ @@ -155,10 +154,10 @@ public final class ClassParser { throw new ClassFormatException("Class can't be both final and abstract"); } - int class_name_index = file.readUnsignedShort(); + int class_name_index = dataInputStream.readUnsignedShort(); class_name = Utility.getClassName(constant_pool, class_name_index); - int superclass_name_index = file.readUnsignedShort(); + int superclass_name_index = dataInputStream.readUnsignedShort(); if (superclass_name_index > 0) { // May be zero -> class is java.lang.Object superclass_name = Utility.getClassName(constant_pool, superclass_name_index); @@ -174,7 +173,7 @@ public final class ClassParser { * @throws ClassFormatException */ private void readConstantPool() throws IOException, ClassFormatException { - constant_pool = new ConstantPool(file); + constant_pool = new ConstantPool(dataInputStream); } @@ -184,9 +183,9 @@ public final class ClassParser { * @throws ClassFormatException */ private void readFields() throws IOException, ClassFormatException { - int fields_count = file.readUnsignedShort(); + int fields_count = dataInputStream.readUnsignedShort(); for (int i = 0; i < fields_count; i++) { - Utility.swallowFieldOrMethod(file); + Utility.swallowFieldOrMethod(dataInputStream); } } @@ -199,7 +198,7 @@ public final class ClassParser { * @throws ClassFormatException */ private void readID() throws IOException, ClassFormatException { - if (file.readInt() != MAGIC) { + if (dataInputStream.readInt() != MAGIC) { throw new ClassFormatException("It is not a Java .class file"); } } @@ -211,12 +210,11 @@ public final class ClassParser { * @throws ClassFormatException */ private void readInterfaces() throws IOException, ClassFormatException { - int interfaces_count; - interfaces_count = file.readUnsignedShort(); + int interfaces_count = dataInputStream.readUnsignedShort(); if (interfaces_count > 0) { interface_names = new String[interfaces_count]; for (int i = 0; i < interfaces_count; i++) { - int index = file.readUnsignedShort(); + int index = dataInputStream.readUnsignedShort(); interface_names[i] = Utility.getClassName(constant_pool, index); } } else { @@ -231,10 +229,9 @@ public final class ClassParser { * @throws ClassFormatException */ private void readMethods() throws IOException, ClassFormatException { - int methods_count; - methods_count = file.readUnsignedShort(); + int methods_count = dataInputStream.readUnsignedShort(); for (int i = 0; i < methods_count; i++) { - Utility.swallowFieldOrMethod(file); + Utility.swallowFieldOrMethod(dataInputStream); } } @@ -247,6 +244,6 @@ public final class ClassParser { private void readVersion() throws IOException, ClassFormatException { // file.readUnsignedShort(); // Unused minor // file.readUnsignedShort(); // Unused major - Utility.skipFully(file, 4); + Utility.skipFully(dataInputStream, 4); } } Modified: tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/Constant.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/Constant.java?rev=1682311&r1=1682310&r2=1682311&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/Constant.java (original) +++ tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/Constant.java Thu May 28 19:12:19 2015 @@ -57,28 +57,28 @@ public abstract class Constant { /** - * Read one constant from the given file, the type depends on a tag byte. + * Read one constant from the given input, the type depends on a tag byte. * - * @param file Input stream + * @param input Input stream * @return Constant object */ - static Constant readConstant(DataInput file ) throws IOException, + static Constant readConstant(DataInput input) throws IOException, ClassFormatException { - byte b = file.readByte(); // Read tag byte + byte b = input.readByte(); // Read tag byte int skipSize; switch (b) { case Constants.CONSTANT_Class: - return new ConstantClass(file); + return new ConstantClass(input); case Constants.CONSTANT_Integer: - return new ConstantInteger(file); + return new ConstantInteger(input); case Constants.CONSTANT_Float: - return new ConstantFloat(file); + return new ConstantFloat(input); case Constants.CONSTANT_Long: - return new ConstantLong(file); + return new ConstantLong(input); case Constants.CONSTANT_Double: - return new ConstantDouble(file); + return new ConstantDouble(input); case Constants.CONSTANT_Utf8: - return ConstantUtf8.getInstance(file); + return ConstantUtf8.getInstance(input); case Constants.CONSTANT_String: case Constants.CONSTANT_MethodType: skipSize = 2; // unsigned short @@ -96,7 +96,7 @@ public abstract class Constant { default: throw new ClassFormatException("Invalid byte tag in constant pool: " + b); } - Utility.skipFully(file, skipSize); + Utility.skipFully(input, skipSize); return null; } Modified: tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/ConstantLong.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/ConstantLong.java?rev=1682311&r1=1682310&r2=1682311&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/ConstantLong.java (original) +++ tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/ConstantLong.java Thu May 28 19:12:19 2015 @@ -41,9 +41,9 @@ public final class ConstantLong extends * @param file Input stream * @throws IOException */ - ConstantLong(DataInput file) throws IOException { + ConstantLong(DataInput input) throws IOException { super(Constants.CONSTANT_Long); - this.bytes = file.readLong(); + this.bytes = input.readLong(); } Modified: tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/ConstantPool.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/ConstantPool.java?rev=1682311&r1=1682310&r2=1682311&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/ConstantPool.java (original) +++ tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/ConstantPool.java Thu May 28 19:12:19 2015 @@ -39,20 +39,20 @@ public class ConstantPool { /** - * Read constants from given file stream. + * Read constants from given input stream. * - * @param file Input stream + * @param input Input stream * @throws IOException * @throws ClassFormatException */ - ConstantPool(DataInput file) throws IOException, ClassFormatException { - int constant_pool_count = file.readUnsignedShort(); + ConstantPool(DataInput input) throws IOException, ClassFormatException { + int constant_pool_count = input.readUnsignedShort(); constant_pool = new Constant[constant_pool_count]; /* constant_pool[0] is unused by the compiler and may be used freely * by the implementation. */ for (int i = 1; i < constant_pool_count; i++) { - constant_pool[i] = Constant.readConstant(file); + constant_pool[i] = Constant.readConstant(input); /* Quote from the JVM specification: * "All eight byte constants take up two spots in the constant pool. * If this is the n'th byte in the constant pool, then the next item Modified: tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/ConstantUtf8.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/ConstantUtf8.java?rev=1682311&r1=1682310&r2=1682311&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/ConstantUtf8.java (original) +++ tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/ConstantUtf8.java Thu May 28 19:12:19 2015 @@ -34,8 +34,8 @@ public final class ConstantUtf8 extends private final String bytes; - static ConstantUtf8 getInstance(DataInput file) throws IOException { - return new ConstantUtf8(file.readUTF()); + static ConstantUtf8 getInstance(DataInput input) throws IOException { + return new ConstantUtf8(input.readUTF()); } Modified: tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/ElementValue.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/ElementValue.java?rev=1682311&r1=1682310&r2=1682311&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/ElementValue.java (original) +++ tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/ElementValue.java Thu May 28 19:12:19 2015 @@ -13,7 +13,6 @@ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. - * */ package org.apache.tomcat.util.bcel.classfile; @@ -38,86 +37,59 @@ public abstract class ElementValue public abstract String stringifyValue(); - public static final int STRING = 's'; + public static final byte STRING = 's'; + public static final byte ENUM_CONSTANT = 'e'; + public static final byte CLASS = 'c'; + public static final byte ANNOTATION = '@'; + public static final byte ARRAY = '['; + public static final byte PRIMITIVE_INT = 'I'; + public static final byte PRIMITIVE_BYTE = 'B'; + public static final byte PRIMITIVE_CHAR = 'C'; + public static final byte PRIMITIVE_DOUBLE = 'D'; + public static final byte PRIMITIVE_FLOAT = 'F'; + public static final byte PRIMITIVE_LONG = 'J'; + public static final byte PRIMITIVE_SHORT = 'S'; + public static final byte PRIMITIVE_BOOLEAN = 'Z'; - public static final int ENUM_CONSTANT = 'e'; - - public static final int CLASS = 'c'; - - public static final int ANNOTATION = '@'; - - public static final int ARRAY = '['; - - public static final int PRIMITIVE_INT = 'I'; - - public static final int PRIMITIVE_BYTE = 'B'; - - public static final int PRIMITIVE_CHAR = 'C'; - - public static final int PRIMITIVE_DOUBLE = 'D'; - - public static final int PRIMITIVE_FLOAT = 'F'; - - public static final int PRIMITIVE_LONG = 'J'; - - public static final int PRIMITIVE_SHORT = 'S'; - - public static final int PRIMITIVE_BOOLEAN = 'Z'; - - public static ElementValue readElementValue(DataInput dis, - ConstantPool cpool) throws IOException + public static ElementValue readElementValue(DataInput input, ConstantPool cpool) throws IOException { - byte type = dis.readByte(); + byte type = input.readByte(); switch (type) { - case 'B': // byte - return new SimpleElementValue(PRIMITIVE_BYTE, dis - .readUnsignedShort(), cpool); - case 'C': // char - return new SimpleElementValue(PRIMITIVE_CHAR, dis - .readUnsignedShort(), cpool); - case 'D': // double - return new SimpleElementValue(PRIMITIVE_DOUBLE, dis - .readUnsignedShort(), cpool); - case 'F': // float - return new SimpleElementValue(PRIMITIVE_FLOAT, dis - .readUnsignedShort(), cpool); - case 'I': // int - return new SimpleElementValue(PRIMITIVE_INT, dis - .readUnsignedShort(), cpool); - case 'J': // long - return new SimpleElementValue(PRIMITIVE_LONG, dis - .readUnsignedShort(), cpool); - case 'S': // short - return new SimpleElementValue(PRIMITIVE_SHORT, dis - .readUnsignedShort(), cpool); - case 'Z': // boolean - return new SimpleElementValue(PRIMITIVE_BOOLEAN, dis - .readUnsignedShort(), cpool); - case 's': // String - return new SimpleElementValue(STRING, dis.readUnsignedShort(), - cpool); - case 'e': // Enum constant - dis.readUnsignedShort(); // Unused type_index - return new EnumElementValue(ENUM_CONSTANT, - dis.readUnsignedShort(), cpool); - case 'c': // Class - return new ClassElementValue(CLASS, dis.readUnsignedShort(), cpool); - case '@': // Annotation - // TODO isRuntimeVisible - return new AnnotationElementValue(ANNOTATION, new AnnotationEntry( - dis, cpool), cpool); - case '[': // Array - int numArrayVals = dis.readUnsignedShort(); - ElementValue[] evalues = new ElementValue[numArrayVals]; - for (int j = 0; j < numArrayVals; j++) - { - evalues[j] = ElementValue.readElementValue(dis, cpool); - } - return new ArrayElementValue(ARRAY, evalues, cpool); - default: - throw new ClassFormatException( - "Unexpected element value kind in annotation: " + type); + case PRIMITIVE_BYTE: + case PRIMITIVE_CHAR: + case PRIMITIVE_DOUBLE: + case PRIMITIVE_FLOAT: + case PRIMITIVE_INT: + case PRIMITIVE_LONG: + case PRIMITIVE_SHORT: + case PRIMITIVE_BOOLEAN: + case STRING: + return new SimpleElementValue(type, input.readUnsignedShort(), cpool); + + case ENUM_CONSTANT: + input.readUnsignedShort(); // Unused type_index + return new EnumElementValue(ENUM_CONSTANT, input.readUnsignedShort(), cpool); + + case CLASS: + return new ClassElementValue(CLASS, input.readUnsignedShort(), cpool); + + case ANNOTATION: + // TODO isRuntimeVisible + return new AnnotationElementValue(ANNOTATION, new AnnotationEntry(input, cpool), cpool); + + case ARRAY: + int numArrayVals = input.readUnsignedShort(); + ElementValue[] evalues = new ElementValue[numArrayVals]; + for (int j = 0; j < numArrayVals; j++) + { + evalues[j] = ElementValue.readElementValue(input, cpool); + } + return new ArrayElementValue(ARRAY, evalues, cpool); + + default: + throw new ClassFormatException( + "Unexpected element value kind in annotation: " + type); } } } Modified: tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/JavaClass.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/JavaClass.java?rev=1682311&r1=1682310&r2=1682311&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/JavaClass.java (original) +++ tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/JavaClass.java Thu May 28 19:12:19 2015 @@ -20,7 +20,7 @@ package org.apache.tomcat.util.bcel.clas /** * Represents a Java class, i.e., the data structures, constant pool, * fields, methods and commands contained in a Java .class file. - * See <a href="ftp://java.sun.com/docs/specs/">JVM specification</a> for details. + * See <a href="http://docs.oracle.com/javase/specs/">JVM specification</a> for details. * The intent of this class is to represent a parsed or otherwise existing * class file. Those interested in programatically generating classes * should see the <a href="../generic/ClassGen.html">ClassGen</a> class. Modified: tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/Utility.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/Utility.java?rev=1682311&r1=1682310&r2=1682311&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/Utility.java (original) +++ tomcat/trunk/java/org/apache/tomcat/util/bcel/classfile/Utility.java Thu May 28 19:12:19 2015 @@ -13,7 +13,6 @@ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. - * */ package org.apache.tomcat.util.bcel.classfile; @@ -86,5 +85,4 @@ final class Utility { int length = file.readInt(); skipFully(file, length); } - } Modified: tomcat/trunk/java/org/apache/tomcat/util/bcel/package.html URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/bcel/package.html?rev=1682311&r1=1682310&r2=1682311&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/tomcat/util/bcel/package.html (original) +++ tomcat/trunk/java/org/apache/tomcat/util/bcel/package.html Thu May 28 19:12:19 2015 @@ -23,7 +23,7 @@ This package contains basic classes for the <a href="http://commons.apache.org/bcel/">Byte Code Engineering Library</a> and constants defined by the -<a href="http://java.sun.com/docs/books/vmspec/html/VMSpecTOC.doc.html"> +<a href="http://docs.oracle.com/javase/specs/"> JVM specification</a>. </p> </body> --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org