From 774508d17c92daa8c469ad80525de2f8655e4019 Mon Sep 17 00:00:00 2001 From: chiba Date: Wed, 11 Jan 2006 06:45:57 +0000 Subject: [PATCH] updated copyright notices git-svn-id: http://anonsvn.jboss.org/repos/javassist/trunk@234 30ef5769-5b8d-40dd-aea6-55b5d6557bb3 --- License.html | 4 +- Readme.html | 2 +- src/main/javassist/ByteArrayClassPath.java | 2 +- .../javassist/CannotCompileException.java | 2 +- src/main/javassist/ClassClassPath.java | 2 +- src/main/javassist/ClassMap.java | 2 +- src/main/javassist/ClassPath.java | 2 +- src/main/javassist/ClassPool.java | 2 +- src/main/javassist/ClassPoolTail.java | 2 +- src/main/javassist/CodeConverter.java | 2 +- src/main/javassist/CtArray.java | 2 +- src/main/javassist/CtBehavior.java | 2 +- src/main/javassist/CtClass.java | 4 +- src/main/javassist/CtClassType.java | 2 +- src/main/javassist/CtConstructor.java | 2 +- src/main/javassist/CtField.java | 2 +- src/main/javassist/CtMember.java | 2 +- src/main/javassist/CtMethod.java | 2 +- src/main/javassist/CtNewClass.java | 2 +- src/main/javassist/CtNewConstructor.java | 2 +- src/main/javassist/CtNewMethod.java | 2 +- src/main/javassist/CtNewNestedClass.java | 2 +- .../javassist/CtNewWrappedConstructor.java | 2 +- src/main/javassist/CtNewWrappedMethod.java | 2 +- src/main/javassist/CtPrimitiveType.java | 2 +- src/main/javassist/Loader.java | 2 +- src/main/javassist/LoaderClassPath.java | 2 +- src/main/javassist/Modifier.java | 2 +- src/main/javassist/NotFoundException.java | 2 +- src/main/javassist/SerialVersionUID.java | 2 +- src/main/javassist/Translator.java | 2 +- src/main/javassist/URLClassPath.java | 2 +- src/main/javassist/bytecode/AccessFlag.java | 2 +- .../bytecode/AnnotationDefaultAttribute.java | 2 +- .../bytecode/AnnotationsAttribute.java | 2 +- .../javassist/bytecode/AttributeInfo.java | 2 +- src/main/javassist/bytecode/BadBytecode.java | 2 +- src/main/javassist/bytecode/ByteArray.java | 2 +- src/main/javassist/bytecode/Bytecode.java | 2 +- src/main/javassist/bytecode/ClassFile.java | 2 +- .../javassist/bytecode/ClassFileWriter.java | 2 +- src/main/javassist/bytecode/CodeAnalyzer.java | 2 +- .../javassist/bytecode/CodeAttribute.java | 2 +- src/main/javassist/bytecode/CodeIterator.java | 2 +- src/main/javassist/bytecode/ConstPool.java | 2 +- .../javassist/bytecode/ConstantAttribute.java | 2 +- .../bytecode/DeprecatedAttribute.java | 2 +- src/main/javassist/bytecode/Descriptor.java | 2 +- .../bytecode/EnclosingMethodAttribute.java | 2 +- .../javassist/bytecode/ExceptionTable.java | 2 +- .../bytecode/ExceptionsAttribute.java | 2 +- src/main/javassist/bytecode/FieldInfo.java | 2 +- .../bytecode/InnerClassesAttribute.java | 2 +- .../bytecode/LineNumberAttribute.java | 2 +- .../bytecode/LocalVariableAttribute.java | 2 +- src/main/javassist/bytecode/LongVector.java | 2 +- src/main/javassist/bytecode/MethodInfo.java | 2 +- src/main/javassist/bytecode/Mnemonic.java | 2 +- src/main/javassist/bytecode/Opcode.java | 2 +- .../ParameterAnnotationsAttribute.java | 2 +- .../bytecode/SignatureAttribute.java | 2 +- .../bytecode/SourceFileAttribute.java | 2 +- .../bytecode/SyntheticAttribute.java | 2 +- .../bytecode/annotation/AnnotationImpl.java | 2 +- .../annotation/AnnotationsWriter.java | 2 +- .../javassist/compiler/AccessorMaker.java | 2 +- src/main/javassist/compiler/CodeGen.java | 2 +- src/main/javassist/compiler/CompileError.java | 2 +- src/main/javassist/compiler/Javac.java | 2 +- src/main/javassist/compiler/JvstCodeGen.java | 2 +- .../javassist/compiler/JvstTypeChecker.java | 2 +- src/main/javassist/compiler/KeywordTable.java | 2 +- src/main/javassist/compiler/Lex.java | 2 +- .../javassist/compiler/MemberCodeGen.java | 2 +- .../javassist/compiler/MemberResolver.java | 2 +- .../javassist/compiler/NoFieldException.java | 2 +- src/main/javassist/compiler/Parser.java | 2 +- .../javassist/compiler/ProceedHandler.java | 2 +- src/main/javassist/compiler/SymbolTable.java | 2 +- src/main/javassist/compiler/SyntaxError.java | 2 +- src/main/javassist/compiler/TokenId.java | 2 +- src/main/javassist/compiler/TypeChecker.java | 2 +- src/main/javassist/compiler/ast/ASTList.java | 2 +- src/main/javassist/compiler/ast/ASTree.java | 2 +- .../javassist/compiler/ast/ArrayInit.java | 16 + .../javassist/compiler/ast/AssignExpr.java | 2 +- src/main/javassist/compiler/ast/BinExpr.java | 2 +- src/main/javassist/compiler/ast/CallExpr.java | 2 +- src/main/javassist/compiler/ast/CastExpr.java | 2 +- src/main/javassist/compiler/ast/CondExpr.java | 2 +- .../javassist/compiler/ast/Declarator.java | 2 +- .../javassist/compiler/ast/DoubleConst.java | 2 +- src/main/javassist/compiler/ast/Expr.java | 2 +- .../javassist/compiler/ast/FieldDecl.java | 2 +- .../compiler/ast/InstanceOfExpr.java | 2 +- src/main/javassist/compiler/ast/IntConst.java | 2 +- src/main/javassist/compiler/ast/Keyword.java | 2 +- src/main/javassist/compiler/ast/Member.java | 2 +- .../javassist/compiler/ast/MethodDecl.java | 2 +- src/main/javassist/compiler/ast/NewExpr.java | 2 +- src/main/javassist/compiler/ast/Pair.java | 2 +- src/main/javassist/compiler/ast/Stmnt.java | 2 +- src/main/javassist/compiler/ast/StringL.java | 2 +- src/main/javassist/compiler/ast/Symbol.java | 2 +- src/main/javassist/compiler/ast/Variable.java | 2 +- src/main/javassist/compiler/ast/Visitor.java | 2 +- .../javassist/convert/TransformAfter.java | 2 +- .../javassist/convert/TransformBefore.java | 2 +- src/main/javassist/convert/TransformCall.java | 2 +- .../convert/TransformFieldAccess.java | 2 +- src/main/javassist/convert/TransformNew.java | 2 +- .../javassist/convert/TransformReadField.java | 2 +- .../convert/TransformWriteField.java | 2 +- src/main/javassist/convert/Transformer.java | 2 +- src/main/javassist/expr/Cast.java | 2 +- src/main/javassist/expr/ConstructorCall.java | 15 + src/main/javassist/expr/Expr.java | 2 +- src/main/javassist/expr/ExprEditor.java | 2 +- src/main/javassist/expr/FieldAccess.java | 2 +- src/main/javassist/expr/Handler.java | 2 +- src/main/javassist/expr/Instanceof.java | 2 +- src/main/javassist/expr/MethodCall.java | 2 +- src/main/javassist/expr/NewArray.java | 2 +- src/main/javassist/expr/NewExpr.java | 2 +- src/main/javassist/runtime/Cflow.java | 2 +- src/main/javassist/runtime/Desc.java | 2 +- src/main/javassist/runtime/DotClass.java | 2 +- src/main/javassist/runtime/Inner.java | 2 +- src/main/javassist/tools/Dump.java | 2 +- .../tools/reflect/CannotCreateException.java | 2 +- .../tools/reflect/CannotInvokeException.java | 2 +- .../tools/reflect/CannotReflectException.java | 2 +- .../tools/reflect/ClassMetaobject.java | 2 +- .../javassist/tools/reflect/Compiler.java | 2 +- src/main/javassist/tools/reflect/Loader.java | 2 +- .../javassist/tools/reflect/Metalevel.java | 2 +- .../javassist/tools/reflect/Metaobject.java | 2 +- .../javassist/tools/reflect/Reflection.java | 2 +- src/main/javassist/tools/reflect/Sample.java | 2 +- .../javassist/tools/rmi/AppletServer.java | 2 +- .../javassist/tools/rmi/ObjectImporter.java | 2 +- .../tools/rmi/ObjectNotFoundException.java | 2 +- src/main/javassist/tools/rmi/Proxy.java | 2 +- .../javassist/tools/rmi/RemoteException.java | 2 +- src/main/javassist/tools/rmi/RemoteRef.java | 2 +- src/main/javassist/tools/rmi/Sample.java | 2 +- .../javassist/tools/rmi/StubGenerator.java | 2 +- .../javassist/tools/web/BadHttpRequest.java | 2 +- src/main/javassist/tools/web/Viewer.java | 2 +- src/main/javassist/tools/web/Webserver.java | 2 +- src/main/javassist/util/HotSwapper.java | 2 +- .../javassist/util/proxy/FactoryHelper.java | 2 +- .../javassist/util/proxy/MethodFilter.java | 60 +- .../javassist/util/proxy/MethodHandler.java | 96 +- .../javassist/util/proxy/ProxyFactory.java | 1398 ++++++++--------- .../javassist/util/proxy/ProxyObject.java | 2 +- .../javassist/util/proxy/RuntimeSupport.java | 314 ++-- 157 files changed, 1118 insertions(+), 1087 deletions(-) diff --git a/License.html b/License.html index 7a734c3a..3a9d52f9 100644 --- a/License.html +++ b/License.html @@ -337,7 +337,7 @@ MISCELLANEOUS. basis. Nothing herein is intended or shall be deemed to constitute any admission of liability.13. MULTIPLE-LICENSED CODE. @@ -353,7 +353,7 @@ MISCELLANEOUS.

The Original Code is Javassist.

The Initial Developer of the Original Code is Shigeru Chiba. Portions created by the Initial Developer are
  - Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved.

Contributor(s): ______________________________________.

Alternatively, the contents of this file may be used under the terms of diff --git a/Readme.html b/Readme.html index 9c88637d..3d7f8d92 100644 --- a/Readme.html +++ b/Readme.html @@ -7,7 +7,7 @@

Javassist version 3

-

Copyright (C) 2000-2005 by Shigeru Chiba, All rights reserved.

+

Copyright (C) 2000-2006 by Shigeru Chiba, All rights reserved.


