You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by ma...@apache.org on 2015/05/28 21:12:20 UTC
svn commit: r1682311 - in /tomcat/trunk/java/org/apache/tomcat/util/bcel: ./
classfile/
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-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org