+
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+Version: GnuPG v1.4.3 (Darwin)
+
+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
+AJ47a6aNvCM6fZLrvN71RcEASaIPhA==
+=YzjH
+-----END PGP PUBLIC KEY BLOCK-----
diff --git a/README.html b/README.html
new file mode 100644
index 0000000000..0022a86e4f
--- /dev/null
+++ b/README.html
@@ -0,0 +1,39 @@
+Jakarta BCEL Version 5.2
+
+This is the 5.2 version of BCEL. It is available in both binary and source distributions.
+
+
+Note:
+The tar files in the distribution use GNU tar extensions
+and must be untarred with a GNU compatible version of tar. The version
+of tar on Solaris and Mac OS X will not work with these files
+
+Changes
+
+Thank you for using BCEL.
+
+From the Apache Jakarta Project
http://jakarta.apache.org/
+
+Signatures
+
+Many of the files have been digitally signed using GnuPG. If so,
+there will be an accompanying file.asc signature
+file in the same directory as the file (binaries/ or source/). The
+signing keys can be found in the distribution directory at <http://www.apache.org/dist/jakartai/bcel/KEYS>.
+
+Always download the KEYS file directly from the Apache site, never from a mirror site.
+
+
+Always test available signatures, e.g.,
+$ pgpk -a KEYS
+$ pgpv bcel-5.2.tar.gz.asc
+or,
+$ pgp -ka KEYS
+$ pgp bcel-5.2.tar.gz.asc
+or,
+$ gpg --import KEYS
+$ gpg --verify bcel-5.2.tar.gz.asc
+
+
+
diff --git a/doap_bcel.rdf b/doap_bcel.rdf
deleted file mode 100644
index 58c81f6434..0000000000
--- a/doap_bcel.rdf
+++ /dev/null
@@ -1,33 +0,0 @@
-
-
-
- Apache Jakarta BCEL
-
- Java
-
-
-
-
-
-
-
- Bytecode Engineering Library
-
- The Byte Code Engineering Library is intended to give users a convenient possibility to analyze, create, and manipulate (binary) Java class files (those ending with .class). Classes are represented by objects which contain all the symbolic information of the given class: methods, fields and byte code instructions, in particular.
-
-
-
-
-
-
-
-
-
- bcel
- 2003-09-06
- 5.1
-
-
-
-
-
diff --git a/examples/HelloWorldBuilder.java b/examples/HelloWorldBuilder.java
index 67ec3dec86..4466577514 100644
--- a/examples/HelloWorldBuilder.java
+++ b/examples/HelloWorldBuilder.java
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2000-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * 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.
+ *
+ */
import org.apache.bcel.Constants;
import org.apache.bcel.generic.ALOAD;
import org.apache.bcel.generic.ASTORE;
diff --git a/examples/JasminVisitor.java b/examples/JasminVisitor.java
index 53b0dde78f..222e86438f 100644
--- a/examples/JasminVisitor.java
+++ b/examples/JasminVisitor.java
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2000-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * 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.
+ *
+ */
import java.io.File;
import java.io.FileOutputStream;
import java.io.OutputStream;
diff --git a/examples/Mini/ASCII_CharStream.java b/examples/Mini/ASCII_CharStream.java
index f582a48923..529ee479db 100644
--- a/examples/Mini/ASCII_CharStream.java
+++ b/examples/Mini/ASCII_CharStream.java
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2000-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * 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.
+ *
+ */
/* Generated By:JavaCC: Do not edit this line. ASCII_CharStream.java Version 0.7pre6 */
package Mini;
diff --git a/examples/Mini/ASTExpr.java b/examples/Mini/ASTExpr.java
index 451af52994..f256bf15f5 100644
--- a/examples/Mini/ASTExpr.java
+++ b/examples/Mini/ASTExpr.java
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2000-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * 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.
+ *
+ */
/* Generated By:JJTree: Do not edit this line. ASTExpr.java */
/* JJT: 0.3pre1 */
diff --git a/examples/Mini/ASTFactor.java b/examples/Mini/ASTFactor.java
index 25a589731c..ea0a23eeef 100644
--- a/examples/Mini/ASTFactor.java
+++ b/examples/Mini/ASTFactor.java
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2000-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * 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.
+ *
+ */
/* Generated By:JJTree: Do not edit this line. ASTFactor.java */
/* JJT: 0.3pre1 */
diff --git a/examples/Mini/ASTFunAppl.java b/examples/Mini/ASTFunAppl.java
index 1c966446c6..58a023b8d9 100644
--- a/examples/Mini/ASTFunAppl.java
+++ b/examples/Mini/ASTFunAppl.java
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2000-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * 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.
+ *
+ */
/* Generated By:JJTree: Do not edit this line. ASTFunAppl.java */
/* JJT: 0.3pre1 */
diff --git a/examples/Mini/ASTFunDecl.java b/examples/Mini/ASTFunDecl.java
index e5d3068159..911f9a64dc 100644
--- a/examples/Mini/ASTFunDecl.java
+++ b/examples/Mini/ASTFunDecl.java
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2000-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * 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.
+ *
+ */
/* Generated By:JJTree: Do not edit this line. ASTFunDecl.java */
/* JJT: 0.3pre1 */
diff --git a/examples/Mini/ASTIdent.java b/examples/Mini/ASTIdent.java
index 874fbf28f4..33332256c2 100644
--- a/examples/Mini/ASTIdent.java
+++ b/examples/Mini/ASTIdent.java
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2000-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * 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.
+ *
+ */
/* Generated By:JJTree: Do not edit this line. ASTIdent.java */
/* JJT: 0.3pre1 */
diff --git a/examples/Mini/ASTIfExpr.java b/examples/Mini/ASTIfExpr.java
index 1a929addce..931e7426ee 100644
--- a/examples/Mini/ASTIfExpr.java
+++ b/examples/Mini/ASTIfExpr.java
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2000-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * 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.
+ *
+ */
/* Generated By:JJTree: Do not edit this line. ASTIfExpr.java */
/* JJT: 0.3pre1 */
diff --git a/examples/Mini/ASTInteger.java b/examples/Mini/ASTInteger.java
index 6960571743..008f9f12de 100644
--- a/examples/Mini/ASTInteger.java
+++ b/examples/Mini/ASTInteger.java
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2000-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * 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.
+ *
+ */
/* Generated By:JJTree: Do not edit this line. ASTInteger.java */
/* JJT: 0.3pre1 */
diff --git a/examples/Mini/ASTLetExpr.java b/examples/Mini/ASTLetExpr.java
index 883ea73ff5..bd1716eb09 100644
--- a/examples/Mini/ASTLetExpr.java
+++ b/examples/Mini/ASTLetExpr.java
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2000-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * 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.
+ *
+ */
/* Generated By:JJTree: Do not edit this line. ASTLetExpr.java */
/* JJT: 0.3pre1 */
diff --git a/examples/Mini/ASTProgram.java b/examples/Mini/ASTProgram.java
index 68ffd8d038..ac6c3829f2 100644
--- a/examples/Mini/ASTProgram.java
+++ b/examples/Mini/ASTProgram.java
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2000-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * 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.
+ *
+ */
/* Generated By:JJTree: Do not edit this line. ASTProgram.java */
/* JJT: 0.3pre1 */
diff --git a/examples/Mini/ASTTerm.java b/examples/Mini/ASTTerm.java
index 691be0c66a..ea3d558e8e 100644
--- a/examples/Mini/ASTTerm.java
+++ b/examples/Mini/ASTTerm.java
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2000-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * 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.
+ *
+ */
/* Generated By:JJTree: Do not edit this line. ASTTerm.java */
/* JJT: 0.3pre1 */
diff --git a/examples/Mini/EnvEntry.java b/examples/Mini/EnvEntry.java
index 6a2c39cfd7..dba1a59a6d 100644
--- a/examples/Mini/EnvEntry.java
+++ b/examples/Mini/EnvEntry.java
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2000-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * 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 Mini;
/**
diff --git a/examples/Mini/Environment.java b/examples/Mini/Environment.java
index ded86ee610..7d932bad4d 100644
--- a/examples/Mini/Environment.java
+++ b/examples/Mini/Environment.java
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2000-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * 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 Mini;
import java.util.Vector;
diff --git a/examples/Mini/Function.java b/examples/Mini/Function.java
index 51ccf87c6e..5c21cd8746 100644
--- a/examples/Mini/Function.java
+++ b/examples/Mini/Function.java
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2000-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * 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 Mini;
/**
diff --git a/examples/Mini/JJTMiniParserState.java b/examples/Mini/JJTMiniParserState.java
index dec0e0b1aa..b0218878e6 100644
--- a/examples/Mini/JJTMiniParserState.java
+++ b/examples/Mini/JJTMiniParserState.java
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2000-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * 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.
+ *
+ */
/* Generated By:JJTree: Do not edit this line. JJTMiniParserState.java */
package Mini;
diff --git a/examples/Mini/MiniC.java b/examples/Mini/MiniC.java
index 22a0c5c54c..b6fc084f52 100644
--- a/examples/Mini/MiniC.java
+++ b/examples/Mini/MiniC.java
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2000-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * 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 Mini;
import java.io.File;
import java.io.FileOutputStream;
diff --git a/examples/Mini/MiniParser.java b/examples/Mini/MiniParser.java
index 72b1fc4056..ee1a4079ab 100644
--- a/examples/Mini/MiniParser.java
+++ b/examples/Mini/MiniParser.java
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2000-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * 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.
+ *
+ */
/* Generated By:JJTree&JavaCC: Do not edit this line. MiniParser.java */
package Mini;
diff --git a/examples/Mini/MiniParserConstants.java b/examples/Mini/MiniParserConstants.java
index 0986a4d282..632543dea7 100644
--- a/examples/Mini/MiniParserConstants.java
+++ b/examples/Mini/MiniParserConstants.java
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2000-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * 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.
+ *
+ */
/* Generated By:JJTree&JavaCC: Do not edit this line. MiniParserConstants.java */
package Mini;
diff --git a/examples/Mini/MiniParserTokenManager.java b/examples/Mini/MiniParserTokenManager.java
index b1a8c114aa..2254b1426d 100644
--- a/examples/Mini/MiniParserTokenManager.java
+++ b/examples/Mini/MiniParserTokenManager.java
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2000-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * 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.
+ *
+ */
/* Generated By:JJTree&JavaCC: Do not edit this line. MiniParserTokenManager.java */
package Mini;
diff --git a/examples/Mini/MiniParserTreeConstants.java b/examples/Mini/MiniParserTreeConstants.java
index 5f4c54f66e..ae3d66cddb 100644
--- a/examples/Mini/MiniParserTreeConstants.java
+++ b/examples/Mini/MiniParserTreeConstants.java
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2000-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * 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.
+ *
+ */
/* Generated By:JJTree: Do not edit this line. MiniParserTreeConstants.java */
package Mini;
diff --git a/examples/Mini/Node.java b/examples/Mini/Node.java
index eb1e2cacd0..27740c1440 100644
--- a/examples/Mini/Node.java
+++ b/examples/Mini/Node.java
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2000-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * 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.
+ *
+ */
/* Generated By:JJTree: Do not edit this line. Node.java */
/* JJT: 0.3pre1 */
diff --git a/examples/Mini/ParseException.java b/examples/Mini/ParseException.java
index b23a3ea312..43fb346f44 100644
--- a/examples/Mini/ParseException.java
+++ b/examples/Mini/ParseException.java
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2000-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * 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.
+ *
+ */
/* Generated By:JavaCC: Do not edit this line. ParseException.java Version 0.7pre6 */
package Mini;
diff --git a/examples/Mini/SimpleNode.java b/examples/Mini/SimpleNode.java
index a3d4b4587c..bfd100ac04 100644
--- a/examples/Mini/SimpleNode.java
+++ b/examples/Mini/SimpleNode.java
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2000-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * 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.
+ *
+ */
/* Generated By:JJTree: Do not edit this line. SimpleNode.java */
/* JJT: 0.3pre1 */
diff --git a/examples/Mini/Token.java b/examples/Mini/Token.java
index 402f89463e..22e1942901 100644
--- a/examples/Mini/Token.java
+++ b/examples/Mini/Token.java
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2000-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * 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.
+ *
+ */
/* Generated By:JavaCC: Do not edit this line. Token.java Version 0.7pre3 */
package Mini;
diff --git a/examples/Mini/TokenMgrError.java b/examples/Mini/TokenMgrError.java
index e922f5e5f0..883d9b9b6e 100644
--- a/examples/Mini/TokenMgrError.java
+++ b/examples/Mini/TokenMgrError.java
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2000-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * 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.
+ *
+ */
/* Generated By:JavaCC: Do not edit this line. TokenMgrError.java Version 0.7pre2 */
package Mini;
diff --git a/examples/Mini/Variable.java b/examples/Mini/Variable.java
index 6f8215eb5b..36a655cd75 100644
--- a/examples/Mini/Variable.java
+++ b/examples/Mini/Variable.java
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2000-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * 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 Mini;
import org.apache.bcel.generic.LocalVariableGen;
diff --git a/examples/Package.java b/examples/Package.java
index 45d48d2c70..010bae39cf 100644
--- a/examples/Package.java
+++ b/examples/Package.java
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2000-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * 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.
+ *
+ */
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
diff --git a/examples/Peephole.java b/examples/Peephole.java
index 2a64445139..66bb993323 100644
--- a/examples/Peephole.java
+++ b/examples/Peephole.java
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2000-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * 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.
+ *
+ */
import java.util.Iterator;
import org.apache.bcel.Repository;
import org.apache.bcel.classfile.JavaClass;
diff --git a/examples/ProxyCreator.java b/examples/ProxyCreator.java
index a226f05345..dc136aabbe 100644
--- a/examples/ProxyCreator.java
+++ b/examples/ProxyCreator.java
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2000-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * 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.
+ *
+ */
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import org.apache.bcel.Constants;
diff --git a/examples/TransitiveHull.java b/examples/TransitiveHull.java
index 230f435dbb..a6d7feb9c5 100644
--- a/examples/TransitiveHull.java
+++ b/examples/TransitiveHull.java
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2000-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * 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.
+ *
+ */
import java.util.Arrays;
import java.util.regex.Pattern;
import org.apache.bcel.Constants;
diff --git a/examples/helloify.java b/examples/helloify.java
index df6a8304eb..7cb7d20991 100644
--- a/examples/helloify.java
+++ b/examples/helloify.java
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2000-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * 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.
+ *
+ */
import org.apache.bcel.Constants;
import org.apache.bcel.classfile.ClassParser;
import org.apache.bcel.classfile.Code;
diff --git a/examples/id.java b/examples/id.java
index 4b2828def2..8280f15ec4 100644
--- a/examples/id.java
+++ b/examples/id.java
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2000-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * 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.
+ *
+ */
import org.apache.bcel.Repository;
import org.apache.bcel.classfile.ClassParser;
import org.apache.bcel.classfile.Field;
diff --git a/examples/listclass.java b/examples/listclass.java
index c56ef6a90a..829f26eac0 100644
--- a/examples/listclass.java
+++ b/examples/listclass.java
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2000-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * 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.
+ *
+ */
import java.io.IOException;
import java.util.Hashtable;
import java.util.Vector;
diff --git a/examples/maxstack.java b/examples/maxstack.java
index 589c2d0ce9..72d16d3335 100644
--- a/examples/maxstack.java
+++ b/examples/maxstack.java
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2000-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * 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.
+ *
+ */
import org.apache.bcel.Repository;
import org.apache.bcel.classfile.ClassParser;
import org.apache.bcel.classfile.JavaClass;
diff --git a/examples/patchclass.java b/examples/patchclass.java
index e008d88b04..87ba3a2264 100644
--- a/examples/patchclass.java
+++ b/examples/patchclass.java
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2000-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * 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.
+ *
+ */
import org.apache.bcel.classfile.ClassParser;
import org.apache.bcel.classfile.Constant;
import org.apache.bcel.classfile.ConstantUtf8;
diff --git a/project.properties b/project.properties
index a5269b5a8b..7d395770d9 100644
--- a/project.properties
+++ b/project.properties
@@ -36,15 +36,17 @@ maven.test.failure.ignore = true
maven.test.skip = false
maven.javadoc.author = false
-maven.javadoc.links = http://java.sun.com/products/jdk/1.4/docs/api
+maven.javadoc.links = http://java.sun.com/j2se/1.4.2/docs/api/
maven.changelog.factory = org.apache.maven.svnlib.SvnChangeLogFactory
+maven.changes.issue.template = %URL%/bugzilla/show_bug.cgi?id=%ISSUE%
+
maven.xdoc.jsl = ../commons-build/commons-site.jsl
maven.xdoc.date = left
maven.xdoc.poweredby.image = maven-feather.png
maven.xdoc.version = ${pom.currentVersion}
-maven.xdoc.developmentProcessUrl = http://jakarta.apache.org/commons/charter.html
+maven.xdoc.developmentProcessUrl = http://jakarta.apache.org/site/management.html
maven.xdoc.includeProjectDocumentation = yes
maven.jar.override = off
diff --git a/project.xml b/project.xml
index 29f4c7aee1..b1df0bda80 100644
--- a/project.xml
+++ b/project.xml
@@ -4,7 +4,7 @@
3
jakarta-bcel
bcel
- 5.2rc1
+ 5.2
Apache Software Foundation
http://www.apache.org
@@ -31,10 +31,12 @@
jakarta
http://jakarta.apache.org/bcel/
- http://issues.apache.org/bugzilla/
- minotaur.apache.org
+ http://issues.apache.org/bugzilla
+ people.apache.org
+ /home/tcurdt/public_html/bcel/rc3/site
+
scm:svn:http://svn.apache.org/repos/asf/jakarta/bcel/trunk
http://svn.apache.org/repos/asf/jakarta/bcel/trunk
diff --git a/src/java/org/apache/bcel/Constants.java b/src/java/org/apache/bcel/Constants.java
index b4adf0a164..f906e64a06 100644
--- a/src/java/org/apache/bcel/Constants.java
+++ b/src/java/org/apache/bcel/Constants.java
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2000-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * 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.bcel;
/**
diff --git a/src/java/org/apache/bcel/classfile/AnnotationDefault.java b/src/java/org/apache/bcel/classfile/AnnotationDefault.java
deleted file mode 100644
index 119b92744b..0000000000
--- a/src/java/org/apache/bcel/classfile/AnnotationDefault.java
+++ /dev/null
@@ -1,88 +0,0 @@
-/*
- * Copyright 2000-2004 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * 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.bcel.classfile;
-
-import java.io.DataInputStream;
-import java.io.IOException;
-
-/**
- * represents the default value of a annotation for a method info
- *
- * @version $Id: AnnotationDefault 1 2005-02-13 03:15:08Z dbrosius $
- * @author D. Brosius
- * @since 5.2
- */
-public abstract class AnnotationDefault extends Attribute {
-
- ElementValue default_value;
-
-
- /**
- * @param annotation_type the subclass type of the annotation
- * @param name_index Index pointing to the name Code
- * @param length Content length in bytes
- * @param file Input stream
- * @param constant_pool Array of constants
- */
- AnnotationDefault(byte annotation_type, int name_index, int length, DataInputStream file,
- ConstantPool constant_pool) throws IOException {
- this(annotation_type, name_index, length, (ElementValue) null, constant_pool);
- default_value = new ElementValue(file, constant_pool);
- }
-
-
- /**
- * @param annotation_type the subclass type of the annotation
- * @param name_index Index pointing to the name Code
- * @param length Content length in bytes
- * @param defaultValue the annotation's default value
- * @param constant_pool Array of constants
- */
- public AnnotationDefault(byte annotation_type, int name_index, int length,
- ElementValue defaultValue, ConstantPool constant_pool) {
- super(annotation_type, name_index, length, constant_pool);
- setDefaultValue(defaultValue);
- }
-
-
- /**
- * Called by objects that are traversing the nodes of the tree implicitely
- * defined by the contents of a Java class. I.e., the hierarchy of methods,
- * fields, attributes, etc. spawns a tree of objects.
- *
- * @param v Visitor object
- */
- public void accept( Visitor v ) {
- // v.visitAnnotationDefault(this);
- }
-
-
- /**
- * @param defaultValue the default value of this methodinfo's annotation
- */
- public final void setDefaultValue( ElementValue defaultValue ) {
- default_value = defaultValue;
- }
-
-
- /**
- * @return the default value
- */
- public final ElementValue getDefaultValue() {
- return default_value;
- }
-}
diff --git a/src/java/org/apache/bcel/classfile/AnnotationEntry.java b/src/java/org/apache/bcel/classfile/AnnotationEntry.java
deleted file mode 100644
index 40b680638e..0000000000
--- a/src/java/org/apache/bcel/classfile/AnnotationEntry.java
+++ /dev/null
@@ -1,90 +0,0 @@
-/*
- * Copyright 2000-2004 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * 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.bcel.classfile;
-
-import java.io.DataInputStream;
-import java.io.IOException;
-import org.apache.bcel.Constants;
-
-/**
- * represents one annotation in the annotation table
- *
- * @version $Id: AnnotationEntry
- * @author D. Brosius
- * @since 5.2
- */
-public class AnnotationEntry implements Node, Constants {
-
- private int type_index;
- private int num_element_value_pairs;
- private ElementValuePair[] element_value_pairs;
- private ConstantPool constant_pool;
-
-
- /**
- * Construct object from file stream.
- * @param file Input stream
- * @throws IOException
- */
- AnnotationEntry(DataInputStream file, ConstantPool constant_pool) throws IOException {
- type_index = (file.readUnsignedShort());
- num_element_value_pairs = (file.readUnsignedShort());
- element_value_pairs = new ElementValuePair[num_element_value_pairs];
- for (int i = 0; i < num_element_value_pairs; i++) {
- element_value_pairs[i] = new ElementValuePair(file, constant_pool);
- }
- this.constant_pool = constant_pool;
- }
-
-
- /**
- * Called by objects that are traversing the nodes of the tree implicitely
- * defined by the contents of a Java class. I.e., the hierarchy of methods,
- * fields, attributes, etc. spawns a tree of objects.
- *
- * @param v Visitor object
- */
- public void accept( Visitor v ) {
- // v.visitAnnotationEntry(this);
- }
-
-
- /**
- * @return the annotation type name
- */
- public String getAnnotationType() {
- ConstantUtf8 c;
- c = (ConstantUtf8) constant_pool.getConstant(type_index, CONSTANT_Utf8);
- return c.getBytes();
- }
-
-
- /**
- * @return the number of element value pairs in this annotation entry
- */
- public final int getNumElementValuePairs() {
- return num_element_value_pairs;
- }
-
-
- /**
- * @return the element value pairs in this annotation entry
- */
- public ElementValuePair[] getElementValuePairs() {
- return element_value_pairs;
- }
-}
diff --git a/src/java/org/apache/bcel/classfile/Annotations.java b/src/java/org/apache/bcel/classfile/Annotations.java
deleted file mode 100644
index 2b3ab652d9..0000000000
--- a/src/java/org/apache/bcel/classfile/Annotations.java
+++ /dev/null
@@ -1,110 +0,0 @@
-/*
- * Copyright 2000-2004 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * 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.bcel.classfile;
-
-import java.io.DataInputStream;
-import java.io.IOException;
-
-/**
- * base class for annotations
- *
- * @version $Id: Annotations
- * @author D. Brosius
- * @since 5.2
- */
-public abstract class Annotations extends Attribute {
-
- private int annotation_table_length;
- private AnnotationEntry[] annotation_table; // Table of annotations
-
-
- /**
- * @param annotation_type the subclass type of the annotation
- * @param name_index Index pointing to the name Code
- * @param length Content length in bytes
- * @param file Input stream
- * @param constant_pool Array of constants
- */
- Annotations(byte annotation_type, int name_index, int length, DataInputStream file,
- ConstantPool constant_pool) throws IOException {
- this(annotation_type, name_index, length, (AnnotationEntry[]) null, constant_pool);
- annotation_table_length = (file.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);
- }
- }
-
-
- /**
- * @param annotation_type the subclass type of the annotation
- * @param name_index Index pointing to the name Code
- * @param length Content length in bytes
- * @param annotation_table the actual annotations
- * @param constant_pool Array of constants
- */
- public Annotations(byte annotation_type, int name_index, int length,
- AnnotationEntry[] annotation_table, ConstantPool constant_pool) {
- super(annotation_type, name_index, length, constant_pool);
- setAnnotationTable(annotation_table);
- }
-
-
- /**
- * Called by objects that are traversing the nodes of the tree implicitely
- * defined by the contents of a Java class. I.e., the hierarchy of methods,
- * fields, attributes, etc. spawns a tree of objects.
- *
- * @param v Visitor object
- */
- public void accept( Visitor v ) {
- // v.visitAnnotation(this);
- }
-
-
- /**
- * @param annotation_table the entries to set in this annotation
- */
- public final void setAnnotationTable( AnnotationEntry[] annotation_table ) {
- this.annotation_table = annotation_table;
- annotation_table_length = (annotation_table == null) ? 0 : annotation_table.length;
- }
-
-
- /**
- * @return the annotation entry table
- */
- public final AnnotationEntry[] getAnnotationTable() {
- return annotation_table;
- }
-
-
- /**
- * returns the array of annotation entries in this annotation
- */
- public AnnotationEntry[] getAnnotationEntries() {
- return annotation_table;
- }
-
-
- /**
- * @return the number of annotation entries in this annotation
- */
- public final int getNumAnnotations() {
- return annotation_table_length;
- }
-}
diff --git a/src/java/org/apache/bcel/classfile/DescendingVisitor.java b/src/java/org/apache/bcel/classfile/DescendingVisitor.java
index 4f80560c3b..0e8540cb03 100644
--- a/src/java/org/apache/bcel/classfile/DescendingVisitor.java
+++ b/src/java/org/apache/bcel/classfile/DescendingVisitor.java
@@ -100,24 +100,6 @@ public void visitJavaClass( JavaClass _clazz ) {
}
- public void visitAnnotation( Annotations annotation ) {
- stack.push(annotation);
- annotation.accept(visitor);
- AnnotationEntry[] entries = annotation.getAnnotationEntries();
- for (int i = 0; i < entries.length; i++) {
- entries[i].accept(this);
- }
- stack.pop();
- }
-
-
- public void visitAnnotationEntry( AnnotationEntry annotationEntry ) {
- stack.push(annotationEntry);
- annotationEntry.accept(visitor);
- stack.pop();
- }
-
-
public void visitField( Field field ) {
stack.push(field);
field.accept(visitor);
diff --git a/src/java/org/apache/bcel/classfile/ElementValue.java b/src/java/org/apache/bcel/classfile/ElementValue.java
deleted file mode 100644
index 4cda0883b7..0000000000
--- a/src/java/org/apache/bcel/classfile/ElementValue.java
+++ /dev/null
@@ -1,83 +0,0 @@
-/*
- * Copyright 2000-2004 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * 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.bcel.classfile;
-
-import java.io.DataInputStream;
-import java.io.IOException;
-
-/**
- * an ElementValuePair's element value. This class will be broken out into
- * different subclasses. This is a temporary implementation.
- *
- * @version $Id: ElementValue
- * @author D. Brosius
- * @since 5.2
- */
-public class ElementValue {
-
- private byte tag;
- private int const_value_index;
- private int type_name_index;
- private int const_name_index;
- private int class_info_index;
- private AnnotationEntry annotation;
- private int num_values;
- private ElementValue[] values;
-
-
- /**
- * Construct object from file stream.
- * @param file Input stream
- * @param constant_pool the constant pool
- * @throws IOException
- */
- ElementValue(DataInputStream file, ConstantPool constant_pool) throws IOException {
- tag = (file.readByte());
- switch (tag) {
- case 'B':
- case 'C':
- case 'D':
- case 'F':
- case 'I':
- case 'J':
- case 'S':
- case 'Z':
- case 's':
- const_value_index = (file.readUnsignedShort());
- break;
- case 'e':
- type_name_index = (file.readUnsignedShort());
- const_name_index = (file.readUnsignedShort());
- break;
- case 'c':
- class_info_index = (file.readUnsignedShort());
- break;
- case '@':
- annotation = new AnnotationEntry(file, constant_pool);
- break;
- case '[':
- num_values = (file.readUnsignedShort());
- values = new ElementValue[num_values];
- for (int i = 0; i < num_values; i++) {
- values[i] = new ElementValue(file, constant_pool);
- }
- break;
- default:
- throw new IOException("Invalid ElementValue tag: " + tag);
- }
- }
-}
diff --git a/src/java/org/apache/bcel/classfile/ElementValuePair.java b/src/java/org/apache/bcel/classfile/ElementValuePair.java
deleted file mode 100644
index 95d4777d76..0000000000
--- a/src/java/org/apache/bcel/classfile/ElementValuePair.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * Copyright 2000-2004 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * 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.bcel.classfile;
-
-import java.io.DataInputStream;
-import java.io.IOException;
-
-/**
- * an annotation's element value pair
- *
- * @version $Id: ElementValuePair
- * @author D. Brosius
- * @since 5.2
- */
-public class ElementValuePair {
-
- private int element_name_index;
- private ElementValue value;
-
-
- /**
- * Construct object from file stream.
- * @param file Input stream
- * @param constant_pool the constant pool
- * @throws IOException
- */
- ElementValuePair(DataInputStream file, ConstantPool constant_pool) throws IOException {
- element_name_index = (file.readUnsignedShort());
- value = new ElementValue(file, constant_pool);
- }
-}
diff --git a/src/java/org/apache/bcel/classfile/EmptyVisitor.java b/src/java/org/apache/bcel/classfile/EmptyVisitor.java
index 6291e628be..a80df808e6 100644
--- a/src/java/org/apache/bcel/classfile/EmptyVisitor.java
+++ b/src/java/org/apache/bcel/classfile/EmptyVisitor.java
@@ -32,22 +32,6 @@ protected EmptyVisitor() {
}
- public void visitAnnotation( Annotations obj ) {
- }
-
-
- public void visitParameterAnnotation( ParameterAnnotations obj ) {
- }
-
-
- public void visitAnnotationEntry( AnnotationEntry obj ) {
- }
-
-
- public void visitAnnotationDefault( AnnotationDefault obj ) {
- }
-
-
public void visitCode( Code obj ) {
}
diff --git a/src/java/org/apache/bcel/classfile/ParameterAnnotationEntry.java b/src/java/org/apache/bcel/classfile/ParameterAnnotationEntry.java
deleted file mode 100644
index cd6d71cae2..0000000000
--- a/src/java/org/apache/bcel/classfile/ParameterAnnotationEntry.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * Copyright 2000-2004 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * 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.bcel.classfile;
-
-import java.io.DataInputStream;
-import java.io.IOException;
-import org.apache.bcel.Constants;
-
-/**
- * represents one parameter annotation in the parameter annotation table
- *
- * @version $Id: ParameterAnnotationEntry
- * @author D. Brosius
- * @since 5.2
- */
-public class ParameterAnnotationEntry implements Node, Constants {
-
- private int annotation_table_length;
- private AnnotationEntry[] annotation_table;
-
-
- /**
- * Construct object from file stream.
- * @param file Input stream
- * @throws IOException
- */
- ParameterAnnotationEntry(DataInputStream file, ConstantPool constant_pool) throws IOException {
- annotation_table_length = (file.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);
- }
- }
-
-
- /**
- * Called by objects that are traversing the nodes of the tree implicitely
- * defined by the contents of a Java class. I.e., the hierarchy of methods,
- * fields, attributes, etc. spawns a tree of objects.
- *
- * @param v Visitor object
- */
- public void accept( Visitor v ) {
- // v.visitParameterAnnotationEntry(this);
- }
-
-
- /**
- * @return the number of annotation entries in this parameter annotation
- */
- public final int getNumAnnotations() {
- return annotation_table_length;
- }
-
-
- /**
- * returns the array of annotation entries in this annotation
- */
- public AnnotationEntry[] getAnnotationEntries() {
- return annotation_table;
- }
-}
diff --git a/src/java/org/apache/bcel/classfile/ParameterAnnotations.java b/src/java/org/apache/bcel/classfile/ParameterAnnotations.java
deleted file mode 100644
index fea23b3425..0000000000
--- a/src/java/org/apache/bcel/classfile/ParameterAnnotations.java
+++ /dev/null
@@ -1,114 +0,0 @@
-/*
- * Copyright 2000-2004 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * 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.bcel.classfile;
-
-import java.io.DataInputStream;
-import java.io.IOException;
-
-/**
- * base class for parameter annotations
- *
- * @version $Id: ParameterAnnotations
- * @author D. Brosius
- * @since 5.2
- */
-public abstract class ParameterAnnotations extends Attribute {
-
- private int num_parameters;
- private ParameterAnnotationEntry[] parameter_annotation_table; // Table of parameter annotations
-
-
- /**
- * @param parameter_annotation_type the subclass type of the parameter annotation
- * @param name_index Index pointing to the name Code
- * @param length Content length in bytes
- * @param file Input stream
- * @param constant_pool Array of constants
- */
- ParameterAnnotations(byte parameter_annotation_type, int name_index, int length,
- DataInputStream file, ConstantPool constant_pool) throws IOException {
- this(parameter_annotation_type, name_index, length, (ParameterAnnotationEntry[]) null,
- constant_pool);
- num_parameters = (file.readUnsignedByte());
- parameter_annotation_table = new ParameterAnnotationEntry[num_parameters];
- for (int i = 0; i < num_parameters; i++) {
- parameter_annotation_table[i] = new ParameterAnnotationEntry(file, constant_pool);
- }
- }
-
-
- /**
- * @param parameter_annotation_type the subclass type of the parameter annotation
- * @param name_index Index pointing to the name Code
- * @param length Content length in bytes
- * @param parameter_annotation_table the actual parameter annotations
- * @param constant_pool Array of constants
- */
- public ParameterAnnotations(byte parameter_annotation_type, int name_index, int length,
- ParameterAnnotationEntry[] parameter_annotation_table, ConstantPool constant_pool) {
- super(parameter_annotation_type, name_index, length, constant_pool);
- setParameterAnnotationTable(parameter_annotation_table);
- }
-
-
- /**
- * Called by objects that are traversing the nodes of the tree implicitely
- * defined by the contents of a Java class. I.e., the hierarchy of methods,
- * fields, attributes, etc. spawns a tree of objects.
- *
- * @param v Visitor object
- */
- public void accept( Visitor v ) {
- // v.visitParameterAnnotation(this);
- }
-
-
- /**
- * @param parameter_annotation_table the entries to set in this parameter annotation
- */
- public final void setParameterAnnotationTable(
- ParameterAnnotationEntry[] parameter_annotation_table ) {
- this.parameter_annotation_table = parameter_annotation_table;
- num_parameters = (parameter_annotation_table == null)
- ? 0
- : parameter_annotation_table.length;
- }
-
-
- /**
- * @return the parameter annotation entry table
- */
- public final ParameterAnnotationEntry[] getParameterAnnotationTable() {
- return parameter_annotation_table;
- }
-
-
- /**
- * returns the array of parameter annotation entries in this parameter annotation
- */
- public ParameterAnnotationEntry[] getParameterAnnotationEntries() {
- return parameter_annotation_table;
- }
-
-
- /**
- * @return the number of parameter annotation entries in this parameter annotation
- */
- public final int getNumParameterAnnotation() {
- return num_parameters;
- }
-}
diff --git a/src/java/org/apache/bcel/classfile/RuntimeInvisibleAnnotations.java b/src/java/org/apache/bcel/classfile/RuntimeInvisibleAnnotations.java
deleted file mode 100644
index 80cf2816eb..0000000000
--- a/src/java/org/apache/bcel/classfile/RuntimeInvisibleAnnotations.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*
- * Copyright 2000-2005 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * 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.bcel.classfile;
-
-import java.io.DataInputStream;
-import java.io.IOException;
-import org.apache.bcel.Constants;
-
-/**
- * represents an annotation that is represented in the class file
- * but is not provided to the JVM.
- *
- * @version $Id: RuntimeInvisibleAnnotations
- * @author D. Brosius
- * @since 5.2
- */
-public class RuntimeInvisibleAnnotations extends Annotations {
-
- /**
- * @param name_index Index pointing to the name Code
- * @param length Content length in bytes
- * @param file Input stream
- * @param constant_pool Array of constants
- */
- RuntimeInvisibleAnnotations(int name_index, int length, DataInputStream file,
- ConstantPool constant_pool) throws IOException {
- super(Constants.ATTR_RUNTIMEINVISIBLE_ANNOTATIONS, name_index, length, file, constant_pool);
- }
-
-
- /**
- * @return deep copy of this attribute
- */
- public Attribute copy( ConstantPool constant_pool ) {
- Annotations c = (Annotations) clone();
- return c;
- }
-}
diff --git a/src/java/org/apache/bcel/classfile/RuntimeInvisibleParameterAnnotations.java b/src/java/org/apache/bcel/classfile/RuntimeInvisibleParameterAnnotations.java
deleted file mode 100644
index e7c8f4f176..0000000000
--- a/src/java/org/apache/bcel/classfile/RuntimeInvisibleParameterAnnotations.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
- * Copyright 2000-2005 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * 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.bcel.classfile;
-
-import java.io.DataInputStream;
-import java.io.IOException;
-import org.apache.bcel.Constants;
-
-/**
- * represents a parameter annotation that is represented in the class file
- * but is not provided to the JVM.
- *
- * @version $Id: RuntimeInvisibleParameterAnnotations
- * @author D. Brosius
- * @since 5.2
- */
-public class RuntimeInvisibleParameterAnnotations extends ParameterAnnotations {
-
- /**
- * @param name_index Index pointing to the name Code
- * @param length Content length in bytes
- * @param file Input stream
- * @param constant_pool Array of constants
- */
- RuntimeInvisibleParameterAnnotations(int name_index, int length, DataInputStream file,
- ConstantPool constant_pool) throws IOException {
- super(Constants.ATTR_RUNTIMEINVISIBLE_PARAMETER_ANNOTATIONS, name_index, length, file,
- constant_pool);
- }
-
-
- /**
- * @return deep copy of this attribute
- */
- public Attribute copy( ConstantPool constant_pool ) {
- Annotations c = (Annotations) clone();
- return c;
- }
-}
diff --git a/src/java/org/apache/bcel/classfile/RuntimeVisibleAnnotations.java b/src/java/org/apache/bcel/classfile/RuntimeVisibleAnnotations.java
deleted file mode 100644
index 498bfa2159..0000000000
--- a/src/java/org/apache/bcel/classfile/RuntimeVisibleAnnotations.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*
- * Copyright 2000-2005 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * 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.bcel.classfile;
-
-import java.io.DataInputStream;
-import java.io.IOException;
-import org.apache.bcel.Constants;
-
-/**
- * represents an annotation that is represented in the class file
- * and is provided to the JVM.
- *
- * @version $Id: RuntimeVisibleAnnotations
- * @author D. Brosius
- * @since 5.2
- */
-public class RuntimeVisibleAnnotations extends Annotations {
-
- /**
- * @param name_index Index pointing to the name Code
- * @param length Content length in bytes
- * @param file Input stream
- * @param constant_pool Array of constants
- */
- RuntimeVisibleAnnotations(int name_index, int length, DataInputStream file,
- ConstantPool constant_pool) throws IOException {
- super(Constants.ATTR_RUNTIMEVISIBLE_ANNOTATIONS, name_index, length, file, constant_pool);
- }
-
-
- /**
- * @return deep copy of this attribute
- */
- public Attribute copy( ConstantPool constant_pool ) {
- Annotations c = (Annotations) clone();
- return c;
- }
-}
diff --git a/src/java/org/apache/bcel/classfile/RuntimeVisibleParameterAnnotations.java b/src/java/org/apache/bcel/classfile/RuntimeVisibleParameterAnnotations.java
deleted file mode 100644
index 61f08aa5d5..0000000000
--- a/src/java/org/apache/bcel/classfile/RuntimeVisibleParameterAnnotations.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
- * Copyright 2000-2005 The Apache Software Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * 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.bcel.classfile;
-
-import java.io.DataInputStream;
-import java.io.IOException;
-import org.apache.bcel.Constants;
-
-/**
- * represents a parameter annotation that is represented in the class file
- * and is provided to the JVM.
- *
- * @version $Id: RuntimeVisibleParameterAnnotations
- * @author D. Brosius
- * @since 5.2
- */
-public class RuntimeVisibleParameterAnnotations extends ParameterAnnotations {
-
- /**
- * @param name_index Index pointing to the name Code
- * @param length Content length in bytes
- * @param file Input stream
- * @param constant_pool Array of constants
- */
- RuntimeVisibleParameterAnnotations(int name_index, int length, DataInputStream file,
- ConstantPool constant_pool) throws IOException {
- super(Constants.ATTR_RUNTIMEVISIBLE_PARAMETER_ANNOTATIONS, name_index, length, file,
- constant_pool);
- }
-
-
- /**
- * @return deep copy of this attribute
- */
- public Attribute copy( ConstantPool constant_pool ) {
- Annotations c = (Annotations) clone();
- return c;
- }
-}
diff --git a/src/java/org/apache/bcel/generic/FieldGenOrMethodGen.java b/src/java/org/apache/bcel/generic/FieldGenOrMethodGen.java
index 745fb2bdd3..fb6ee7b35a 100644
--- a/src/java/org/apache/bcel/generic/FieldGenOrMethodGen.java
+++ b/src/java/org/apache/bcel/generic/FieldGenOrMethodGen.java
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2000-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * 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.bcel.generic;
import java.util.ArrayList;
diff --git a/src/java/org/apache/bcel/generic/Type.java b/src/java/org/apache/bcel/generic/Type.java
index 5bee448cd0..beae234eeb 100644
--- a/src/java/org/apache/bcel/generic/Type.java
+++ b/src/java/org/apache/bcel/generic/Type.java
@@ -62,6 +62,26 @@ protected Type(byte t, String s) {
}
+ /**
+ * @return hashcode of Type
+ */
+ public int hashCode() {
+ return type ^ signature.hashCode();
+ }
+
+
+ /**
+ * @return whether the Types are equal
+ */
+ public boolean equals(Object o) {
+ if (o instanceof Type) {
+ Type t = (Type)o;
+ return (type == t.type) && signature.equals(t.signature);
+ }
+ return false;
+ }
+
+
/**
* @return signature for given type.
*/
diff --git a/src/java/org/apache/bcel/util/BCELComparator.java b/src/java/org/apache/bcel/util/BCELComparator.java
index b3a8f5836d..2caf12552e 100644
--- a/src/java/org/apache/bcel/util/BCELComparator.java
+++ b/src/java/org/apache/bcel/util/BCELComparator.java
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2000-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * 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.bcel.util;
/**
diff --git a/src/java/org/apache/bcel/util/BCELFactory.java b/src/java/org/apache/bcel/util/BCELFactory.java
index a3c8c5bf39..a38be74efa 100644
--- a/src/java/org/apache/bcel/util/BCELFactory.java
+++ b/src/java/org/apache/bcel/util/BCELFactory.java
@@ -1,3 +1,19 @@
+/*
+ * Copyright 2000-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * 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.bcel.util;
import java.io.PrintWriter;
diff --git a/src/java/org/apache/bcel/util/BCELifier.java b/src/java/org/apache/bcel/util/BCELifier.java
index 60b771a76c..4c35d64278 100644
--- a/src/java/org/apache/bcel/util/BCELifier.java
+++ b/src/java/org/apache/bcel/util/BCELifier.java
@@ -192,7 +192,7 @@ static String printFlags( int flags, int reason ) {
return "0";
}
StringBuffer buf = new StringBuffer();
- for (int i = 0, pow = 1; i <= Constants.MAX_ACC_FLAG; i++) {
+ for (int i = 0, pow = 1; pow <= Constants.MAX_ACC_FLAG; i++) {
if ((flags & pow) != 0) {
if ((pow == Constants.ACC_SYNCHRONIZED) && (reason == FLAG_FOR_CLASS)) {
buf.append("ACC_SUPER | ");
diff --git a/xdocs/changes.xml b/xdocs/changes.xml
new file mode 100644
index 0000000000..b142926dbf
--- /dev/null
+++ b/xdocs/changes.xml
@@ -0,0 +1,185 @@
+
+
+
+
+ Deprecated: public final org.apache.bcel.classfile.LocalVariable getLocalVariable(int)
+
+
+ Deprecated: public java.lang.String getClassName(org.apache.bcel.generic.ConstantPoolGen)
+
+
+ Deprecated: public org.apache.bcel.generic.ObjectType getClassType(org.apache.bcel.generic.ConstantPoolGen)
+
+
+ Deprecated: public boolean referencesClass()
+
+
+ Deprecated: public boolean referencesInterface()
+
+
+ Deprecated: public org.apache.bcel.util.ClassVector implements java.io.Serializable
+
+
+
+
+ Examples with enum breaks Gump (JDK1.5)
+
+
+ Truncated "class" string in returned class name
+
+
+ Simple Javadoc cleanup
+
+
+ InnerClass doesn't implement Serializable
+
+
+ Unable to generate method that returns an array of integers
+
+
+ A bug in LocalVariableGen
+
+
+ JasminVisitor is outdated
+
+
+ BCEL depends on AWT
+
+
+ BCEL cannot be used as java.system.class.loader
+
+
+ nullpointer exception in InstructionHandle
+
+
+ Typo in javadocs
+
+
+ ConstantPoolGen.lookupClass(String) finds LAST entry rath...
+
+
+ Size of LDC_W's operand can be incorrect
+
+
+ InstructionList.copy() fails with Select instruction.
+
+
+ annoying print statement in org.apache.bcel.classfile.Sig...
+
+
+ JavaClass.getAllInterfaces() can throw NullPointerExcepti...
+
+
+ Repository ignores classes that have been added to it
+
+
+ ANEWARRAY does not implement StackConsumer
+
+
+ Repository.instanceOf() can throw NullPointerException
+
+
+ StackMapType.printIndex fails if index is -1
+
+
+ ReturnaddressType.equals() fails with NullPointerException
+
+
+ Verification failure when nested finally blocks
+
+
+ PUTFIELD error msg wrong
+
+
+ Suggestion to solve the Problem with generic.Instruction ...
+
+
+ Incorrect verification of class files
+
+
+ OutOfRange exception in Pass2Verifier.validJavaIdentifier
+
+
+ Code attribute set for native (and abstract?) methods.
+
+
+ InstructionList.move is broken when target == il.getEnd()
+
+
+ bad iinc behavior with large local variable index
+
+
+ StructuralVerifier can't find protected fields of ...
+
+
+ BCEL does not compile with JDK 1.5.0-beta-b32c
+
+
+ Corrupted instruction list created on valid class file
+
+
+ LDC_W emits output with only one parameter byte
+
+
+ Build problems against jdk1.5
+
+
+ ClassPath.getClassPath() does not handle multiple java.ex...
+
+
+ Public modifier for OperandStack.size()
+
+
+ Version information missing from MANIFEST.MF file.
+
+
+ Wrong word in manual: use 'factorial', not 'faculty'
+
+
+ A security issue with public mutable static fields in BECL
+
+
+ Unnecessary string object allocation in ConstantPoolGen
+
+
+ ClassCastException on justice
+
+
+ XSLT transforms broken in Turkish Locale.
+
+
+ Branch target offset too large for short
+
+
+ "Illegal Opcode Detected" exception thrown in "new Method...
+
+
+ Source downloads are broken
+
+
+ LineNumberTable toString method uses jdk 1.4 StringBuffer...
+
+
+
+
+ LocalVariableTable.getLocalVariable isn't good en...
+
+
+ Verifer does not report the signature of methods not found
+
+
+ Allow to get the InFrame of the ControlFlowGraph
+
+
+ Add support for new Jdk5.0 access flags
+
+
+ Wrap JavaClass repository class (map values) with...
+
+
+
+
+
+
+
+
diff --git a/xdocs/index.xml b/xdocs/index.xml
index 12dd7df5bb..750f174248 100644
--- a/xdocs/index.xml
+++ b/xdocs/index.xml
@@ -33,7 +33,7 @@
BCEL is already being used successfully in several projects such
as compilers, optimizers, obsfuscators, code generators
and analysis tools. Unfortunately there hasn't been much development
- going on over the past few years. Feel free to help out or you
+ going on over the past few years. Feel free to help out or you
might want to have a look into the ASM project at objectweb.
diff --git a/xdocs/news.xml b/xdocs/news.xml
index 03e6130df2..ad2fbb599d 100644
--- a/xdocs/news.xml
+++ b/xdocs/news.xml
@@ -2,7 +2,6 @@
- Jason van Zyl
News and Status
@@ -10,21 +9,20 @@
- 1 February 2006 - BCEL 5.2 released!
+ 4. June 2006 - BCEL 5.2 released!
The Byte Code Engineering Library version 5.2 has been released
- after a long period of testing. It mainly contains bug fixes
- and introduces the possibility to use custom repositories.
+ after a long period of testing. It mainly contains bug fixes.
- 25 April 2003 - BCEL 5.1 released!
+ 25. April 2003 - BCEL 5.1 released!
The Byte Code Engineering Library version 5.1 has been released
after a long period of testing. It mainly contains bug fixes
and introduces the possibility to use custom repositories.
- 27 October 2001 - BCEL moves to Jakarta!
+ 27. October 2001 - BCEL moves to Jakarta!
The Byte Code Engineering Library is now an official
subproject of Jakarta. A special thanks goes to Markus Dahm