diff --git a/src/main/javassist/ByteArrayClassPath.java b/src/main/javassist/ByteArrayClassPath.java index 2bcd2574..54b17a0e 100644 --- a/src/main/javassist/ByteArrayClassPath.java +++ b/src/main/javassist/ByteArrayClassPath.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/CannotCompileException.java b/src/main/javassist/CannotCompileException.java index a16a4e5e..7ea97b0f 100644 --- a/src/main/javassist/CannotCompileException.java +++ b/src/main/javassist/CannotCompileException.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/ClassClassPath.java b/src/main/javassist/ClassClassPath.java index 1990f3ef..5217396b 100644 --- a/src/main/javassist/ClassClassPath.java +++ b/src/main/javassist/ClassClassPath.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/ClassMap.java b/src/main/javassist/ClassMap.java index 228eb265..916dee5e 100644 --- a/src/main/javassist/ClassMap.java +++ b/src/main/javassist/ClassMap.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/ClassPath.java b/src/main/javassist/ClassPath.java index 4148a59d..0da29aae 100644 --- a/src/main/javassist/ClassPath.java +++ b/src/main/javassist/ClassPath.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/ClassPool.java b/src/main/javassist/ClassPool.java index 35b92f93..b0d8f9e9 100644 --- a/src/main/javassist/ClassPool.java +++ b/src/main/javassist/ClassPool.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/ClassPoolTail.java b/src/main/javassist/ClassPoolTail.java index 2f6fb1ea..db75f282 100644 --- a/src/main/javassist/ClassPoolTail.java +++ b/src/main/javassist/ClassPoolTail.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/CodeConverter.java b/src/main/javassist/CodeConverter.java index 240312df..b4c47676 100644 --- a/src/main/javassist/CodeConverter.java +++ b/src/main/javassist/CodeConverter.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/CtArray.java b/src/main/javassist/CtArray.java index e8e50721..328b1bc9 100644 --- a/src/main/javassist/CtArray.java +++ b/src/main/javassist/CtArray.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/CtBehavior.java b/src/main/javassist/CtBehavior.java index 41e1df7e..71047844 100644 --- a/src/main/javassist/CtBehavior.java +++ b/src/main/javassist/CtBehavior.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/CtClass.java b/src/main/javassist/CtClass.java index d4178e7f..7e23352c 100644 --- a/src/main/javassist/CtClass.java +++ b/src/main/javassist/CtClass.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with @@ -62,7 +62,7 @@ public abstract class CtClass { */ public static void main(String[] args) { System.out.println("Javassist version " + CtClass.version); - System.out.println("Copyright (C) 1999-2005 Shigeru Chiba." + System.out.println("Copyright (C) 1999-2006 Shigeru Chiba." + " All Rights Reserved."); } diff --git a/src/main/javassist/CtClassType.java b/src/main/javassist/CtClassType.java index 92f73d3e..1eb9ba35 100644 --- a/src/main/javassist/CtClassType.java +++ b/src/main/javassist/CtClassType.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/CtConstructor.java b/src/main/javassist/CtConstructor.java index fa139c79..5d0f7c8e 100644 --- a/src/main/javassist/CtConstructor.java +++ b/src/main/javassist/CtConstructor.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/CtField.java b/src/main/javassist/CtField.java index 8b3580a2..86dd9b5d 100644 --- a/src/main/javassist/CtField.java +++ b/src/main/javassist/CtField.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/CtMember.java b/src/main/javassist/CtMember.java index 38846601..6fa84b5f 100644 --- a/src/main/javassist/CtMember.java +++ b/src/main/javassist/CtMember.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/CtMethod.java b/src/main/javassist/CtMethod.java index abb42b88..90181c8d 100644 --- a/src/main/javassist/CtMethod.java +++ b/src/main/javassist/CtMethod.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/CtNewClass.java b/src/main/javassist/CtNewClass.java index 4c49ce26..c0a714f1 100644 --- a/src/main/javassist/CtNewClass.java +++ b/src/main/javassist/CtNewClass.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/CtNewConstructor.java b/src/main/javassist/CtNewConstructor.java index f3f03d00..ac3d12b2 100644 --- a/src/main/javassist/CtNewConstructor.java +++ b/src/main/javassist/CtNewConstructor.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/CtNewMethod.java b/src/main/javassist/CtNewMethod.java index dbc408a8..cfe982e6 100644 --- a/src/main/javassist/CtNewMethod.java +++ b/src/main/javassist/CtNewMethod.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/CtNewNestedClass.java b/src/main/javassist/CtNewNestedClass.java index cd91c569..7eab92e8 100644 --- a/src/main/javassist/CtNewNestedClass.java +++ b/src/main/javassist/CtNewNestedClass.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/CtNewWrappedConstructor.java b/src/main/javassist/CtNewWrappedConstructor.java index 82fa2406..0219a98a 100644 --- a/src/main/javassist/CtNewWrappedConstructor.java +++ b/src/main/javassist/CtNewWrappedConstructor.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/CtNewWrappedMethod.java b/src/main/javassist/CtNewWrappedMethod.java index 279b16f0..88e680eb 100644 --- a/src/main/javassist/CtNewWrappedMethod.java +++ b/src/main/javassist/CtNewWrappedMethod.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/CtPrimitiveType.java b/src/main/javassist/CtPrimitiveType.java index 0eec576e..ac484fcb 100644 --- a/src/main/javassist/CtPrimitiveType.java +++ b/src/main/javassist/CtPrimitiveType.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/Loader.java b/src/main/javassist/Loader.java index fe340510..4c2c4b5d 100644 --- a/src/main/javassist/Loader.java +++ b/src/main/javassist/Loader.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/LoaderClassPath.java b/src/main/javassist/LoaderClassPath.java index 34df7da3..615f4400 100644 --- a/src/main/javassist/LoaderClassPath.java +++ b/src/main/javassist/LoaderClassPath.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/Modifier.java b/src/main/javassist/Modifier.java index 7b4dbdc8..d56969e8 100644 --- a/src/main/javassist/Modifier.java +++ b/src/main/javassist/Modifier.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/NotFoundException.java b/src/main/javassist/NotFoundException.java index 93723e45..567c2a68 100644 --- a/src/main/javassist/NotFoundException.java +++ b/src/main/javassist/NotFoundException.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/SerialVersionUID.java b/src/main/javassist/SerialVersionUID.java index 6ca74415..3ac7df01 100644 --- a/src/main/javassist/SerialVersionUID.java +++ b/src/main/javassist/SerialVersionUID.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/Translator.java b/src/main/javassist/Translator.java index f2225609..d5cfe4cb 100644 --- a/src/main/javassist/Translator.java +++ b/src/main/javassist/Translator.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/URLClassPath.java b/src/main/javassist/URLClassPath.java index e5846650..a9255ab0 100644 --- a/src/main/javassist/URLClassPath.java +++ b/src/main/javassist/URLClassPath.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/bytecode/AccessFlag.java b/src/main/javassist/bytecode/AccessFlag.java index 7bd5bffc..0c0df24e 100644 --- a/src/main/javassist/bytecode/AccessFlag.java +++ b/src/main/javassist/bytecode/AccessFlag.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/bytecode/AnnotationDefaultAttribute.java b/src/main/javassist/bytecode/AnnotationDefaultAttribute.java index 196774e5..757faeb0 100644 --- a/src/main/javassist/bytecode/AnnotationDefaultAttribute.java +++ b/src/main/javassist/bytecode/AnnotationDefaultAttribute.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/bytecode/AnnotationsAttribute.java b/src/main/javassist/bytecode/AnnotationsAttribute.java index 9092a0f9..278c2c67 100644 --- a/src/main/javassist/bytecode/AnnotationsAttribute.java +++ b/src/main/javassist/bytecode/AnnotationsAttribute.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/bytecode/AttributeInfo.java b/src/main/javassist/bytecode/AttributeInfo.java index 8fd598da..69152a7a 100644 --- a/src/main/javassist/bytecode/AttributeInfo.java +++ b/src/main/javassist/bytecode/AttributeInfo.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/bytecode/BadBytecode.java b/src/main/javassist/bytecode/BadBytecode.java index 225cdd31..baa799d4 100644 --- a/src/main/javassist/bytecode/BadBytecode.java +++ b/src/main/javassist/bytecode/BadBytecode.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/bytecode/ByteArray.java b/src/main/javassist/bytecode/ByteArray.java index 4c9b7f0f..6de9f339 100644 --- a/src/main/javassist/bytecode/ByteArray.java +++ b/src/main/javassist/bytecode/ByteArray.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/bytecode/Bytecode.java b/src/main/javassist/bytecode/Bytecode.java index b2a0ee23..ffcc96a2 100644 --- a/src/main/javassist/bytecode/Bytecode.java +++ b/src/main/javassist/bytecode/Bytecode.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/bytecode/ClassFile.java b/src/main/javassist/bytecode/ClassFile.java index 8f2fc66b..44f378e2 100644 --- a/src/main/javassist/bytecode/ClassFile.java +++ b/src/main/javassist/bytecode/ClassFile.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/bytecode/ClassFileWriter.java b/src/main/javassist/bytecode/ClassFileWriter.java index 14de1189..e78a2cd2 100644 --- a/src/main/javassist/bytecode/ClassFileWriter.java +++ b/src/main/javassist/bytecode/ClassFileWriter.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/bytecode/CodeAnalyzer.java b/src/main/javassist/bytecode/CodeAnalyzer.java index b4afb95a..a3c52499 100644 --- a/src/main/javassist/bytecode/CodeAnalyzer.java +++ b/src/main/javassist/bytecode/CodeAnalyzer.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/bytecode/CodeAttribute.java b/src/main/javassist/bytecode/CodeAttribute.java index 038314d4..83a0a429 100644 --- a/src/main/javassist/bytecode/CodeAttribute.java +++ b/src/main/javassist/bytecode/CodeAttribute.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/bytecode/CodeIterator.java b/src/main/javassist/bytecode/CodeIterator.java index eb10c871..52b0a4a0 100644 --- a/src/main/javassist/bytecode/CodeIterator.java +++ b/src/main/javassist/bytecode/CodeIterator.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/bytecode/ConstPool.java b/src/main/javassist/bytecode/ConstPool.java index 6a1660ad..ed4974d5 100644 --- a/src/main/javassist/bytecode/ConstPool.java +++ b/src/main/javassist/bytecode/ConstPool.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/bytecode/ConstantAttribute.java b/src/main/javassist/bytecode/ConstantAttribute.java index eabf4c42..9f1c5db0 100644 --- a/src/main/javassist/bytecode/ConstantAttribute.java +++ b/src/main/javassist/bytecode/ConstantAttribute.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/bytecode/DeprecatedAttribute.java b/src/main/javassist/bytecode/DeprecatedAttribute.java index 31bc1e51..090b21fb 100644 --- a/src/main/javassist/bytecode/DeprecatedAttribute.java +++ b/src/main/javassist/bytecode/DeprecatedAttribute.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/bytecode/Descriptor.java b/src/main/javassist/bytecode/Descriptor.java index 39577ce2..b88fc339 100644 --- a/src/main/javassist/bytecode/Descriptor.java +++ b/src/main/javassist/bytecode/Descriptor.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/bytecode/EnclosingMethodAttribute.java b/src/main/javassist/bytecode/EnclosingMethodAttribute.java index cd598830..53002951 100644 --- a/src/main/javassist/bytecode/EnclosingMethodAttribute.java +++ b/src/main/javassist/bytecode/EnclosingMethodAttribute.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/bytecode/ExceptionTable.java b/src/main/javassist/bytecode/ExceptionTable.java index f19f0ac9..0244cda1 100644 --- a/src/main/javassist/bytecode/ExceptionTable.java +++ b/src/main/javassist/bytecode/ExceptionTable.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/bytecode/ExceptionsAttribute.java b/src/main/javassist/bytecode/ExceptionsAttribute.java index d022c5e6..cba86052 100644 --- a/src/main/javassist/bytecode/ExceptionsAttribute.java +++ b/src/main/javassist/bytecode/ExceptionsAttribute.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/bytecode/FieldInfo.java b/src/main/javassist/bytecode/FieldInfo.java index a66d13a9..f0a13faf 100644 --- a/src/main/javassist/bytecode/FieldInfo.java +++ b/src/main/javassist/bytecode/FieldInfo.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/bytecode/InnerClassesAttribute.java b/src/main/javassist/bytecode/InnerClassesAttribute.java index 24e224ab..8f28b571 100644 --- a/src/main/javassist/bytecode/InnerClassesAttribute.java +++ b/src/main/javassist/bytecode/InnerClassesAttribute.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/bytecode/LineNumberAttribute.java b/src/main/javassist/bytecode/LineNumberAttribute.java index 8374143b..52c425d0 100644 --- a/src/main/javassist/bytecode/LineNumberAttribute.java +++ b/src/main/javassist/bytecode/LineNumberAttribute.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/bytecode/LocalVariableAttribute.java b/src/main/javassist/bytecode/LocalVariableAttribute.java index 686fd8d1..da90dd30 100644 --- a/src/main/javassist/bytecode/LocalVariableAttribute.java +++ b/src/main/javassist/bytecode/LocalVariableAttribute.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/bytecode/LongVector.java b/src/main/javassist/bytecode/LongVector.java index b1f679be..ffb9c7fe 100644 --- a/src/main/javassist/bytecode/LongVector.java +++ b/src/main/javassist/bytecode/LongVector.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/bytecode/MethodInfo.java b/src/main/javassist/bytecode/MethodInfo.java index 5562e62d..93079920 100644 --- a/src/main/javassist/bytecode/MethodInfo.java +++ b/src/main/javassist/bytecode/MethodInfo.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/bytecode/Mnemonic.java b/src/main/javassist/bytecode/Mnemonic.java index 723f50b4..d0c4e033 100644 --- a/src/main/javassist/bytecode/Mnemonic.java +++ b/src/main/javassist/bytecode/Mnemonic.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/bytecode/Opcode.java b/src/main/javassist/bytecode/Opcode.java index 0f033f5f..62c8dcf5 100644 --- a/src/main/javassist/bytecode/Opcode.java +++ b/src/main/javassist/bytecode/Opcode.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/bytecode/ParameterAnnotationsAttribute.java b/src/main/javassist/bytecode/ParameterAnnotationsAttribute.java index 35bcbe2a..19b3ea23 100644 --- a/src/main/javassist/bytecode/ParameterAnnotationsAttribute.java +++ b/src/main/javassist/bytecode/ParameterAnnotationsAttribute.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/bytecode/SignatureAttribute.java b/src/main/javassist/bytecode/SignatureAttribute.java index 7dd4ba8c..c6fa3cfb 100644 --- a/src/main/javassist/bytecode/SignatureAttribute.java +++ b/src/main/javassist/bytecode/SignatureAttribute.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/bytecode/SourceFileAttribute.java b/src/main/javassist/bytecode/SourceFileAttribute.java index c1a1533f..39332314 100644 --- a/src/main/javassist/bytecode/SourceFileAttribute.java +++ b/src/main/javassist/bytecode/SourceFileAttribute.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/bytecode/SyntheticAttribute.java b/src/main/javassist/bytecode/SyntheticAttribute.java index 5b092015..16397fba 100644 --- a/src/main/javassist/bytecode/SyntheticAttribute.java +++ b/src/main/javassist/bytecode/SyntheticAttribute.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/bytecode/annotation/AnnotationImpl.java b/src/main/javassist/bytecode/annotation/AnnotationImpl.java index d4718ffc..466a3f33 100644 --- a/src/main/javassist/bytecode/annotation/AnnotationImpl.java +++ b/src/main/javassist/bytecode/annotation/AnnotationImpl.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/bytecode/annotation/AnnotationsWriter.java b/src/main/javassist/bytecode/annotation/AnnotationsWriter.java index ae2aaa14..f1ac034e 100644 --- a/src/main/javassist/bytecode/annotation/AnnotationsWriter.java +++ b/src/main/javassist/bytecode/annotation/AnnotationsWriter.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/compiler/AccessorMaker.java b/src/main/javassist/compiler/AccessorMaker.java index 4410a342..090d9d90 100644 --- a/src/main/javassist/compiler/AccessorMaker.java +++ b/src/main/javassist/compiler/AccessorMaker.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/compiler/CodeGen.java b/src/main/javassist/compiler/CodeGen.java index 6739c17a..2d82e878 100644 --- a/src/main/javassist/compiler/CodeGen.java +++ b/src/main/javassist/compiler/CodeGen.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/compiler/CompileError.java b/src/main/javassist/compiler/CompileError.java index e5bb2d73..2c80fb4a 100644 --- a/src/main/javassist/compiler/CompileError.java +++ b/src/main/javassist/compiler/CompileError.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/compiler/Javac.java b/src/main/javassist/compiler/Javac.java index 7a9dbe83..d32fddcf 100644 --- a/src/main/javassist/compiler/Javac.java +++ b/src/main/javassist/compiler/Javac.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/compiler/JvstCodeGen.java b/src/main/javassist/compiler/JvstCodeGen.java index 7b38fdc5..8facdd23 100644 --- a/src/main/javassist/compiler/JvstCodeGen.java +++ b/src/main/javassist/compiler/JvstCodeGen.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/compiler/JvstTypeChecker.java b/src/main/javassist/compiler/JvstTypeChecker.java index 08833b68..9ac6c337 100644 --- a/src/main/javassist/compiler/JvstTypeChecker.java +++ b/src/main/javassist/compiler/JvstTypeChecker.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/compiler/KeywordTable.java b/src/main/javassist/compiler/KeywordTable.java index c1e5c151..0a1108c3 100644 --- a/src/main/javassist/compiler/KeywordTable.java +++ b/src/main/javassist/compiler/KeywordTable.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/compiler/Lex.java b/src/main/javassist/compiler/Lex.java index 3f555332..4cb78c77 100644 --- a/src/main/javassist/compiler/Lex.java +++ b/src/main/javassist/compiler/Lex.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/compiler/MemberCodeGen.java b/src/main/javassist/compiler/MemberCodeGen.java index aa644bb6..9446f42b 100644 --- a/src/main/javassist/compiler/MemberCodeGen.java +++ b/src/main/javassist/compiler/MemberCodeGen.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/compiler/MemberResolver.java b/src/main/javassist/compiler/MemberResolver.java index 44ab8077..12e7fa05 100644 --- a/src/main/javassist/compiler/MemberResolver.java +++ b/src/main/javassist/compiler/MemberResolver.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/compiler/NoFieldException.java b/src/main/javassist/compiler/NoFieldException.java index 2b20c15f..90915533 100644 --- a/src/main/javassist/compiler/NoFieldException.java +++ b/src/main/javassist/compiler/NoFieldException.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/compiler/Parser.java b/src/main/javassist/compiler/Parser.java index 5b61ae42..eae6d9e1 100644 --- a/src/main/javassist/compiler/Parser.java +++ b/src/main/javassist/compiler/Parser.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/compiler/ProceedHandler.java b/src/main/javassist/compiler/ProceedHandler.java index 44bd6bad..fdeda62c 100644 --- a/src/main/javassist/compiler/ProceedHandler.java +++ b/src/main/javassist/compiler/ProceedHandler.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/compiler/SymbolTable.java b/src/main/javassist/compiler/SymbolTable.java index 7d1adf04..d6035a7c 100644 --- a/src/main/javassist/compiler/SymbolTable.java +++ b/src/main/javassist/compiler/SymbolTable.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/compiler/SyntaxError.java b/src/main/javassist/compiler/SyntaxError.java index bdf6edc5..46313de2 100644 --- a/src/main/javassist/compiler/SyntaxError.java +++ b/src/main/javassist/compiler/SyntaxError.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/compiler/TokenId.java b/src/main/javassist/compiler/TokenId.java index 090894c6..3368620c 100644 --- a/src/main/javassist/compiler/TokenId.java +++ b/src/main/javassist/compiler/TokenId.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/compiler/TypeChecker.java b/src/main/javassist/compiler/TypeChecker.java index 452edaa7..5d50104e 100644 --- a/src/main/javassist/compiler/TypeChecker.java +++ b/src/main/javassist/compiler/TypeChecker.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/compiler/ast/ASTList.java b/src/main/javassist/compiler/ast/ASTList.java index 0dfb8e17..128e672f 100644 --- a/src/main/javassist/compiler/ast/ASTList.java +++ b/src/main/javassist/compiler/ast/ASTList.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/compiler/ast/ASTree.java b/src/main/javassist/compiler/ast/ASTree.java index 2b04d6c4..4a22b324 100644 --- a/src/main/javassist/compiler/ast/ASTree.java +++ b/src/main/javassist/compiler/ast/ASTree.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/compiler/ast/ArrayInit.java b/src/main/javassist/compiler/ast/ArrayInit.java index bdc35a75..359cc766 100644 --- a/src/main/javassist/compiler/ast/ArrayInit.java +++ b/src/main/javassist/compiler/ast/ArrayInit.java @@ -1,6 +1,22 @@ +/* + * Javassist, a Java-bytecode translator toolkit. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. + * + * The contents of this file are subject to the Mozilla Public License Version + * 1.1 (the "License"); you may not use this file except in compliance with + * the License. Alternatively, the contents of this file may be used under + * the terms of the GNU Lesser General Public License Version 2.1 or later. + * + * Software distributed under the License is distributed on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License + * for the specific language governing rights and limitations under the + * License. + */ + package javassist.compiler.ast; import javassist.compiler.CompileError; + /** * Array initializer such as { 1, 2, 3 }. */ diff --git a/src/main/javassist/compiler/ast/AssignExpr.java b/src/main/javassist/compiler/ast/AssignExpr.java index c11cc604..b6805fe8 100644 --- a/src/main/javassist/compiler/ast/AssignExpr.java +++ b/src/main/javassist/compiler/ast/AssignExpr.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/compiler/ast/BinExpr.java b/src/main/javassist/compiler/ast/BinExpr.java index b1635dbe..b2f3ffac 100644 --- a/src/main/javassist/compiler/ast/BinExpr.java +++ b/src/main/javassist/compiler/ast/BinExpr.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/compiler/ast/CallExpr.java b/src/main/javassist/compiler/ast/CallExpr.java index 88a3c762..32ef5dcc 100644 --- a/src/main/javassist/compiler/ast/CallExpr.java +++ b/src/main/javassist/compiler/ast/CallExpr.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/compiler/ast/CastExpr.java b/src/main/javassist/compiler/ast/CastExpr.java index 047e268d..a87a45d1 100644 --- a/src/main/javassist/compiler/ast/CastExpr.java +++ b/src/main/javassist/compiler/ast/CastExpr.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/compiler/ast/CondExpr.java b/src/main/javassist/compiler/ast/CondExpr.java index 1894437e..2cdafba3 100644 --- a/src/main/javassist/compiler/ast/CondExpr.java +++ b/src/main/javassist/compiler/ast/CondExpr.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/compiler/ast/Declarator.java b/src/main/javassist/compiler/ast/Declarator.java index 120510b5..65c746bf 100644 --- a/src/main/javassist/compiler/ast/Declarator.java +++ b/src/main/javassist/compiler/ast/Declarator.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/compiler/ast/DoubleConst.java b/src/main/javassist/compiler/ast/DoubleConst.java index d7ca53dc..f4fb2395 100644 --- a/src/main/javassist/compiler/ast/DoubleConst.java +++ b/src/main/javassist/compiler/ast/DoubleConst.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/compiler/ast/Expr.java b/src/main/javassist/compiler/ast/Expr.java index 549f3117..665f0af8 100644 --- a/src/main/javassist/compiler/ast/Expr.java +++ b/src/main/javassist/compiler/ast/Expr.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/compiler/ast/FieldDecl.java b/src/main/javassist/compiler/ast/FieldDecl.java index d143249d..34404701 100644 --- a/src/main/javassist/compiler/ast/FieldDecl.java +++ b/src/main/javassist/compiler/ast/FieldDecl.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/compiler/ast/InstanceOfExpr.java b/src/main/javassist/compiler/ast/InstanceOfExpr.java index 80f42699..d512c28f 100644 --- a/src/main/javassist/compiler/ast/InstanceOfExpr.java +++ b/src/main/javassist/compiler/ast/InstanceOfExpr.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/compiler/ast/IntConst.java b/src/main/javassist/compiler/ast/IntConst.java index 6c9b395c..8e45189e 100644 --- a/src/main/javassist/compiler/ast/IntConst.java +++ b/src/main/javassist/compiler/ast/IntConst.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/compiler/ast/Keyword.java b/src/main/javassist/compiler/ast/Keyword.java index ccd8574d..0932609c 100644 --- a/src/main/javassist/compiler/ast/Keyword.java +++ b/src/main/javassist/compiler/ast/Keyword.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/compiler/ast/Member.java b/src/main/javassist/compiler/ast/Member.java index 905bf6b4..bc67a24e 100644 --- a/src/main/javassist/compiler/ast/Member.java +++ b/src/main/javassist/compiler/ast/Member.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/compiler/ast/MethodDecl.java b/src/main/javassist/compiler/ast/MethodDecl.java index 3ef44103..2cbe3f1f 100644 --- a/src/main/javassist/compiler/ast/MethodDecl.java +++ b/src/main/javassist/compiler/ast/MethodDecl.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/compiler/ast/NewExpr.java b/src/main/javassist/compiler/ast/NewExpr.java index b570ea0b..91a3fe2c 100644 --- a/src/main/javassist/compiler/ast/NewExpr.java +++ b/src/main/javassist/compiler/ast/NewExpr.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/compiler/ast/Pair.java b/src/main/javassist/compiler/ast/Pair.java index be3ec592..6f1757fc 100644 --- a/src/main/javassist/compiler/ast/Pair.java +++ b/src/main/javassist/compiler/ast/Pair.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/compiler/ast/Stmnt.java b/src/main/javassist/compiler/ast/Stmnt.java index 8abd6650..a130dd2d 100644 --- a/src/main/javassist/compiler/ast/Stmnt.java +++ b/src/main/javassist/compiler/ast/Stmnt.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/compiler/ast/StringL.java b/src/main/javassist/compiler/ast/StringL.java index 2bf1de0a..e841b1eb 100644 --- a/src/main/javassist/compiler/ast/StringL.java +++ b/src/main/javassist/compiler/ast/StringL.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/compiler/ast/Symbol.java b/src/main/javassist/compiler/ast/Symbol.java index a35a13cb..f3c5d717 100644 --- a/src/main/javassist/compiler/ast/Symbol.java +++ b/src/main/javassist/compiler/ast/Symbol.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/compiler/ast/Variable.java b/src/main/javassist/compiler/ast/Variable.java index f0c67beb..003c2b6a 100644 --- a/src/main/javassist/compiler/ast/Variable.java +++ b/src/main/javassist/compiler/ast/Variable.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/compiler/ast/Visitor.java b/src/main/javassist/compiler/ast/Visitor.java index 5c361d8d..ca7c5b0b 100644 --- a/src/main/javassist/compiler/ast/Visitor.java +++ b/src/main/javassist/compiler/ast/Visitor.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/convert/TransformAfter.java b/src/main/javassist/convert/TransformAfter.java index 5378dc60..b96cb8c9 100644 --- a/src/main/javassist/convert/TransformAfter.java +++ b/src/main/javassist/convert/TransformAfter.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/convert/TransformBefore.java b/src/main/javassist/convert/TransformBefore.java index 49531e87..dcbff3b7 100644 --- a/src/main/javassist/convert/TransformBefore.java +++ b/src/main/javassist/convert/TransformBefore.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/convert/TransformCall.java b/src/main/javassist/convert/TransformCall.java index 6b389f9f..c9f62488 100644 --- a/src/main/javassist/convert/TransformCall.java +++ b/src/main/javassist/convert/TransformCall.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/convert/TransformFieldAccess.java b/src/main/javassist/convert/TransformFieldAccess.java index b8d68af3..b3e9adfd 100644 --- a/src/main/javassist/convert/TransformFieldAccess.java +++ b/src/main/javassist/convert/TransformFieldAccess.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/convert/TransformNew.java b/src/main/javassist/convert/TransformNew.java index 6c17e7b2..c4347b7c 100644 --- a/src/main/javassist/convert/TransformNew.java +++ b/src/main/javassist/convert/TransformNew.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/convert/TransformReadField.java b/src/main/javassist/convert/TransformReadField.java index 2970cd27..ad490f88 100644 --- a/src/main/javassist/convert/TransformReadField.java +++ b/src/main/javassist/convert/TransformReadField.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/convert/TransformWriteField.java b/src/main/javassist/convert/TransformWriteField.java index 78f4a42f..d749ad58 100644 --- a/src/main/javassist/convert/TransformWriteField.java +++ b/src/main/javassist/convert/TransformWriteField.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/convert/Transformer.java b/src/main/javassist/convert/Transformer.java index 0644e507..82baade6 100644 --- a/src/main/javassist/convert/Transformer.java +++ b/src/main/javassist/convert/Transformer.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/expr/Cast.java b/src/main/javassist/expr/Cast.java index 5625e1d8..b7440ba7 100644 --- a/src/main/javassist/expr/Cast.java +++ b/src/main/javassist/expr/Cast.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/expr/ConstructorCall.java b/src/main/javassist/expr/ConstructorCall.java index df3b01e0..3a23181e 100644 --- a/src/main/javassist/expr/ConstructorCall.java +++ b/src/main/javassist/expr/ConstructorCall.java @@ -1,3 +1,18 @@ +/* + * Javassist, a Java-bytecode translator toolkit. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. + * + * The contents of this file are subject to the Mozilla Public License Version + * 1.1 (the "License"); you may not use this file except in compliance with + * the License. Alternatively, the contents of this file may be used under + * the terms of the GNU Lesser General Public License Version 2.1 or later. + * + * Software distributed under the License is distributed on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License + * for the specific language governing rights and limitations under the + * License. + */ + package javassist.expr; import javassist.CtClass; diff --git a/src/main/javassist/expr/Expr.java b/src/main/javassist/expr/Expr.java index d0a42b74..c6cf78eb 100644 --- a/src/main/javassist/expr/Expr.java +++ b/src/main/javassist/expr/Expr.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/expr/ExprEditor.java b/src/main/javassist/expr/ExprEditor.java index c18e426b..a713dde3 100644 --- a/src/main/javassist/expr/ExprEditor.java +++ b/src/main/javassist/expr/ExprEditor.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/expr/FieldAccess.java b/src/main/javassist/expr/FieldAccess.java index 34115972..9339d1c5 100644 --- a/src/main/javassist/expr/FieldAccess.java +++ b/src/main/javassist/expr/FieldAccess.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/expr/Handler.java b/src/main/javassist/expr/Handler.java index c949dc0e..78a5688d 100644 --- a/src/main/javassist/expr/Handler.java +++ b/src/main/javassist/expr/Handler.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/expr/Instanceof.java b/src/main/javassist/expr/Instanceof.java index 16db1857..0f8ebdf7 100644 --- a/src/main/javassist/expr/Instanceof.java +++ b/src/main/javassist/expr/Instanceof.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/expr/MethodCall.java b/src/main/javassist/expr/MethodCall.java index 9fd29e2a..2c385b1b 100644 --- a/src/main/javassist/expr/MethodCall.java +++ b/src/main/javassist/expr/MethodCall.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/expr/NewArray.java b/src/main/javassist/expr/NewArray.java index 1181e6fc..c01d0d6d 100644 --- a/src/main/javassist/expr/NewArray.java +++ b/src/main/javassist/expr/NewArray.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/expr/NewExpr.java b/src/main/javassist/expr/NewExpr.java index 2f976d82..a75a0a5c 100644 --- a/src/main/javassist/expr/NewExpr.java +++ b/src/main/javassist/expr/NewExpr.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/runtime/Cflow.java b/src/main/javassist/runtime/Cflow.java index 13a44657..28bb4354 100644 --- a/src/main/javassist/runtime/Cflow.java +++ b/src/main/javassist/runtime/Cflow.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/runtime/Desc.java b/src/main/javassist/runtime/Desc.java index 36db6a1f..4a9b4d62 100644 --- a/src/main/javassist/runtime/Desc.java +++ b/src/main/javassist/runtime/Desc.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/runtime/DotClass.java b/src/main/javassist/runtime/DotClass.java index 0e57cdf4..9d861c1b 100644 --- a/src/main/javassist/runtime/DotClass.java +++ b/src/main/javassist/runtime/DotClass.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/runtime/Inner.java b/src/main/javassist/runtime/Inner.java index b7bdb03e..5672c2f5 100644 --- a/src/main/javassist/runtime/Inner.java +++ b/src/main/javassist/runtime/Inner.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/tools/Dump.java b/src/main/javassist/tools/Dump.java index 8f44b4ba..a581249f 100644 --- a/src/main/javassist/tools/Dump.java +++ b/src/main/javassist/tools/Dump.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/tools/reflect/CannotCreateException.java b/src/main/javassist/tools/reflect/CannotCreateException.java index efa14111..efc21d6f 100644 --- a/src/main/javassist/tools/reflect/CannotCreateException.java +++ b/src/main/javassist/tools/reflect/CannotCreateException.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/tools/reflect/CannotInvokeException.java b/src/main/javassist/tools/reflect/CannotInvokeException.java index d283d6d7..070594a0 100644 --- a/src/main/javassist/tools/reflect/CannotInvokeException.java +++ b/src/main/javassist/tools/reflect/CannotInvokeException.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/tools/reflect/CannotReflectException.java b/src/main/javassist/tools/reflect/CannotReflectException.java index 30c448b3..1e640858 100644 --- a/src/main/javassist/tools/reflect/CannotReflectException.java +++ b/src/main/javassist/tools/reflect/CannotReflectException.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/tools/reflect/ClassMetaobject.java b/src/main/javassist/tools/reflect/ClassMetaobject.java index d0a645cc..d99bc8aa 100644 --- a/src/main/javassist/tools/reflect/ClassMetaobject.java +++ b/src/main/javassist/tools/reflect/ClassMetaobject.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/tools/reflect/Compiler.java b/src/main/javassist/tools/reflect/Compiler.java index 7e1fb943..a32c0a8b 100644 --- a/src/main/javassist/tools/reflect/Compiler.java +++ b/src/main/javassist/tools/reflect/Compiler.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/tools/reflect/Loader.java b/src/main/javassist/tools/reflect/Loader.java index 36189edf..ba50f112 100644 --- a/src/main/javassist/tools/reflect/Loader.java +++ b/src/main/javassist/tools/reflect/Loader.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/tools/reflect/Metalevel.java b/src/main/javassist/tools/reflect/Metalevel.java index db45cad9..afae616e 100644 --- a/src/main/javassist/tools/reflect/Metalevel.java +++ b/src/main/javassist/tools/reflect/Metalevel.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/tools/reflect/Metaobject.java b/src/main/javassist/tools/reflect/Metaobject.java index e89b5398..801fff86 100644 --- a/src/main/javassist/tools/reflect/Metaobject.java +++ b/src/main/javassist/tools/reflect/Metaobject.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/tools/reflect/Reflection.java b/src/main/javassist/tools/reflect/Reflection.java index 06ce2ccf..d5f008bc 100644 --- a/src/main/javassist/tools/reflect/Reflection.java +++ b/src/main/javassist/tools/reflect/Reflection.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/tools/reflect/Sample.java b/src/main/javassist/tools/reflect/Sample.java index 4e70236a..9d5b13cb 100644 --- a/src/main/javassist/tools/reflect/Sample.java +++ b/src/main/javassist/tools/reflect/Sample.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/tools/rmi/AppletServer.java b/src/main/javassist/tools/rmi/AppletServer.java index 5056e24c..c0558026 100644 --- a/src/main/javassist/tools/rmi/AppletServer.java +++ b/src/main/javassist/tools/rmi/AppletServer.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/tools/rmi/ObjectImporter.java b/src/main/javassist/tools/rmi/ObjectImporter.java index 75f5aa60..49160fd1 100644 --- a/src/main/javassist/tools/rmi/ObjectImporter.java +++ b/src/main/javassist/tools/rmi/ObjectImporter.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/tools/rmi/ObjectNotFoundException.java b/src/main/javassist/tools/rmi/ObjectNotFoundException.java index e54a3257..5176661e 100644 --- a/src/main/javassist/tools/rmi/ObjectNotFoundException.java +++ b/src/main/javassist/tools/rmi/ObjectNotFoundException.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/tools/rmi/Proxy.java b/src/main/javassist/tools/rmi/Proxy.java index 1512b87f..70ff83a6 100644 --- a/src/main/javassist/tools/rmi/Proxy.java +++ b/src/main/javassist/tools/rmi/Proxy.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/tools/rmi/RemoteException.java b/src/main/javassist/tools/rmi/RemoteException.java index 27ebe71e..0013bac4 100644 --- a/src/main/javassist/tools/rmi/RemoteException.java +++ b/src/main/javassist/tools/rmi/RemoteException.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/tools/rmi/RemoteRef.java b/src/main/javassist/tools/rmi/RemoteRef.java index edbf349f..51a271cc 100644 --- a/src/main/javassist/tools/rmi/RemoteRef.java +++ b/src/main/javassist/tools/rmi/RemoteRef.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/tools/rmi/Sample.java b/src/main/javassist/tools/rmi/Sample.java index a65b908d..0bf71a62 100644 --- a/src/main/javassist/tools/rmi/Sample.java +++ b/src/main/javassist/tools/rmi/Sample.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/tools/rmi/StubGenerator.java b/src/main/javassist/tools/rmi/StubGenerator.java index 7681bd6d..0b6b4dbe 100644 --- a/src/main/javassist/tools/rmi/StubGenerator.java +++ b/src/main/javassist/tools/rmi/StubGenerator.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/tools/web/BadHttpRequest.java b/src/main/javassist/tools/web/BadHttpRequest.java index 606ce997..52ff76ec 100644 --- a/src/main/javassist/tools/web/BadHttpRequest.java +++ b/src/main/javassist/tools/web/BadHttpRequest.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/tools/web/Viewer.java b/src/main/javassist/tools/web/Viewer.java index 6e737406..063bb96f 100644 --- a/src/main/javassist/tools/web/Viewer.java +++ b/src/main/javassist/tools/web/Viewer.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/tools/web/Webserver.java b/src/main/javassist/tools/web/Webserver.java index e580feca..769c88c5 100644 --- a/src/main/javassist/tools/web/Webserver.java +++ b/src/main/javassist/tools/web/Webserver.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/util/HotSwapper.java b/src/main/javassist/util/HotSwapper.java index 07abe7a0..ef258912 100644 --- a/src/main/javassist/util/HotSwapper.java +++ b/src/main/javassist/util/HotSwapper.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/util/proxy/FactoryHelper.java b/src/main/javassist/util/proxy/FactoryHelper.java index 01bd6bf1..b00b9a93 100644 --- a/src/main/javassist/util/proxy/FactoryHelper.java +++ b/src/main/javassist/util/proxy/FactoryHelper.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/util/proxy/MethodFilter.java b/src/main/javassist/util/proxy/MethodFilter.java index 67f9e409..5b9ce167 100644 --- a/src/main/javassist/util/proxy/MethodFilter.java +++ b/src/main/javassist/util/proxy/MethodFilter.java @@ -1,30 +1,30 @@ -/* - * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. Alternatively, the contents of this file may be used under - * the terms of the GNU Lesser General Public License Version 2.1 or later. - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - */ - -package javassist.util.proxy; - -import java.lang.reflect.Method; - -/** - * Selector of the methods implemented by a handler. - * - * @see ProxyFactory#setFilter(MethodFilter) - */ -public interface MethodFilter { - /** - * Returns true if the given method is implemented by a handler. - */ - boolean isHandled(Method m); -} +/* + * Javassist, a Java-bytecode translator toolkit. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. + * + * The contents of this file are subject to the Mozilla Public License Version + * 1.1 (the "License"); you may not use this file except in compliance with + * the License. Alternatively, the contents of this file may be used under + * the terms of the GNU Lesser General Public License Version 2.1 or later. + * + * Software distributed under the License is distributed on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License + * for the specific language governing rights and limitations under the + * License. + */ + +package javassist.util.proxy; + +import java.lang.reflect.Method; + +/** + * Selector of the methods implemented by a handler. + * + * @see ProxyFactory#setFilter(MethodFilter) + */ +public interface MethodFilter { + /** + * Returns true if the given method is implemented by a handler. + */ + boolean isHandled(Method m); +} diff --git a/src/main/javassist/util/proxy/MethodHandler.java b/src/main/javassist/util/proxy/MethodHandler.java index 7bd28ba0..7c398fcc 100644 --- a/src/main/javassist/util/proxy/MethodHandler.java +++ b/src/main/javassist/util/proxy/MethodHandler.java @@ -1,48 +1,48 @@ -/* - * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. Alternatively, the contents of this file may be used under - * the terms of the GNU Lesser General Public License Version 2.1 or later. - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - */ - -package javassist.util.proxy; - -import java.lang.reflect.Method; - -/** - * The interface implemented by the invocation handler of a proxy - * instance. - * - * @see ProxyFactory#setHandler(MethodHandler) - */ -public interface MethodHandler { - /** - * Is called when a method is invoked on a proxy instance associated - * with this handler. This method must process that method invocation. - * - * @param self the proxy instance. - * @param thisMethod the overridden method declared in the super - * class or interface. - * @param proceed the forwarder method for invoking the overridden - * method. It is null if the overridden mehtod is - * abstract or declared in the interface. - * @param args an array of objects containing the values of - * the arguments passed in the method invocation - * on the proxy instance. If a parameter type is - * a primitive type, the type of the array element - * is a wrapper class. - * @return the resulting value of the method invocation. - * - * @throws Exception if the method invocation fails. - */ - Object invoke(Object self, Method thisMethod, Method proceed, - Object[] args) throws Exception; -} +/* + * Javassist, a Java-bytecode translator toolkit. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. + * + * The contents of this file are subject to the Mozilla Public License Version + * 1.1 (the "License"); you may not use this file except in compliance with + * the License. Alternatively, the contents of this file may be used under + * the terms of the GNU Lesser General Public License Version 2.1 or later. + * + * Software distributed under the License is distributed on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License + * for the specific language governing rights and limitations under the + * License. + */ + +package javassist.util.proxy; + +import java.lang.reflect.Method; + +/** + * The interface implemented by the invocation handler of a proxy + * instance. + * + * @see ProxyFactory#setHandler(MethodHandler) + */ +public interface MethodHandler { + /** + * Is called when a method is invoked on a proxy instance associated + * with this handler. This method must process that method invocation. + * + * @param self the proxy instance. + * @param thisMethod the overridden method declared in the super + * class or interface. + * @param proceed the forwarder method for invoking the overridden + * method. It is null if the overridden mehtod is + * abstract or declared in the interface. + * @param args an array of objects containing the values of + * the arguments passed in the method invocation + * on the proxy instance. If a parameter type is + * a primitive type, the type of the array element + * is a wrapper class. + * @return the resulting value of the method invocation. + * + * @throws Exception if the method invocation fails. + */ + Object invoke(Object self, Method thisMethod, Method proceed, + Object[] args) throws Exception; +} diff --git a/src/main/javassist/util/proxy/ProxyFactory.java b/src/main/javassist/util/proxy/ProxyFactory.java index 356c23bf..ecdd170f 100644 --- a/src/main/javassist/util/proxy/ProxyFactory.java +++ b/src/main/javassist/util/proxy/ProxyFactory.java @@ -1,699 +1,699 @@ -/* - * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. Alternatively, the contents of this file may be used under - * the terms of the GNU Lesser General Public License Version 2.1 or later. - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - */ - -package javassist.util.proxy; - -import java.lang.reflect.Field; -import java.lang.reflect.Method; -import java.lang.reflect.Constructor; -import java.lang.reflect.Member; -import java.lang.reflect.Modifier; -import java.util.HashMap; -import java.util.Iterator; -import java.util.Map; -import java.util.Set; - -import javassist.CannotCompileException; -import javassist.bytecode.*; - -/** - * Factory of dynamic proxy classes. - * - *

This factory generates a class that extends the given super class and implements - * the given interfaces. The calls of the methods inherited from the super class are - * forwarded and then invoke() is called on the method handler - * associated with the generated class. The calls of the methods from the interfaces - * are also forwarded to the method handler. - * - *

For example, if the following code is executed, - * - *

- * - *

Then, the following method call will be forwarded to MethodHandler - * mi and prints a message before executing the originally called method - * bar() in Foo. - * - *

- * - *

To change the method handler during runtime, - * execute the following code: - * - *

- * - *

Here is an example of method handler. It does not execute - * anything except invoking the original method: - * - *

- * - * @see MethodHandler - * @since 3.1 - */ -public class ProxyFactory { - private Class superClass; - private Class[] interfaces; - private MethodFilter methodFilter; - private MethodHandler handler; - private Class thisClass; - - /** - * If the value of this variable is not null, the class file of - * the generated proxy class is written under the directory specified - * by this variable. For example, if the value is - * ".", then the class file is written under the current - * directory. This method is for debugging. - * - *

The default value is null. - */ - public String writeDirectory; - - private static final Class OBJECT_TYPE = Object.class; - - private static final String HOLDER = "_methods_"; - private static final String HOLDER_TYPE = "[Ljava/lang/reflect/Method;"; - private static final String HANDLER = "handler"; - private static final String DEFAULT_INTERCEPTOR = "default_interceptor"; - private static final String HANDLER_TYPE - = 'L' + MethodHandler.class.getName().replace('.', '/') + ';'; - private static final String HANDLER_SETTER = "setHandler"; - private static final String HANDLER_SETTER_TYPE = "(" + HANDLER_TYPE + ")V"; - - /** - * Constructs a factory of proxy class. - */ - public ProxyFactory() { - superClass = null; - interfaces = null; - methodFilter = null; - handler = new MethodHandler() { - public Object invoke(Object self, Method m, - Method proceed, Object[] args) - throws Exception - { - return proceed.invoke(self, args); - } - }; - thisClass = null; - writeDirectory = null; - } - - /** - * Sets the super class of a proxy class. - */ - public void setSuperclass(Class clazz) { - superClass = clazz; - } - - /** - * Sets the interfaces of a proxy class. - */ - public void setInterfaces(Class[] ifs) { - interfaces = ifs; - } - - /** - * Sets a filter that selects the methods that will be controlled by a handler. - */ - public void setFilter(MethodFilter mf) { - methodFilter = mf; - } - - /** - * Generates a proxy class. - */ - public Class createClass() { - if (thisClass == null) - try { - ClassFile cf = make(); - ClassLoader cl = getClassLoader(); - if (writeDirectory != null) - FactoryHelper.writeFile(cf, writeDirectory); - - thisClass = FactoryHelper.toClass(cf, cl); - setHandler(); - } - catch (CannotCompileException e) { - throw new RuntimeException(e.getMessage(), e); - } - - return thisClass; - } - - protected ClassLoader getClassLoader() { - if (superClass != null && !superClass.getName().equals("java.lang.Object")) - return superClass.getClassLoader(); - else if (interfaces != null && interfaces.length > 0) - return interfaces[0].getClassLoader(); - else - return this.getClass().getClassLoader(); - // return Thread.currentThread().getContextClassLoader(); - } - - /** - * Sets the default invocation handler. This invocation handler is shared - * among all the instances of a proxy class unless another is explicitly - * specified. - */ - public void setHandler(MethodHandler mi) { - handler = mi; - setHandler(); - } - - private void setHandler() { - if (thisClass != null && handler != null) - try { - Field f = thisClass.getField(DEFAULT_INTERCEPTOR); - f.setAccessible(true); - f.set(null, handler); - f.setAccessible(false); - } - catch (Exception e) { - throw new RuntimeException(e); - } - } - - private static int counter = 0; - - private ClassFile make() throws CannotCompileException { - String superName, classname; - if (interfaces == null) - interfaces = new Class[0]; - - if (superClass == null) { - superClass = OBJECT_TYPE; - superName = superClass.getName(); - classname = interfaces.length == 0 ? superName - : interfaces[0].getName(); - } - else { - superName = superClass.getName(); - classname = superName; - } - - if (Modifier.isFinal(superClass.getModifiers())) - throw new CannotCompileException(superName + " is final"); - - // generate a proxy name. - classname = classname + "_$$_javassist_" + counter++; - if (classname.startsWith("java.")) - classname = "org.javassist.tmp." + classname; - - ClassFile cf = new ClassFile(false, classname, superName); - cf.setAccessFlags(AccessFlag.PUBLIC); - setInterfaces(cf, interfaces); - ConstPool pool = cf.getConstPool(); - FieldInfo finfo = new FieldInfo(pool, DEFAULT_INTERCEPTOR, HANDLER_TYPE); - finfo.setAccessFlags(AccessFlag.PUBLIC | AccessFlag.STATIC); - cf.addField(finfo); - - FieldInfo finfo2 = new FieldInfo(pool, HANDLER, HANDLER_TYPE); - finfo2.setAccessFlags(AccessFlag.PRIVATE); - cf.addField(finfo2); - - HashMap allMethods = getMethods(superClass, interfaces); - int size = allMethods.size(); - makeConstructors(classname, cf, pool, classname); - int s = overrideMethods(cf, pool, classname, allMethods); - addMethodsHolder(cf, pool, classname, s); - addSetter(classname, cf, pool); - - thisClass = null; - return cf; - } - - private static void setInterfaces(ClassFile cf, Class[] interfaces) { - String setterIntf = ProxyObject.class.getName(); - String[] list; - if (interfaces == null || interfaces.length == 0) - list = new String[] { setterIntf }; - else { - list = new String[interfaces.length + 1]; - for (int i = 0; i < interfaces.length; i++) - list[i] = interfaces[i].getName(); - - list[interfaces.length] = setterIntf; - } - - cf.setInterfaces(list); - } - - private static void addMethodsHolder(ClassFile cf, ConstPool cp, - String classname, int size) - throws CannotCompileException - { - FieldInfo finfo = new FieldInfo(cp, HOLDER, HOLDER_TYPE); - finfo.setAccessFlags(AccessFlag.PRIVATE | AccessFlag.STATIC); - cf.addField(finfo); - MethodInfo minfo = new MethodInfo(cp, "", "()V"); - Bytecode code = new Bytecode(cp, 0, 0); - code.addIconst(size * 2); - code.addAnewarray("java.lang.reflect.Method"); - code.addPutstatic(classname, HOLDER, HOLDER_TYPE); - code.addOpcode(Bytecode.RETURN); - minfo.setCodeAttribute(code.toCodeAttribute()); - cf.addMethod(minfo); - } - - private static void addSetter(String classname, ClassFile cf, ConstPool cp) - throws CannotCompileException - { - MethodInfo minfo = new MethodInfo(cp, HANDLER_SETTER, - HANDLER_SETTER_TYPE); - minfo.setAccessFlags(AccessFlag.PUBLIC); - Bytecode code = new Bytecode(cp, 2, 2); - code.addAload(0); - code.addAload(1); - code.addPutfield(classname, HANDLER, HANDLER_TYPE); - code.addOpcode(Bytecode.RETURN); - minfo.setCodeAttribute(code.toCodeAttribute()); - cf.addMethod(minfo); - } - - private int overrideMethods(ClassFile cf, ConstPool cp, String className, - HashMap allMethods) - throws CannotCompileException - { - String prefix = makeUniqueName("_d", allMethods); - Set entries = allMethods.entrySet(); - Iterator it = entries.iterator(); - int index = 0; - while (it.hasNext()) { - Map.Entry e = (Map.Entry)it.next(); - String key = (String)e.getKey(); - Method meth = (Method)e.getValue(); - int mod = meth.getModifiers(); - if (!Modifier.isFinal(mod) && !Modifier.isStatic(mod) - && isVisible(mod, className, meth)) - if (methodFilter == null || methodFilter.isHandled(meth)) - override(className, meth, prefix, index++, - keyToDesc(key), cf, cp); - } - - return index; - } - - private void override(String thisClassname, Method meth, String prefix, - int index, String desc, ClassFile cf, ConstPool cp) - throws CannotCompileException - { - Class declClass = meth.getDeclaringClass(); - String delegatorName = prefix + index + meth.getName(); - if (Modifier.isAbstract(meth.getModifiers())) - delegatorName = null; - else { - MethodInfo delegator - = makeDelegator(meth, desc, cp, declClass, delegatorName); - cf.addMethod(delegator); - } - - MethodInfo forwarder - = makeForwarder(thisClassname, meth, desc, cp, declClass, - delegatorName, index); - cf.addMethod(forwarder); - } - - private void makeConstructors(String thisClassName, ClassFile cf, - ConstPool cp, String classname) throws CannotCompileException - { - Constructor[] cons = superClass.getDeclaredConstructors(); - for (int i = 0; i < cons.length; i++) { - Constructor c = cons[i]; - int mod = c.getModifiers(); - if (!Modifier.isFinal(mod) && !Modifier.isPrivate(mod) - && isVisible(mod, classname, c)) { - MethodInfo m = makeConstructor(thisClassName, c, cp, superClass); - cf.addMethod(m); - } - } - } - - private static String makeUniqueName(String name, HashMap hash) { - Set keys = hash.keySet(); - if (makeUniqueName0(name, keys.iterator())) - return name; - - for (int i = 100; i < 999; i++) { - String s = name + i; - if (makeUniqueName0(s, keys.iterator())) - return s; - } - - throw new RuntimeException("cannot make a unique method name"); - } - - private static boolean makeUniqueName0(String name, Iterator it) { - while (it.hasNext()) { - String key = (String)it.next(); - if (key.startsWith(name)) - return false; - } - - return true; - } - - /** - * Returns true if the method is visible from the class. - * - * @param mod the modifiers of the method. - */ - private static boolean isVisible(int mod, String from, Member meth) { - if ((mod & Modifier.PRIVATE) != 0) - return false; - else if ((mod & (Modifier.PUBLIC | Modifier.PROTECTED)) != 0) - return true; - else { - String p = getPackageName(from); - String q = getPackageName(meth.getDeclaringClass().getName()); - if (p == null) - return q == null; - else - return p.equals(q); - } - } - - private static String getPackageName(String name) { - int i = name.lastIndexOf('.'); - if (i < 0) - return null; - else - return name.substring(0, i); - } - - private static HashMap getMethods(Class superClass, Class[] interfaceTypes) { - HashMap hash = new HashMap(); - for (int i = 0; i < interfaceTypes.length; i++) - getMethods(hash, interfaceTypes[i]); - - getMethods(hash, superClass); - return hash; - } - - private static void getMethods(HashMap hash, Class clazz) { - Class[] ifs = clazz.getInterfaces(); - for (int i = 0; i < ifs.length; i++) - getMethods(hash, ifs[i]); - - Class parent = clazz.getSuperclass(); - if (parent != null) - getMethods(hash, parent); - - Method[] methods = clazz.getDeclaredMethods(); - for (int i = 0; i < methods.length; i++) - if (!Modifier.isPrivate(methods[i].getModifiers())) { - Method m = methods[i]; - String key = m.getName() + ':' + RuntimeSupport.makeDescriptor(m); - hash.put(key, methods[i]); - } - } - - private static String keyToDesc(String key) { - return key.substring(key.indexOf(':') + 1); - } - - private static MethodInfo makeConstructor(String thisClassName, Constructor cons, - ConstPool cp, Class superClass) { - String desc = RuntimeSupport.makeDescriptor(cons.getParameterTypes(), - Void.TYPE); - MethodInfo minfo = new MethodInfo(cp, "", desc); - minfo.setAccessFlags(Modifier.PUBLIC); // cons.getModifiers() & ~Modifier.NATIVE - setThrows(minfo, cp, cons.getExceptionTypes()); - Bytecode code = new Bytecode(cp, 0, 0); - code.addAload(0); - code.addGetstatic(thisClassName, DEFAULT_INTERCEPTOR, HANDLER_TYPE); - code.addPutfield(thisClassName, HANDLER, HANDLER_TYPE); - code.addAload(0); - int s = addLoadParameters(code, cons.getParameterTypes(), 1); - code.addInvokespecial(superClass.getName(), "", desc); - code.addOpcode(Opcode.RETURN); - code.setMaxLocals(++s); - minfo.setCodeAttribute(code.toCodeAttribute()); - return minfo; - } - - private static MethodInfo makeDelegator(Method meth, String desc, - ConstPool cp, Class declClass, String delegatorName) { - MethodInfo delegator = new MethodInfo(cp, delegatorName, desc); - delegator.setAccessFlags(Modifier.FINAL | Modifier.PUBLIC - | (meth.getModifiers() & ~(Modifier.PRIVATE - | Modifier.PROTECTED - | Modifier.ABSTRACT - | Modifier.NATIVE - | Modifier.SYNCHRONIZED))); - setThrows(delegator, cp, meth); - Bytecode code = new Bytecode(cp, 0, 0); - code.addAload(0); - int s = addLoadParameters(code, meth.getParameterTypes(), 1); - code.addInvokespecial(declClass.getName(), meth.getName(), desc); - addReturn(code, meth.getReturnType()); - code.setMaxLocals(++s); - delegator.setCodeAttribute(code.toCodeAttribute()); - return delegator; - } - - /** - * @param delegatorName null if the original method is abstract. - */ - private static MethodInfo makeForwarder(String thisClassName, - Method meth, String desc, ConstPool cp, - Class declClass, String delegatorName, int index) { - MethodInfo forwarder = new MethodInfo(cp, meth.getName(), desc); - forwarder.setAccessFlags(Modifier.FINAL - | (meth.getModifiers() & ~(Modifier.ABSTRACT - | Modifier.NATIVE - | Modifier.SYNCHRONIZED))); - setThrows(forwarder, cp, meth); - int args = Descriptor.paramSize(desc); - Bytecode code = new Bytecode(cp, 0, args + 2); - /* - * if (methods[index * 2] == null) { - * methods[index * 2] - * = RuntimeSupport.findMethod(this, , ); - * methods[index * 2 + 1] - * = RuntimeSupport.findMethod(this, , ); - * or = null // the original method is abstract. - * } - * return ($r)handler.invoke(this, methods[index * 2], - * methods[index * 2 + 1], $args); - */ - int origIndex = index * 2; - int delIndex = index * 2 + 1; - int arrayVar = args + 1; - code.addGetstatic(thisClassName, HOLDER, HOLDER_TYPE); - code.addAstore(arrayVar); - code.addAload(arrayVar); - code.addIconst(origIndex); - code.addOpcode(Opcode.AALOAD); - code.addOpcode(Opcode.IFNONNULL); - int pc = code.currentPc(); - code.addIndex(0); - - callFindMethod(code, "findSuperMethod", arrayVar, origIndex, meth.getName(), desc); - callFindMethod(code, "findMethod", arrayVar, delIndex, delegatorName, desc); - - code.write16bit(pc, code.currentPc() - pc + 1); - code.addAload(0); - code.addGetfield(thisClassName, HANDLER, HANDLER_TYPE); - code.addAload(0); - - code.addAload(arrayVar); - code.addIconst(origIndex); - code.addOpcode(Opcode.AALOAD); - - code.addAload(arrayVar); - code.addIconst(delIndex); - code.addOpcode(Opcode.AALOAD); - - makeParameterList(code, meth.getParameterTypes()); - code.addInvokeinterface(MethodHandler.class.getName(), "invoke", - "(Ljava/lang/Object;Ljava/lang/reflect/Method;Ljava/lang/reflect/Method;[Ljava/lang/Object;)Ljava/lang/Object;", - 5); - Class retType = meth.getReturnType(); - addUnwrapper(code, retType); - addReturn(code, retType); - - forwarder.setCodeAttribute(code.toCodeAttribute()); - return forwarder; - } - - private static void setThrows(MethodInfo minfo, ConstPool cp, Method orig) { - Class[] exceptions = orig.getExceptionTypes(); - setThrows(minfo, cp, exceptions); - } - - private static void setThrows(MethodInfo minfo, ConstPool cp, - Class[] exceptions) { - if (exceptions.length == 0) - return; - - String[] list = new String[exceptions.length]; - for (int i = 0; i < exceptions.length; i++) - list[i] = exceptions[i].getName(); - - ExceptionsAttribute ea = new ExceptionsAttribute(cp); - ea.setExceptions(list); - minfo.setExceptionsAttribute(ea); - } - - private static int addLoadParameters(Bytecode code, Class[] params, - int offset) { - int stacksize = 0; - int n = params.length; - for (int i = 0; i < n; ++i) - stacksize += addLoad(code, stacksize + offset, params[i]); - - return stacksize; - } - - private static int addLoad(Bytecode code, int n, Class type) { - if (type.isPrimitive()) { - if (type == Long.TYPE) { - code.addLload(n); - return 2; - } - else if (type == Float.TYPE) - code.addFload(n); - else if (type == Double.TYPE) { - code.addDload(n); - return 2; - } - else - code.addIload(n); - } - else - code.addAload(n); - - return 1; - } - - private static int addReturn(Bytecode code, Class type) { - if (type.isPrimitive()) { - if (type == Long.TYPE) { - code.addOpcode(Opcode.LRETURN); - return 2; - } - else if (type == Float.TYPE) - code.addOpcode(Opcode.FRETURN); - else if (type == Double.TYPE) { - code.addOpcode(Opcode.DRETURN); - return 2; - } - else if (type == Void.TYPE) { - code.addOpcode(Opcode.RETURN); - return 0; - } - else - code.addOpcode(Opcode.IRETURN); - } - else - code.addOpcode(Opcode.ARETURN); - - return 1; - } - - private static void makeParameterList(Bytecode code, Class[] params) { - int regno = 1; - int n = params.length; - code.addIconst(n); - code.addAnewarray("java/lang/Object"); - for (int i = 0; i < n; i++) { - code.addOpcode(Opcode.DUP); - code.addIconst(i); - Class type = params[i]; - if (type.isPrimitive()) - regno = makeWrapper(code, type, regno); - else { - code.addAload(regno); - regno++; - } - - code.addOpcode(Opcode.AASTORE); - } - } - - private static int makeWrapper(Bytecode code, Class type, int regno) { - int index = FactoryHelper.typeIndex(type); - String wrapper = FactoryHelper.wrapperTypes[index]; - code.addNew(wrapper); - code.addOpcode(Opcode.DUP); - addLoad(code, regno, type); - code.addInvokespecial(wrapper, "", - FactoryHelper.wrapperDesc[index]); - return regno + FactoryHelper.dataSize[index]; - } - - /** - * @param methodName might be null. - */ - private static void callFindMethod(Bytecode code, String findMethod, - int arrayVar, int index, String methodName, String desc) { - String findClass = RuntimeSupport.class.getName(); - String findDesc - = "(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/reflect/Method;"; - - code.addAload(arrayVar); - code.addIconst(index); - if (methodName == null) - code.addOpcode(Opcode.ACONST_NULL); - else { - code.addAload(0); - code.addLdc(methodName); - code.addLdc(desc); - code.addInvokestatic(findClass, findMethod, findDesc); - } - - code.addOpcode(Opcode.AASTORE); - } - - private static void addUnwrapper(Bytecode code, Class type) { - if (type.isPrimitive()) { - if (type == Void.TYPE) - code.addOpcode(Opcode.POP); - else { - int index = FactoryHelper.typeIndex(type); - String wrapper = FactoryHelper.wrapperTypes[index]; - code.addCheckcast(wrapper); - code.addInvokevirtual(wrapper, - FactoryHelper.unwarpMethods[index], - FactoryHelper.unwrapDesc[index]); - } - } - else - code.addCheckcast(type.getName()); - } -} +/* + * Javassist, a Java-bytecode translator toolkit. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. + * + * The contents of this file are subject to the Mozilla Public License Version + * 1.1 (the "License"); you may not use this file except in compliance with + * the License. Alternatively, the contents of this file may be used under + * the terms of the GNU Lesser General Public License Version 2.1 or later. + * + * Software distributed under the License is distributed on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License + * for the specific language governing rights and limitations under the + * License. + */ + +package javassist.util.proxy; + +import java.lang.reflect.Field; +import java.lang.reflect.Method; +import java.lang.reflect.Constructor; +import java.lang.reflect.Member; +import java.lang.reflect.Modifier; +import java.util.HashMap; +import java.util.Iterator; +import java.util.Map; +import java.util.Set; + +import javassist.CannotCompileException; +import javassist.bytecode.*; + +/** + * Factory of dynamic proxy classes. + * + *

This factory generates a class that extends the given super class and implements + * the given interfaces. The calls of the methods inherited from the super class are + * forwarded and then invoke() is called on the method handler + * associated with the generated class. The calls of the methods from the interfaces + * are also forwarded to the method handler. + * + *

For example, if the following code is executed, + * + *

+ * + *

Then, the following method call will be forwarded to MethodHandler + * mi and prints a message before executing the originally called method + * bar() in Foo. + * + *

+ * + *

To change the method handler during runtime, + * execute the following code: + * + *

+ * + *

Here is an example of method handler. It does not execute + * anything except invoking the original method: + * + *

+ * + * @see MethodHandler + * @since 3.1 + */ +public class ProxyFactory { + private Class superClass; + private Class[] interfaces; + private MethodFilter methodFilter; + private MethodHandler handler; + private Class thisClass; + + /** + * If the value of this variable is not null, the class file of + * the generated proxy class is written under the directory specified + * by this variable. For example, if the value is + * ".", then the class file is written under the current + * directory. This method is for debugging. + * + *

The default value is null. + */ + public String writeDirectory; + + private static final Class OBJECT_TYPE = Object.class; + + private static final String HOLDER = "_methods_"; + private static final String HOLDER_TYPE = "[Ljava/lang/reflect/Method;"; + private static final String HANDLER = "handler"; + private static final String DEFAULT_INTERCEPTOR = "default_interceptor"; + private static final String HANDLER_TYPE + = 'L' + MethodHandler.class.getName().replace('.', '/') + ';'; + private static final String HANDLER_SETTER = "setHandler"; + private static final String HANDLER_SETTER_TYPE = "(" + HANDLER_TYPE + ")V"; + + /** + * Constructs a factory of proxy class. + */ + public ProxyFactory() { + superClass = null; + interfaces = null; + methodFilter = null; + handler = new MethodHandler() { + public Object invoke(Object self, Method m, + Method proceed, Object[] args) + throws Exception + { + return proceed.invoke(self, args); + } + }; + thisClass = null; + writeDirectory = null; + } + + /** + * Sets the super class of a proxy class. + */ + public void setSuperclass(Class clazz) { + superClass = clazz; + } + + /** + * Sets the interfaces of a proxy class. + */ + public void setInterfaces(Class[] ifs) { + interfaces = ifs; + } + + /** + * Sets a filter that selects the methods that will be controlled by a handler. + */ + public void setFilter(MethodFilter mf) { + methodFilter = mf; + } + + /** + * Generates a proxy class. + */ + public Class createClass() { + if (thisClass == null) + try { + ClassFile cf = make(); + ClassLoader cl = getClassLoader(); + if (writeDirectory != null) + FactoryHelper.writeFile(cf, writeDirectory); + + thisClass = FactoryHelper.toClass(cf, cl); + setHandler(); + } + catch (CannotCompileException e) { + throw new RuntimeException(e.getMessage(), e); + } + + return thisClass; + } + + protected ClassLoader getClassLoader() { + if (superClass != null && !superClass.getName().equals("java.lang.Object")) + return superClass.getClassLoader(); + else if (interfaces != null && interfaces.length > 0) + return interfaces[0].getClassLoader(); + else + return this.getClass().getClassLoader(); + // return Thread.currentThread().getContextClassLoader(); + } + + /** + * Sets the default invocation handler. This invocation handler is shared + * among all the instances of a proxy class unless another is explicitly + * specified. + */ + public void setHandler(MethodHandler mi) { + handler = mi; + setHandler(); + } + + private void setHandler() { + if (thisClass != null && handler != null) + try { + Field f = thisClass.getField(DEFAULT_INTERCEPTOR); + f.setAccessible(true); + f.set(null, handler); + f.setAccessible(false); + } + catch (Exception e) { + throw new RuntimeException(e); + } + } + + private static int counter = 0; + + private ClassFile make() throws CannotCompileException { + String superName, classname; + if (interfaces == null) + interfaces = new Class[0]; + + if (superClass == null) { + superClass = OBJECT_TYPE; + superName = superClass.getName(); + classname = interfaces.length == 0 ? superName + : interfaces[0].getName(); + } + else { + superName = superClass.getName(); + classname = superName; + } + + if (Modifier.isFinal(superClass.getModifiers())) + throw new CannotCompileException(superName + " is final"); + + // generate a proxy name. + classname = classname + "_$$_javassist_" + counter++; + if (classname.startsWith("java.")) + classname = "org.javassist.tmp." + classname; + + ClassFile cf = new ClassFile(false, classname, superName); + cf.setAccessFlags(AccessFlag.PUBLIC); + setInterfaces(cf, interfaces); + ConstPool pool = cf.getConstPool(); + FieldInfo finfo = new FieldInfo(pool, DEFAULT_INTERCEPTOR, HANDLER_TYPE); + finfo.setAccessFlags(AccessFlag.PUBLIC | AccessFlag.STATIC); + cf.addField(finfo); + + FieldInfo finfo2 = new FieldInfo(pool, HANDLER, HANDLER_TYPE); + finfo2.setAccessFlags(AccessFlag.PRIVATE); + cf.addField(finfo2); + + HashMap allMethods = getMethods(superClass, interfaces); + int size = allMethods.size(); + makeConstructors(classname, cf, pool, classname); + int s = overrideMethods(cf, pool, classname, allMethods); + addMethodsHolder(cf, pool, classname, s); + addSetter(classname, cf, pool); + + thisClass = null; + return cf; + } + + private static void setInterfaces(ClassFile cf, Class[] interfaces) { + String setterIntf = ProxyObject.class.getName(); + String[] list; + if (interfaces == null || interfaces.length == 0) + list = new String[] { setterIntf }; + else { + list = new String[interfaces.length + 1]; + for (int i = 0; i < interfaces.length; i++) + list[i] = interfaces[i].getName(); + + list[interfaces.length] = setterIntf; + } + + cf.setInterfaces(list); + } + + private static void addMethodsHolder(ClassFile cf, ConstPool cp, + String classname, int size) + throws CannotCompileException + { + FieldInfo finfo = new FieldInfo(cp, HOLDER, HOLDER_TYPE); + finfo.setAccessFlags(AccessFlag.PRIVATE | AccessFlag.STATIC); + cf.addField(finfo); + MethodInfo minfo = new MethodInfo(cp, "", "()V"); + Bytecode code = new Bytecode(cp, 0, 0); + code.addIconst(size * 2); + code.addAnewarray("java.lang.reflect.Method"); + code.addPutstatic(classname, HOLDER, HOLDER_TYPE); + code.addOpcode(Bytecode.RETURN); + minfo.setCodeAttribute(code.toCodeAttribute()); + cf.addMethod(minfo); + } + + private static void addSetter(String classname, ClassFile cf, ConstPool cp) + throws CannotCompileException + { + MethodInfo minfo = new MethodInfo(cp, HANDLER_SETTER, + HANDLER_SETTER_TYPE); + minfo.setAccessFlags(AccessFlag.PUBLIC); + Bytecode code = new Bytecode(cp, 2, 2); + code.addAload(0); + code.addAload(1); + code.addPutfield(classname, HANDLER, HANDLER_TYPE); + code.addOpcode(Bytecode.RETURN); + minfo.setCodeAttribute(code.toCodeAttribute()); + cf.addMethod(minfo); + } + + private int overrideMethods(ClassFile cf, ConstPool cp, String className, + HashMap allMethods) + throws CannotCompileException + { + String prefix = makeUniqueName("_d", allMethods); + Set entries = allMethods.entrySet(); + Iterator it = entries.iterator(); + int index = 0; + while (it.hasNext()) { + Map.Entry e = (Map.Entry)it.next(); + String key = (String)e.getKey(); + Method meth = (Method)e.getValue(); + int mod = meth.getModifiers(); + if (!Modifier.isFinal(mod) && !Modifier.isStatic(mod) + && isVisible(mod, className, meth)) + if (methodFilter == null || methodFilter.isHandled(meth)) + override(className, meth, prefix, index++, + keyToDesc(key), cf, cp); + } + + return index; + } + + private void override(String thisClassname, Method meth, String prefix, + int index, String desc, ClassFile cf, ConstPool cp) + throws CannotCompileException + { + Class declClass = meth.getDeclaringClass(); + String delegatorName = prefix + index + meth.getName(); + if (Modifier.isAbstract(meth.getModifiers())) + delegatorName = null; + else { + MethodInfo delegator + = makeDelegator(meth, desc, cp, declClass, delegatorName); + cf.addMethod(delegator); + } + + MethodInfo forwarder + = makeForwarder(thisClassname, meth, desc, cp, declClass, + delegatorName, index); + cf.addMethod(forwarder); + } + + private void makeConstructors(String thisClassName, ClassFile cf, + ConstPool cp, String classname) throws CannotCompileException + { + Constructor[] cons = superClass.getDeclaredConstructors(); + for (int i = 0; i < cons.length; i++) { + Constructor c = cons[i]; + int mod = c.getModifiers(); + if (!Modifier.isFinal(mod) && !Modifier.isPrivate(mod) + && isVisible(mod, classname, c)) { + MethodInfo m = makeConstructor(thisClassName, c, cp, superClass); + cf.addMethod(m); + } + } + } + + private static String makeUniqueName(String name, HashMap hash) { + Set keys = hash.keySet(); + if (makeUniqueName0(name, keys.iterator())) + return name; + + for (int i = 100; i < 999; i++) { + String s = name + i; + if (makeUniqueName0(s, keys.iterator())) + return s; + } + + throw new RuntimeException("cannot make a unique method name"); + } + + private static boolean makeUniqueName0(String name, Iterator it) { + while (it.hasNext()) { + String key = (String)it.next(); + if (key.startsWith(name)) + return false; + } + + return true; + } + + /** + * Returns true if the method is visible from the class. + * + * @param mod the modifiers of the method. + */ + private static boolean isVisible(int mod, String from, Member meth) { + if ((mod & Modifier.PRIVATE) != 0) + return false; + else if ((mod & (Modifier.PUBLIC | Modifier.PROTECTED)) != 0) + return true; + else { + String p = getPackageName(from); + String q = getPackageName(meth.getDeclaringClass().getName()); + if (p == null) + return q == null; + else + return p.equals(q); + } + } + + private static String getPackageName(String name) { + int i = name.lastIndexOf('.'); + if (i < 0) + return null; + else + return name.substring(0, i); + } + + private static HashMap getMethods(Class superClass, Class[] interfaceTypes) { + HashMap hash = new HashMap(); + for (int i = 0; i < interfaceTypes.length; i++) + getMethods(hash, interfaceTypes[i]); + + getMethods(hash, superClass); + return hash; + } + + private static void getMethods(HashMap hash, Class clazz) { + Class[] ifs = clazz.getInterfaces(); + for (int i = 0; i < ifs.length; i++) + getMethods(hash, ifs[i]); + + Class parent = clazz.getSuperclass(); + if (parent != null) + getMethods(hash, parent); + + Method[] methods = clazz.getDeclaredMethods(); + for (int i = 0; i < methods.length; i++) + if (!Modifier.isPrivate(methods[i].getModifiers())) { + Method m = methods[i]; + String key = m.getName() + ':' + RuntimeSupport.makeDescriptor(m); + hash.put(key, methods[i]); + } + } + + private static String keyToDesc(String key) { + return key.substring(key.indexOf(':') + 1); + } + + private static MethodInfo makeConstructor(String thisClassName, Constructor cons, + ConstPool cp, Class superClass) { + String desc = RuntimeSupport.makeDescriptor(cons.getParameterTypes(), + Void.TYPE); + MethodInfo minfo = new MethodInfo(cp, "", desc); + minfo.setAccessFlags(Modifier.PUBLIC); // cons.getModifiers() & ~Modifier.NATIVE + setThrows(minfo, cp, cons.getExceptionTypes()); + Bytecode code = new Bytecode(cp, 0, 0); + code.addAload(0); + code.addGetstatic(thisClassName, DEFAULT_INTERCEPTOR, HANDLER_TYPE); + code.addPutfield(thisClassName, HANDLER, HANDLER_TYPE); + code.addAload(0); + int s = addLoadParameters(code, cons.getParameterTypes(), 1); + code.addInvokespecial(superClass.getName(), "", desc); + code.addOpcode(Opcode.RETURN); + code.setMaxLocals(++s); + minfo.setCodeAttribute(code.toCodeAttribute()); + return minfo; + } + + private static MethodInfo makeDelegator(Method meth, String desc, + ConstPool cp, Class declClass, String delegatorName) { + MethodInfo delegator = new MethodInfo(cp, delegatorName, desc); + delegator.setAccessFlags(Modifier.FINAL | Modifier.PUBLIC + | (meth.getModifiers() & ~(Modifier.PRIVATE + | Modifier.PROTECTED + | Modifier.ABSTRACT + | Modifier.NATIVE + | Modifier.SYNCHRONIZED))); + setThrows(delegator, cp, meth); + Bytecode code = new Bytecode(cp, 0, 0); + code.addAload(0); + int s = addLoadParameters(code, meth.getParameterTypes(), 1); + code.addInvokespecial(declClass.getName(), meth.getName(), desc); + addReturn(code, meth.getReturnType()); + code.setMaxLocals(++s); + delegator.setCodeAttribute(code.toCodeAttribute()); + return delegator; + } + + /** + * @param delegatorName null if the original method is abstract. + */ + private static MethodInfo makeForwarder(String thisClassName, + Method meth, String desc, ConstPool cp, + Class declClass, String delegatorName, int index) { + MethodInfo forwarder = new MethodInfo(cp, meth.getName(), desc); + forwarder.setAccessFlags(Modifier.FINAL + | (meth.getModifiers() & ~(Modifier.ABSTRACT + | Modifier.NATIVE + | Modifier.SYNCHRONIZED))); + setThrows(forwarder, cp, meth); + int args = Descriptor.paramSize(desc); + Bytecode code = new Bytecode(cp, 0, args + 2); + /* + * if (methods[index * 2] == null) { + * methods[index * 2] + * = RuntimeSupport.findMethod(this, , ); + * methods[index * 2 + 1] + * = RuntimeSupport.findMethod(this, , ); + * or = null // the original method is abstract. + * } + * return ($r)handler.invoke(this, methods[index * 2], + * methods[index * 2 + 1], $args); + */ + int origIndex = index * 2; + int delIndex = index * 2 + 1; + int arrayVar = args + 1; + code.addGetstatic(thisClassName, HOLDER, HOLDER_TYPE); + code.addAstore(arrayVar); + code.addAload(arrayVar); + code.addIconst(origIndex); + code.addOpcode(Opcode.AALOAD); + code.addOpcode(Opcode.IFNONNULL); + int pc = code.currentPc(); + code.addIndex(0); + + callFindMethod(code, "findSuperMethod", arrayVar, origIndex, meth.getName(), desc); + callFindMethod(code, "findMethod", arrayVar, delIndex, delegatorName, desc); + + code.write16bit(pc, code.currentPc() - pc + 1); + code.addAload(0); + code.addGetfield(thisClassName, HANDLER, HANDLER_TYPE); + code.addAload(0); + + code.addAload(arrayVar); + code.addIconst(origIndex); + code.addOpcode(Opcode.AALOAD); + + code.addAload(arrayVar); + code.addIconst(delIndex); + code.addOpcode(Opcode.AALOAD); + + makeParameterList(code, meth.getParameterTypes()); + code.addInvokeinterface(MethodHandler.class.getName(), "invoke", + "(Ljava/lang/Object;Ljava/lang/reflect/Method;Ljava/lang/reflect/Method;[Ljava/lang/Object;)Ljava/lang/Object;", + 5); + Class retType = meth.getReturnType(); + addUnwrapper(code, retType); + addReturn(code, retType); + + forwarder.setCodeAttribute(code.toCodeAttribute()); + return forwarder; + } + + private static void setThrows(MethodInfo minfo, ConstPool cp, Method orig) { + Class[] exceptions = orig.getExceptionTypes(); + setThrows(minfo, cp, exceptions); + } + + private static void setThrows(MethodInfo minfo, ConstPool cp, + Class[] exceptions) { + if (exceptions.length == 0) + return; + + String[] list = new String[exceptions.length]; + for (int i = 0; i < exceptions.length; i++) + list[i] = exceptions[i].getName(); + + ExceptionsAttribute ea = new ExceptionsAttribute(cp); + ea.setExceptions(list); + minfo.setExceptionsAttribute(ea); + } + + private static int addLoadParameters(Bytecode code, Class[] params, + int offset) { + int stacksize = 0; + int n = params.length; + for (int i = 0; i < n; ++i) + stacksize += addLoad(code, stacksize + offset, params[i]); + + return stacksize; + } + + private static int addLoad(Bytecode code, int n, Class type) { + if (type.isPrimitive()) { + if (type == Long.TYPE) { + code.addLload(n); + return 2; + } + else if (type == Float.TYPE) + code.addFload(n); + else if (type == Double.TYPE) { + code.addDload(n); + return 2; + } + else + code.addIload(n); + } + else + code.addAload(n); + + return 1; + } + + private static int addReturn(Bytecode code, Class type) { + if (type.isPrimitive()) { + if (type == Long.TYPE) { + code.addOpcode(Opcode.LRETURN); + return 2; + } + else if (type == Float.TYPE) + code.addOpcode(Opcode.FRETURN); + else if (type == Double.TYPE) { + code.addOpcode(Opcode.DRETURN); + return 2; + } + else if (type == Void.TYPE) { + code.addOpcode(Opcode.RETURN); + return 0; + } + else + code.addOpcode(Opcode.IRETURN); + } + else + code.addOpcode(Opcode.ARETURN); + + return 1; + } + + private static void makeParameterList(Bytecode code, Class[] params) { + int regno = 1; + int n = params.length; + code.addIconst(n); + code.addAnewarray("java/lang/Object"); + for (int i = 0; i < n; i++) { + code.addOpcode(Opcode.DUP); + code.addIconst(i); + Class type = params[i]; + if (type.isPrimitive()) + regno = makeWrapper(code, type, regno); + else { + code.addAload(regno); + regno++; + } + + code.addOpcode(Opcode.AASTORE); + } + } + + private static int makeWrapper(Bytecode code, Class type, int regno) { + int index = FactoryHelper.typeIndex(type); + String wrapper = FactoryHelper.wrapperTypes[index]; + code.addNew(wrapper); + code.addOpcode(Opcode.DUP); + addLoad(code, regno, type); + code.addInvokespecial(wrapper, "", + FactoryHelper.wrapperDesc[index]); + return regno + FactoryHelper.dataSize[index]; + } + + /** + * @param methodName might be null. + */ + private static void callFindMethod(Bytecode code, String findMethod, + int arrayVar, int index, String methodName, String desc) { + String findClass = RuntimeSupport.class.getName(); + String findDesc + = "(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/reflect/Method;"; + + code.addAload(arrayVar); + code.addIconst(index); + if (methodName == null) + code.addOpcode(Opcode.ACONST_NULL); + else { + code.addAload(0); + code.addLdc(methodName); + code.addLdc(desc); + code.addInvokestatic(findClass, findMethod, findDesc); + } + + code.addOpcode(Opcode.AASTORE); + } + + private static void addUnwrapper(Bytecode code, Class type) { + if (type.isPrimitive()) { + if (type == Void.TYPE) + code.addOpcode(Opcode.POP); + else { + int index = FactoryHelper.typeIndex(type); + String wrapper = FactoryHelper.wrapperTypes[index]; + code.addCheckcast(wrapper); + code.addInvokevirtual(wrapper, + FactoryHelper.unwarpMethods[index], + FactoryHelper.unwrapDesc[index]); + } + } + else + code.addCheckcast(type.getName()); + } +} diff --git a/src/main/javassist/util/proxy/ProxyObject.java b/src/main/javassist/util/proxy/ProxyObject.java index 4cba5c7b..9af00f83 100644 --- a/src/main/javassist/util/proxy/ProxyObject.java +++ b/src/main/javassist/util/proxy/ProxyObject.java @@ -1,6 +1,6 @@ /* * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. * * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with diff --git a/src/main/javassist/util/proxy/RuntimeSupport.java b/src/main/javassist/util/proxy/RuntimeSupport.java index 837ed6ca..3e469699 100644 --- a/src/main/javassist/util/proxy/RuntimeSupport.java +++ b/src/main/javassist/util/proxy/RuntimeSupport.java @@ -1,157 +1,157 @@ -/* - * Javassist, a Java-bytecode translator toolkit. - * Copyright (C) 1999-2005 Shigeru Chiba. All Rights Reserved. - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. Alternatively, the contents of this file may be used under - * the terms of the GNU Lesser General Public License Version 2.1 or later. - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - */ - -package javassist.util.proxy; - -import java.lang.reflect.Method; - -/** - * Runtime support routines that the classes generated by ProxyFactory use. - * - * @see ProxyFactory - */ -public class RuntimeSupport { - /** - * Finds a method with the given name and descriptor. - * It searches only the class of self. - * - * @throws RuntimeException if the method is not found. - */ - public static Method findMethod(Object self, String name, String desc) { - Method m = findMethod2(self.getClass(), name, desc); - if (m == null) - error(self, name, desc); - - return m; - } - - /** - * Finds a method that has the given name and descriptor and is declared - * in the super class. - * - * @throws RuntimeException if the method is not found. - */ - public static Method findSuperMethod(Object self, String name, String desc) { - Class clazz = self.getClass(); - Method m = findSuperMethod2(clazz.getSuperclass(), name, desc); - if (m == null) - m = searchInterfaces(clazz, name, desc); - - if (m == null) - error(self, name, desc); - - return m; - } - - private static void error(Object self, String name, String desc) { - throw new RuntimeException("not found " + name + ":" + desc - + " in " + self.getClass().getName()); - } - - private static Method findSuperMethod2(Class clazz, String name, String desc) { - Method m = findMethod2(clazz, name, desc); - if (m != null) - return m; - - Class superClass = clazz.getSuperclass(); - if (superClass != null) { - m = findSuperMethod2(superClass, name, desc); - if (m != null) - return m; - } - - return searchInterfaces(clazz, name, desc); - } - - private static Method searchInterfaces(Class clazz, String name, String desc) { - Method m = null; - Class[] interfaces = clazz.getInterfaces(); - for (int i = 0; i < interfaces.length; i++) { - m = findSuperMethod2(interfaces[i], name, desc); - if (m != null) - return m; - } - - return m; - } - - private static Method findMethod2(Class clazz, String name, String desc) { - Method[] methods = clazz.getDeclaredMethods(); - int n = methods.length; - for (int i = 0; i < n; i++) - if (methods[i].getName().equals(name) - && makeDescriptor(methods[i]).equals(desc)) - return methods[i]; - - return null; - } - - /** - * Makes a descriptor for a given method. - */ - public static String makeDescriptor(Method m) { - Class[] params = m.getParameterTypes(); - return makeDescriptor(params, m.getReturnType()); - } - - /** - * Makes a descriptor for a given method. - * - * @param params parameter types. - * @param retType return type. - */ - public static String makeDescriptor(Class[] params, Class retType) { - StringBuffer sbuf = new StringBuffer(); - sbuf.append('('); - for (int i = 0; i < params.length; i++) - makeDesc(sbuf, params[i]); - - sbuf.append(')'); - makeDesc(sbuf, retType); - return sbuf.toString(); - } - - private static void makeDesc(StringBuffer sbuf, Class type) { - if (type.isArray()) { - sbuf.append('['); - makeDesc(sbuf, type.getComponentType()); - } - else if (type.isPrimitive()) { - if (type == Void.TYPE) - sbuf.append('V'); - else if (type == Integer.TYPE) - sbuf.append('I'); - else if (type == Byte.TYPE) - sbuf.append('B'); - else if (type == Long.TYPE) - sbuf.append('J'); - else if (type == Double.TYPE) - sbuf.append('D'); - else if (type == Float.TYPE) - sbuf.append('F'); - else if (type == Character.TYPE) - sbuf.append('C'); - else if (type == Short.TYPE) - sbuf.append('S'); - else if (type == Boolean.TYPE) - sbuf.append('Z'); - else - throw new RuntimeException("bad type: " + type.getName()); - } - else - sbuf.append('L').append(type.getName().replace('.', '/')) - .append(';'); - } -} +/* + * Javassist, a Java-bytecode translator toolkit. + * Copyright (C) 1999-2006 Shigeru Chiba. All Rights Reserved. + * + * The contents of this file are subject to the Mozilla Public License Version + * 1.1 (the "License"); you may not use this file except in compliance with + * the License. Alternatively, the contents of this file may be used under + * the terms of the GNU Lesser General Public License Version 2.1 or later. + * + * Software distributed under the License is distributed on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License + * for the specific language governing rights and limitations under the + * License. + */ + +package javassist.util.proxy; + +import java.lang.reflect.Method; + +/** + * Runtime support routines that the classes generated by ProxyFactory use. + * + * @see ProxyFactory + */ +public class RuntimeSupport { + /** + * Finds a method with the given name and descriptor. + * It searches only the class of self. + * + * @throws RuntimeException if the method is not found. + */ + public static Method findMethod(Object self, String name, String desc) { + Method m = findMethod2(self.getClass(), name, desc); + if (m == null) + error(self, name, desc); + + return m; + } + + /** + * Finds a method that has the given name and descriptor and is declared + * in the super class. + * + * @throws RuntimeException if the method is not found. + */ + public static Method findSuperMethod(Object self, String name, String desc) { + Class clazz = self.getClass(); + Method m = findSuperMethod2(clazz.getSuperclass(), name, desc); + if (m == null) + m = searchInterfaces(clazz, name, desc); + + if (m == null) + error(self, name, desc); + + return m; + } + + private static void error(Object self, String name, String desc) { + throw new RuntimeException("not found " + name + ":" + desc + + " in " + self.getClass().getName()); + } + + private static Method findSuperMethod2(Class clazz, String name, String desc) { + Method m = findMethod2(clazz, name, desc); + if (m != null) + return m; + + Class superClass = clazz.getSuperclass(); + if (superClass != null) { + m = findSuperMethod2(superClass, name, desc); + if (m != null) + return m; + } + + return searchInterfaces(clazz, name, desc); + } + + private static Method searchInterfaces(Class clazz, String name, String desc) { + Method m = null; + Class[] interfaces = clazz.getInterfaces(); + for (int i = 0; i < interfaces.length; i++) { + m = findSuperMethod2(interfaces[i], name, desc); + if (m != null) + return m; + } + + return m; + } + + private static Method findMethod2(Class clazz, String name, String desc) { + Method[] methods = clazz.getDeclaredMethods(); + int n = methods.length; + for (int i = 0; i < n; i++) + if (methods[i].getName().equals(name) + && makeDescriptor(methods[i]).equals(desc)) + return methods[i]; + + return null; + } + + /** + * Makes a descriptor for a given method. + */ + public static String makeDescriptor(Method m) { + Class[] params = m.getParameterTypes(); + return makeDescriptor(params, m.getReturnType()); + } + + /** + * Makes a descriptor for a given method. + * + * @param params parameter types. + * @param retType return type. + */ + public static String makeDescriptor(Class[] params, Class retType) { + StringBuffer sbuf = new StringBuffer(); + sbuf.append('('); + for (int i = 0; i < params.length; i++) + makeDesc(sbuf, params[i]); + + sbuf.append(')'); + makeDesc(sbuf, retType); + return sbuf.toString(); + } + + private static void makeDesc(StringBuffer sbuf, Class type) { + if (type.isArray()) { + sbuf.append('['); + makeDesc(sbuf, type.getComponentType()); + } + else if (type.isPrimitive()) { + if (type == Void.TYPE) + sbuf.append('V'); + else if (type == Integer.TYPE) + sbuf.append('I'); + else if (type == Byte.TYPE) + sbuf.append('B'); + else if (type == Long.TYPE) + sbuf.append('J'); + else if (type == Double.TYPE) + sbuf.append('D'); + else if (type == Float.TYPE) + sbuf.append('F'); + else if (type == Character.TYPE) + sbuf.append('C'); + else if (type == Short.TYPE) + sbuf.append('S'); + else if (type == Boolean.TYPE) + sbuf.append('Z'); + else + throw new RuntimeException("bad type: " + type.getName()); + } + else + sbuf.append('L').append(type.getName().replace('.', '/')) + .append(';'); + } +} -- 2.39.5