summaryrefslogtreecommitdiff
path: root/libjava/classpath
diff options
context:
space:
mode:
authorgandalf <gandalf@138bc75d-0d04-0410-961f-82ee72b054a4>2010-10-12 15:55:12 +0000
committergandalf <gandalf@138bc75d-0d04-0410-961f-82ee72b054a4>2010-10-12 15:55:12 +0000
commitd8bc803082928434d39c7ab25b322f7066603de6 (patch)
treeed04a07a98f6d83830e25c996a838f7e5b3b109b /libjava/classpath
parente67bda386ddfbe740ecbb7c336f76360a393386b (diff)
downloadgcc-d8bc803082928434d39c7ab25b322f7066603de6.tar.gz
GNU Classpath import (libgcj-snapshot-20100921).
2010-10-12 Andrew John Hughes <ahughes@redhat.com> Import GNU Classpath (libgcj-snapshot-20100921). * libjava/Makefile.in: Regenerated. * libjava/javax/swing/text/html/StyleSheet.h, * libjava/javax/swing/text/html/MinimalHTMLWriter.h, * libjava/javax/swing/text/html/HTMLWriter.h, * libjava/javax/xml/stream/XMLEventFactory.h, * libjava/javax/xml/stream/XMLOutputFactory.h, * libjava/javax/xml/stream/events/Namespace.h, * libjava/javax/xml/stream/util/StreamReaderDelegate.h, * libjava/javax/security/auth/kerberos/KeyImpl.h, * libjava/javax/security/auth/kerberos/KerberosTicket.h: Regenerated. * libjava/classpath/Makefile.in, * libjava/classpath/depcomp, * libjava/classpath/scripts/Makefile.in, * libjava/classpath/resource/Makefile.in, * libjava/classpath/tools/Makefile.in: Regenerated. Use libtool from top-level config directory. * libjava/classpath/tools/classes/gnu/classpath/tools/StringToolkit.class, * libjava/classpath/tools/classes/gnu/classpath/tools/java2xhtml/Java2xhtml.class, * libjava/classpath/tools/classes/gnu/classpath/tools/java2xhtml/Java2xhtml$State.class, * libjava/classpath/tools/classes/gnu/classpath/tools/IOToolkit.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$3.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$5.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$7.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$9.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$OptionProcessor.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/RootDocImpl$ResolvedImportClassFile.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ClassComponent.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$21.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/TagImpl.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ClassDocProxy.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$23.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/BlockSourceComponent.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/DirectoryTree$FileNode.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$25.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/IgnoredFileParseException.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/TextTagImpl.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Parser$Context.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/InheritDocTagImpl.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/FunctionComponent.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/AdditionExpression.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/TypeCastExpression.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/SubtractionExpression.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/Type.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/BinaryEqualityExpression.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/InclusiveOrExpression.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/NegateExpression.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/GreaterThanExpression.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantDouble.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/EqualExpression.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantChar.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ExclusiveOrExpression.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantBoolean.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/BinaryBitwiseExpression.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/LogicalOrExpression.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/Evaluator.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/BinaryRelationExpression.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/BinaryShiftExpression.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/DivisionExpression.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantInteger.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ShiftLeftExpression.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantShort.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantLong.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/LogicalNotExpression.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/GreaterThanOrEqualExpression.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantByte.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/LogicalAndExpression.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/MultiplicationExpression.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/UnaryExpression.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantFloat.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ModuloExpression.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantString.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/NotExpression.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/UnknownIdentifierException.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/AndExpression.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConditionalExpression.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/Context.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantNull.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/BinaryComputationExpression.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/BitShiftRightExpression.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/LessThanOrEqualExpression.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ShiftRightExpression.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/BinaryLogicalExpression.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/LessThanExpression.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/IdentifierExpression.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/CircularExpressionException.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/BinaryExpression.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/IllegalExpressionException.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/NotEqualExpression.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantExpression.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/RootDocImpl$ResolvedImportNotFound.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ClassDocImpl.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ParamTagImpl.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Timer.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/SourceComponent.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/CommentComponent.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/RootDocImpl$ResolvedImportReflectionPackage.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/StaticBlockComponent.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ValueTagImpl.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/SeeTagImpl.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$11.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$13.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ConstructorDocImpl.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$15.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/TemporaryStore.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/RootDocImpl$ResolvedImportReflectionClass.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$17.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/BracketClose.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$19.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ParameterImpl.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/TypeImpl.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ArrayCharacterIterator.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/RootDocImpl$ScheduledClass.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/FieldComponent.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/RootDocImpl$ResolvedImportPackageFile.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$2.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/TimerDoclet.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/SlashSlashCommentComponent.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ErrorReporter.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$4.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$6.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/PackageComponent.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/MemberDocImpl.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$8.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ExecutableMemberDocImpl.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Parser$1.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/DirectoryTree.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Debug.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/DocImpl.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/MethodDocImpl.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ProgramElementDocImpl.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$20.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ClassDocReflectedImpl.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/FieldDocImpl.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/RootDocImpl.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$22.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$24.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/TimerDoclet$1.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/PackageDocImpl.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ThrowsTagImpl.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/EmptyStatementComponent.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/LinkTagImpl.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/AbstractTagImpl.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ParseException.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$10.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$12.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Parser.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Whitespace.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$14.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ImportComponent.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$16.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$18.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/SerialFieldTagImpl.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/SourcePositionImpl.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/JavadocWrapper.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$1.class, * libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/TypeVariableImpl.class, * libjava/classpath/tools/classes/gnu/classpath/tools/NotifyingInputStreamReader.class, * libjava/classpath/tools/classes/gnu/classpath/tools/javah/MethodHelper.class, * libjava/classpath/tools/classes/gnu/classpath/tools/javah/GcjhMain.class, * libjava/classpath/tools/classes/gnu/classpath/tools/javah/JniStubPrinter.class, * libjava/classpath/tools/classes/gnu/classpath/tools/javah/JniIncludePrinter.class, * libjava/classpath/tools/classes/gnu/classpath/tools/javah/PathOptionGroup.class, * libjava/classpath/tools/classes/gnu/classpath/tools/javah/Keywords.class, * libjava/classpath/tools/classes/gnu/classpath/tools/javah/JniPrintStream.class, * libjava/classpath/tools/classes/gnu/classpath/tools/javah/CniStubPrinter.class, * libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main.class, * libjava/classpath/tools/classes/gnu/classpath/tools/javah/CniPrintStream.class, * libjava/classpath/tools/classes/gnu/classpath/tools/javah/ClassWrapper.class, * libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$3.class, * libjava/classpath/tools/classes/gnu/classpath/tools/rmic/HashFinder.class, * libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$4.class, * libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$5.class, * libjava/classpath/tools/classes/gnu/classpath/tools/rmic/ClassRmicCompiler$MethodRef.class, * libjava/classpath/tools/classes/gnu/classpath/tools/rmic/WrapUnWrapper.class, * libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$6.class, * libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$7.class, * libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$8.class, * libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$9.class, * libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Generator.class, * libjava/classpath/tools/classes/gnu/classpath/tools/rmic/GiopIo.class, * libjava/classpath/tools/classes/gnu/classpath/tools/rmic/MethodGenerator.class, * libjava/classpath/tools/classes/gnu/classpath/tools/rmic/RmiMethodGenerator.class, * libjava/classpath/tools/classes/gnu/classpath/tools/rmic/SourceRmicCompiler.class, * libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Variables.class, * libjava/classpath/tools/classes/gnu/classpath/tools/rmic/ClassRmicCompiler.class, * libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main.class, * libjava/classpath/tools/classes/gnu/classpath/tools/rmic/CompilationError.class, * libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$10.class, * libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$11.class, * libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$12.class, * libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$13.class, * libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$14.class, * libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$15.class, * libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$16.class, * libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$17.class, * libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$18.class, * libjava/classpath/tools/classes/gnu/classpath/tools/rmic/RMICException.class, * libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$1.class, * libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$2.class, * libjava/classpath/tools/classes/gnu/classpath/tools/serialver/SerialVer.class, * libjava/classpath/tools/classes/gnu/classpath/tools/serialver/SerialVer$1.class, * libjava/classpath/tools/classes/gnu/classpath/tools/serialver/SerialVer$2.class, * libjava/classpath/tools/classes/gnu/classpath/tools/serialver/SerialVer$3.class, * libjava/classpath/tools/classes/gnu/classpath/tools/MalformedInputEvent.class, * libjava/classpath/tools/classes/gnu/classpath/tools/doclets/debugdoclet/DebugDoclet.class, * libjava/classpath/tools/classes/gnu/classpath/tools/doclets/DocletConfigurationException.class, * libjava/classpath/tools/classes/gnu/classpath/tools/doclets/AbstractDoclet$InterfaceRelation.class, * libjava/classpath/tools/classes/gnu/classpath/tools/doclets/AbstractDoclet$DocletOptionTag.class, * libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/Driver.class, * libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/TargetContext.class, * libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/doctranslet/OutputFileInfo.class, * libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTransletOptions.class, * libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTransletException.class, * libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTranslet.class, * libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTranslet$DocErrorReporterOutputStream.class, * libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTransletConfigurationException.class, * libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/doctranslet/JarClassLoader.class, * libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/HtmlRepairer.class, * libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/Driver1_4.class, * libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/Driver$1.class, * libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/Driver$UsageType.class, * libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/Driver$NullErrorReporter.class, * libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/HtmlRepairer$TagInfo.class, * libjava/classpath/tools/classes/gnu/classpath/tools/doclets/DocletOptionColonSeparated.class, * libjava/classpath/tools/classes/gnu/classpath/tools/doclets/AbstractDoclet$DocletOptionTaglet.class, * libjava/classpath/tools/classes/gnu/classpath/tools/doclets/DocletOptionPackageWildcard.class, * libjava/classpath/tools/classes/gnu/classpath/tools/doclets/AbstractDoclet$UsageType.class, * libjava/classpath/tools/classes/gnu/classpath/tools/doclets/DocletOptionString.class, * libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/CssClass.class, * libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/HtmlDoclet.class, * libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/HtmlPage.class, * libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/ExternalDocSet.class, * libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/HtmlDoclet$1.class, * libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/HtmlDoclet$2.class, * libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/HtmlDoclet$3.class, * libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/HtmlDoclet$TreeNode.class, * libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/HtmlTagletContext.class, * libjava/classpath/tools/classes/gnu/classpath/tools/doclets/InvalidPackageWildcardException.class, * libjava/classpath/tools/classes/gnu/classpath/tools/doclets/DocletOptionFlag.class, * libjava/classpath/tools/classes/gnu/classpath/tools/doclets/AbstractDoclet.class, * libjava/classpath/tools/classes/gnu/classpath/tools/doclets/PackageMatcher.class, * libjava/classpath/tools/classes/gnu/classpath/tools/doclets/StandardTaglet.class, * libjava/classpath/tools/classes/gnu/classpath/tools/doclets/DocletOptionFile.class, * libjava/classpath/tools/classes/gnu/classpath/tools/doclets/DocletOption.class, * libjava/classpath/tools/classes/gnu/classpath/tools/doclets/AbstractDoclet$IndexKey.class, * libjava/classpath/tools/classes/gnu/classpath/tools/doclets/AbstractDoclet$DocletOptionGroup.class, * libjava/classpath/tools/classes/gnu/classpath/tools/doclets/AbstractDoclet$DocletOptionTagletPath.class, * libjava/classpath/tools/classes/gnu/classpath/tools/doclets/PackageGroup.class, * libjava/classpath/tools/classes/gnu/classpath/tools/FileSystemClassLoader$JarStreamInfo.class, * libjava/classpath/tools/classes/gnu/classpath/tools/FileSystemClassLoader$FileStreamInfo.class, * libjava/classpath/tools/classes/gnu/classpath/tools/taglets/CodeTaglet.class, * libjava/classpath/tools/classes/gnu/classpath/tools/taglets/GenericTaglet.class, * libjava/classpath/tools/classes/gnu/classpath/tools/taglets/ValueTaglet.class, * libjava/classpath/tools/classes/gnu/classpath/tools/taglets/AuthorTaglet$EmailReplacement.class, * libjava/classpath/tools/classes/gnu/classpath/tools/taglets/DeprecatedTaglet.class, * libjava/classpath/tools/classes/gnu/classpath/tools/taglets/SinceTaglet.class, * libjava/classpath/tools/classes/gnu/classpath/tools/taglets/AuthorTaglet.class, * libjava/classpath/tools/classes/gnu/classpath/tools/taglets/TagletContext.class, * libjava/classpath/tools/classes/gnu/classpath/tools/taglets/VersionTaglet.class, * libjava/classpath/tools/classes/gnu/classpath/tools/taglets/CopyrightTaglet.class, * libjava/classpath/tools/classes/gnu/classpath/tools/FileSystemClassLoader.class, * libjava/classpath/tools/classes/com/sun/tools/javadoc/Main.class: Regenerated. * libjava/classpath/doc/Makefile.in, * libjava/classpath/doc/api/Makefile.in, * libjava/classpath/doc/texinfo.tex, * libjava/classpath/external/Makefile.in, * libjava/classpath/external/jsr166/Makefile.in, * libjava/classpath/external/sax/Makefile.in, * libjava/classpath/external/w3c_dom/Makefile.in, * libjava/classpath/external/relaxngDatatype/Makefile.in, * libjava/classpath/include/Makefile.in: Regenerated. * libjava/classpath/m4/lib-prefix.m4, * libjava/classpath/m4/lib-link.m4, * libjava/classpath/m4/lib-ld.m4: Removed. * libjava/classpath/native/jni/classpath/Makefile.in, * libjava/classpath/native/jni/gstreamer-peer/Makefile.in, * libjava/classpath/native/jni/midi-dssi/Makefile.in, * libjava/classpath/native/jni/Makefile.in, * libjava/classpath/native/jni/gconf-peer/Makefile.in, * libjava/classpath/native/jni/java-io/Makefile.in, * libjava/classpath/native/jni/native-lib/Makefile.in, * libjava/classpath/native/jni/native-lib/cpnet.c, * libjava/classpath/native/jni/java-util/Makefile.in, * libjava/classpath/native/jni/java-lang/Makefile.in, * libjava/classpath/native/jni/midi-alsa/Makefile.in, * libjava/classpath/native/jni/java-nio/Makefile.in, * libjava/classpath/native/jni/java-net/Makefile.in, * libjava/classpath/native/jni/java-math/Makefile.in, * libjava/classpath/native/jni/xmlj/Makefile.in, * libjava/classpath/native/jni/qt-peer/Makefile.in, * libjava/classpath/native/jni/gtk-peer/Makefile.in, * libjava/classpath/native/Makefile.in, * libjava/classpath/native/jawt/Makefile.in, * libjava/classpath/native/fdlibm/Makefile.in, * libjava/classpath/native/plugin/Makefile.in, * libjava/classpath/lib/java/util/regex/Matcher.class, * libjava/classpath/lib/java/util/TreeMap$3.class, * libjava/classpath/lib/java/util/Scanner.class, * libjava/classpath/lib/Makefile.in, * libjava/classpath/lib/org/omg/PortableServer/_ServantActivatorStub.class, * libjava/classpath/lib/org/omg/PortableServer/_ServantLocatorStub.class, * libjava/classpath/lib/org/omg/CORBA/portable/InputStream.class, * libjava/classpath/lib/org/omg/CORBA/portable/ObjectImpl.class, * libjava/classpath/lib/org/omg/CORBA/portable/Delegate.class, * libjava/classpath/lib/org/omg/CORBA/LocalObject.class, * libjava/classpath/lib/org/omg/CORBA_2_3/portable/InputStream.class, * libjava/classpath/lib/org/omg/CORBA_2_3/portable/OutputStream.class, * libjava/classpath/lib/org/omg/DynamicAny/_DynSequenceStub.class, * libjava/classpath/lib/org/omg/DynamicAny/_DynValueStub.class, * libjava/classpath/lib/org/omg/DynamicAny/_DynStructStub.class, * libjava/classpath/lib/org/omg/DynamicAny/_DynEnumStub.class, * libjava/classpath/lib/org/omg/DynamicAny/_DynArrayStub.class, * libjava/classpath/lib/org/omg/DynamicAny/_DynAnyFactoryStub.class, * libjava/classpath/lib/org/omg/DynamicAny/_DynAnyStub.class, * libjava/classpath/lib/org/omg/DynamicAny/_DynUnionStub.class, * libjava/classpath/lib/org/omg/DynamicAny/_DynFixedStub.class, * libjava/classpath/lib/org/ietf/jgss/GSSManager.class, * libjava/classpath/lib/gnu/xml/stream/NamespaceImpl.class, * libjava/classpath/lib/gnu/xml/stream/XIncludeFilter.class, * libjava/classpath/lib/gnu/xml/stream/FilteredStreamReader.class, * libjava/classpath/lib/gnu/xml/stream/XMLEventFactoryImpl.class, * libjava/classpath/lib/gnu/xml/stream/XMLEventAllocatorImpl.class, * libjava/classpath/lib/gnu/xml/stream/XMLStreamWriterImpl.class, * libjava/classpath/lib/gnu/java/locale/LocaleData.class, * libjava/classpath/lib/gnu/javax/swing/text/html/css/Selector.class, * libjava/classpath/lib/gnu/javax/print/ipp/IppRequest$RequestWriter.class, * libjava/classpath/lib/gnu/javax/print/ipp/IppResponse$ResponseReader.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/printer/PrinterDriverInstaller.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/printer/CharsetConfigured.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/printer/NaturalLanguageConfigured.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/printer/MultipleOperationTimeOut.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/printer/PrinterCurrentTime.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/printer/DocumentFormat.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/printer/PrinterUpTime.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/printer/PrinterStateMessage.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/PrintQualitySupported.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/PrinterResolutionSupported.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/SidesSupported.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/MultipleDocumentJobsSupported.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/PageRangesSupported.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/OrientationRequestedSupported.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/MediaSupported.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/IppVersionsSupported.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/OperationsSupported.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/JobSheetsSupported.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/DocumentFormatSupported.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/UriSecuritySupported.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/GeneratedNaturalLanguageSupported.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/CharsetSupported.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/JobHoldUntilSupported.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/MultipleDocumentHandlingSupported.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/UriAuthenticationSupported.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/FinishingsSupported.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/CompressionSupported.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/PrinterUriSupported.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/JobSheetsDefault.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/DocumentFormatDefault.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/PrinterResolutionDefault.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/SidesDefault.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/JobPriorityDefault.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/JobHoldUntilDefault.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/NumberUpDefault.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/OrientationRequestedDefault.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/MediaDefault.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/MultipleDocumentHandlingDefault.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/FinishingsDefault.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/CopiesDefault.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/PrintQualityDefault.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/UnknownAttribute.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/DetailedStatusMessage.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/JobPrinterUri.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/AttributesCharset.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/JobStateMessage.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/AttributesNaturalLanguage.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/JobDetailedStatusMessages.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/JobId.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/JobDocumentAccessErrors.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/JobMoreInfo.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/JobUri.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/RequestedAttributes.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/StatusMessage.class, * libjava/classpath/lib/gnu/javax/print/ipp/attribute/DocumentAccessError.class, * libjava/classpath/lib/gnu/javax/print/ipp/IppUtilities.class, * libjava/classpath/lib/gnu/javax/print/ipp/IppPrintService.class, * libjava/classpath/lib/gnu/javax/print/ipp/IppResponse.class, * libjava/classpath/lib/javax/swing/tree/DefaultMutableTreeNode.class, * libjava/classpath/lib/javax/swing/tree/VariableHeightLayoutCache.class, * libjava/classpath/lib/javax/swing/tree/DefaultMutableTreeNode$PostorderEnumeration.class, * libjava/classpath/lib/javax/swing/tree/DefaultMutableTreeNode$BreadthFirstEnumeration.class, * libjava/classpath/lib/javax/swing/tree/DefaultMutableTreeNode$PreorderEnumeration.class, * libjava/classpath/lib/javax/swing/tree/FixedHeightLayoutCache.class, * libjava/classpath/lib/javax/swing/text/html/HTMLEditorKit.class, * libjava/classpath/lib/javax/swing/text/html/StyleSheet$BoxPainter.class, * libjava/classpath/lib/javax/swing/text/html/HTMLWriter.class, * libjava/classpath/lib/javax/swing/text/html/TableView$RowView.class, * libjava/classpath/lib/javax/swing/text/html/MultiAttributeSet$MultiNameEnumeration.class, * libjava/classpath/lib/javax/swing/text/html/MultiStyle.class, * libjava/classpath/lib/javax/swing/text/html/ImageView.class, * libjava/classpath/lib/javax/swing/text/html/TableView$CellView.class, * libjava/classpath/lib/javax/swing/text/html/MultiAttributeSet.class, * libjava/classpath/lib/javax/swing/text/html/ImageView$1.class, * libjava/classpath/lib/javax/swing/text/html/StyleSheet$ListPainter.class, * libjava/classpath/lib/javax/swing/text/html/TableView.class, * libjava/classpath/lib/javax/swing/text/html/StyleSheet.class, * libjava/classpath/lib/javax/swing/text/html/ObjectView.class, * libjava/classpath/lib/javax/swing/text/html/MinimalHTMLWriter.class, * libjava/classpath/lib/javax/swing/undo/UndoableEditSupport.class, * libjava/classpath/lib/javax/swing/undo/StateEdit.class, * libjava/classpath/lib/javax/xml/stream/XMLEventFactory.class, * libjava/classpath/lib/javax/xml/stream/events/Namespace.class, * libjava/classpath/lib/javax/xml/stream/XMLInputFactory.class, * libjava/classpath/lib/javax/xml/stream/util/StreamReaderDelegate.class, * libjava/classpath/lib/javax/xml/stream/XMLOutputFactory.class, * libjava/classpath/lib/javax/security/auth/kerberos/KerberosTicket.class, * libjava/classpath/lib/javax/security/auth/kerberos/KeyImpl.class, * libjava/classpath/missing, * libjava/classpath/aclocal.m4, * libjava/classpath/examples/Makefile.in, * libjava/classpath/install-sh, * libjava/gnu/xml/stream/FilteredStreamReader.h, * libjava/gnu/xml/stream/XMLStreamWriterImpl.h, * libjava/gnu/xml/stream/NamespaceImpl.h, * libjava/gnu/xml/stream/XIncludeFilter.h, * libjava/gnu/javax/swing/text/html/css/Selector.h, * libjava/gnu/javax/print/ipp/attribute/RequestedAttributes.h, * libjava/sources.am: Regenerated. 2010-05-27 Andrew John Hughes <ahughes@redhat.com> * configure.ac: Disable plugin by default and warn about unmaintained status when enabled. 2010-05-04 Andrew John Hughes <ahughes@redhat.com> * configure.ac: Call AC_PROG_JAVA_WORKS and AC_PROG_JAVAC_WORKS in place of AC_PROG_JAVA and AC_PROG_JAVAC respectively, as this is the real test we want. * m4/ac_prog_java.m4: (AC_PROG_JAVA): Don't include AC_PROG_JAVA_WORKS. * m4/ac_prog_java_works.m4: (AC_PROG_JAVA_WORKS): Require AC_PROG_JAVA and be defined only once. Require AC_PROG_JAVAC_WORKS for compilation of test class. Remove inclusion of AC_PROG_JAVAC. (AC_TRY_COMPILE_JAVA): Require AC_PROG_JAVAC_WORKS rather than AC_PROG_JAVAC. Be defined only once. * m4/ac_prog_javac.m: (AC_PROG_JAVAC): Be defined only once. Don't include AC_PROG_JAVAC_WORKS. * m4/ac_prog_javac_works.m4: (AC_PROG_JAVAC_WORKS): Be defined only once. Require AC_PROG_JAVAC. 2010-05-04 Andrew Haley <aph@redhat.com> * lib/gen-classlist.sh.in: Use absolute pathnames for all the directory names in the output file. 2010-05-04 Andrew John Hughes <ahughes@redhat.com> * m4/ac_prog_javac.m4: Capture all output from javac --version to avoid excess output. Make sure no appears when javac is not gcj. 2010-05-04 Andrew John Hughes <ahughes@redhat.com> * configure.ac: Add output to GMP directory detection and only perform when compiling GMP. 2010-05-04 Mike Stump <mikestump@comcast.net> * configure.ac: Allow prefix, libdir and includedir of GMP to be specified via --with-gmp, --with-gmp-include and --with-gmp-lib. 2010-04-28 Andrew John Hughes <ahughes@redhat.com> * gnu/javax/print/ipp/IppPrintService.java: (printerAttr): Add generic typing. (printServiceAttributeListener): Likewise. (flavors): Likewise. (printerUris): Likewise. (IppPrintService(URI uri, String username, String password)): Use generic types in initialising listener set. (getPrinterAttributes()): Add generic types. Remove cast. (getPrinterAttributeSet(Class<T>)): Return a set containing attributes of type T. Now creates a new set and checks that all elements of the original set can be cast and added to this new set. (getPrinterDefaultAttribute(Class<? extends Attribute>)): Add generic types. (processResponse()): Add generic types. (getAttribute(Class<T>)): Use generic types corresponding to parent interface. (getSupportedAttributeCategories()): Use generic types. (getSupportedAttributeValues()): Likewise. (handleSupportedAttributeValuesResponse(IppResponse,Class<? extends Attribute>)): Likewise. (isAttributeCategorySupported(Class<? extends Attribute>)): Likewise. * gnu/javax/print/ipp/IppResponse.java: (parseResponse(InputStream)): Use generic types. (parseAttributes(Map<Class<? extends Attribute>, Set<Attribute>, DataInputStream)): Likewise. (addAttribute(Map<Class<? extends Attribute>, Set<Attribute>>, Attribute): Likewise. (IppResponse(URI, short)): Create lists with appropriate type parameters. (getJobAttributes()): Use generic return type. (getOperationAttributes()): Likewise. (getPrinterAttributes()): Likewise. (getUnsupportedAttributes()): Likewise. * gnu/javax/print/ipp/attribute/supported/CompressionSupported.java: (getAssociatedAttributeArray(Set<Attribute>)): Use superclass Attribute as set type parameter and cast when looping over it. * gnu/javax/print/ipp/attribute/supported/FinishingsSupported.java, (getAssociatedAttributeArray(Set<Attribute>)): Use superclass Attribute as set type parameter and cast when looping over it. * gnu/javax/print/ipp/attribute/supported/JobSheetsSupported.java, (getAssociatedAttributeArray(Set<Attribute>)): Use superclass Attribute as set type parameter and cast when looping over it. * gnu/javax/print/ipp/attribute/supported/MediaSupported.java, (getAssociatedAttributeArray(Set<Attribute>)): Use superclass Attribute as set type parameter and cast when looping over it. * gnu/javax/print/ipp/attribute/supported/MultipleDocumentHandlingSupported.java, (getAssociatedAttributeArray(Set<Attribute>)): Use superclass Attribute as set type parameter and cast when looping over it. * gnu/javax/print/ipp/attribute/supported/OrientationRequestedSupported.java, (getAssociatedAttributeArray(Set<Attribute>)): Use superclass Attribute as set type parameter and cast when looping over it. * gnu/javax/print/ipp/attribute/supported/PrintQualitySupported.java, (getAssociatedAttributeArray(Set<Attribute>)): Use superclass Attribute as set type parameter and cast when looping over it. * gnu/javax/print/ipp/attribute/supported/PrinterResolutionSupported.java, (getAssociatedAttributeArray(Set<Attribute>)): Use superclass Attribute as set type parameter and cast when looping over it. 2010-04-28 Andrew John Hughes <ahughes@redhat.com> * gnu/javax/print/ipp/IppUtilities.java: (INTEGER_CLASS_ARRAY): Use generic typing. (TEXT_CLASS_ARRAY): Likewise. (classesByName): Likewise. (instanceByClass): Likewise. (getClass(String)): Remove cast. Return generic type. (getSupportedAttrName(Class<? extends Attribute>)): Remove cast. Add generic type to parameter. (getSupportedCategory(Class<?> extends Attribute>)): Likewise. (getEnumAttribute(String,Object)): Add missing generic types on Class. (getIntegerAttribute(String,int)): Likewise and on Constructor. (getTextAttribute(String,byte,byte[])): Likewise. 2010-04-27 Andrew John Hughes <ahughes@redhat.com> * gnu/javax/print/ipp/IppRequest.java: (write(RequestedAttributes)): Fix for change in return value of RequestedAttributes.getValues(). * gnu/javax/print/ipp/attribute/DetailedStatusMessage.java: (getCategory()): Fix return value. * gnu/javax/print/ipp/attribute/DocumentAccessError.java: (getCategory()): Fix return value. * gnu/javax/print/ipp/attribute/RequestedAttributes.java: (RequestedAttributes()): Use appropriate generic type with attributes ArrayList. (getValues()): Return an array-based snapshot of the current state of attributes rather than providing direct mutable access to it. * gnu/javax/print/ipp/attribute/StatusMessage.java: (getCategory()): Fix return value. * gnu/javax/print/ipp/attribute/UnknownAttribute.java: (getCategory()): Fix return value. * gnu/javax/print/ipp/attribute/defaults/CopiesDefault.java: (getCategory()): Fix return value. * gnu/javax/print/ipp/attribute/defaults/DocumentFormatDefault.java: (getCategory()): Fix return value. * gnu/javax/print/ipp/attribute/defaults/FinishingsDefault.java: (getCategory()): Fix return value. * gnu/javax/print/ipp/attribute/defaults/JobHoldUntilDefault.java: (getCategory()): Fix return value. * gnu/javax/print/ipp/attribute/defaults/JobPriorityDefault.java: (getCategory()): Fix return value. * gnu/javax/print/ipp/attribute/defaults/JobSheetsDefault.java: (getCategory()): Fix return value. * gnu/javax/print/ipp/attribute/defaults/MediaDefault.java: (getCategory()): Fix return value. * gnu/javax/print/ipp/attribute/defaults/MultipleDocumentHandlingDefault.java: (getCategory()): Fix return value. * gnu/javax/print/ipp/attribute/defaults/NumberUpDefault.java: (getCategory()): Fix return value. * gnu/javax/print/ipp/attribute/defaults/OrientationRequestedDefault.java: (getCategory()): Fix return value. * gnu/javax/print/ipp/attribute/defaults/PrintQualityDefault.java: (getCategory()): Fix return value. * gnu/javax/print/ipp/attribute/defaults/PrinterResolutionDefault.java: (getCategory()): Fix return value. * gnu/javax/print/ipp/attribute/defaults/SidesDefault.java: (getCategory()): Fix return value. * gnu/javax/print/ipp/attribute/job/AttributesCharset.java: (getCategory()): Fix return value. * gnu/javax/print/ipp/attribute/job/AttributesNaturalLanguage.java: (getCategory()): Fix return value. * gnu/javax/print/ipp/attribute/job/JobDetailedStatusMessages.java: (getCategory()): Fix return value. * gnu/javax/print/ipp/attribute/job/JobDocumentAccessErrors.java: (getCategory()): Fix return value. * gnu/javax/print/ipp/attribute/job/JobId.java: (getCategory()): Fix return value. * gnu/javax/print/ipp/attribute/job/JobMoreInfo.java: (getCategory()): Fix return value. * gnu/javax/print/ipp/attribute/job/JobPrinterUri.java: (getCategory()): Fix return value. * gnu/javax/print/ipp/attribute/job/JobStateMessage.java: (getCategory()): Fix return value. * gnu/javax/print/ipp/attribute/job/JobUri.java: (getCategory()): Fix return value. * gnu/javax/print/ipp/attribute/printer/CharsetConfigured.java: (getCategory()): Fix return value. * gnu/javax/print/ipp/attribute/printer/DocumentFormat.java: (getCategory()): Fix return value. * gnu/javax/print/ipp/attribute/printer/MultipleOperationTimeOut.java: (getCategory()): Fix return value. * gnu/javax/print/ipp/attribute/printer/NaturalLanguageConfigured.java: (getCategory()): Fix return value. * gnu/javax/print/ipp/attribute/printer/PrinterCurrentTime.java: (getCategory()): Fix return value. * gnu/javax/print/ipp/attribute/printer/PrinterDriverInstaller.java: (getCategory()): Fix return value. * gnu/javax/print/ipp/attribute/printer/PrinterStateMessage.java: (getCategory()): Fix return value. * gnu/javax/print/ipp/attribute/printer/PrinterUpTime.java: (getCategory()): Fix return value. 2010-04-27 Andrew John Hughes <ahughes@redhat.com> * gnu/javax/print/CupsIppOperation.java, * gnu/javax/print/CupsMediaMapping.java, * gnu/javax/print/CupsPrintService.java, * gnu/javax/print/CupsPrintServiceLookup.java, * gnu/javax/print/CupsServer.java, * gnu/javax/print/PrintAttributeException.java, * gnu/javax/print/PrintFlavorException.java, * gnu/javax/print/PrintUriException.java, * gnu/javax/print/PrinterDialog.java, * gnu/javax/print/ipp/DocPrintJobImpl.java, * gnu/javax/print/ipp/IppDelimiterTag.java, * gnu/javax/print/ipp/IppException.java, * gnu/javax/print/ipp/IppMultiDocPrintService.java, * gnu/javax/print/ipp/IppRequest.java, * gnu/javax/print/ipp/IppResponse.java, * gnu/javax/print/ipp/IppStatusCode.java, * gnu/javax/print/ipp/IppUtilities.java, * gnu/javax/print/ipp/IppValueTag.java, * gnu/javax/print/ipp/MultiDocPrintJobImpl.java, * gnu/javax/print/ipp/attribute/CharsetSyntax.java, * gnu/javax/print/ipp/attribute/DefaultValueAttribute.java, * gnu/javax/print/ipp/attribute/DetailedStatusMessage.java, * gnu/javax/print/ipp/attribute/DocumentAccessError.java, * gnu/javax/print/ipp/attribute/NaturalLanguageSyntax.java, * gnu/javax/print/ipp/attribute/RequestedAttributes.java, * gnu/javax/print/ipp/attribute/StatusMessage.java, * gnu/javax/print/ipp/attribute/UnknownAttribute.java, * gnu/javax/print/ipp/attribute/defaults/CopiesDefault.java, * gnu/javax/print/ipp/attribute/defaults/DocumentFormatDefault.java, * gnu/javax/print/ipp/attribute/defaults/FinishingsDefault.java, * gnu/javax/print/ipp/attribute/defaults/JobHoldUntilDefault.java, * gnu/javax/print/ipp/attribute/defaults/JobPriorityDefault.java, * gnu/javax/print/ipp/attribute/defaults/JobSheetsDefault.java, * gnu/javax/print/ipp/attribute/defaults/MediaDefault.java, * gnu/javax/print/ipp/attribute/defaults/MultipleDocumentHandlingDefault.java, * gnu/javax/print/ipp/attribute/defaults/NumberUpDefault.java, * gnu/javax/print/ipp/attribute/defaults/OrientationRequestedDefault.java, * gnu/javax/print/ipp/attribute/defaults/PrintQualityDefault.java, * gnu/javax/print/ipp/attribute/defaults/PrinterResolutionDefault.java, * gnu/javax/print/ipp/attribute/defaults/SidesDefault.java, * gnu/javax/print/ipp/attribute/job/AttributesCharset.java, * gnu/javax/print/ipp/attribute/job/AttributesNaturalLanguage.java, * gnu/javax/print/ipp/attribute/job/JobDetailedStatusMessages.java, * gnu/javax/print/ipp/attribute/job/JobDocumentAccessErrors.java, * gnu/javax/print/ipp/attribute/job/JobId.java, * gnu/javax/print/ipp/attribute/job/JobMoreInfo.java, * gnu/javax/print/ipp/attribute/job/JobPrinterUri.java, * gnu/javax/print/ipp/attribute/job/JobStateMessage.java, * gnu/javax/print/ipp/attribute/job/JobUri.java, * gnu/javax/print/ipp/attribute/printer/CharsetConfigured.java, * gnu/javax/print/ipp/attribute/printer/DocumentFormat.java, * gnu/javax/print/ipp/attribute/printer/MultipleOperationTimeOut.java, * gnu/javax/print/ipp/attribute/printer/NaturalLanguageConfigured.java, * gnu/javax/print/ipp/attribute/printer/PrinterCurrentTime.java, * gnu/javax/print/ipp/attribute/printer/PrinterDriverInstaller.java, * gnu/javax/print/ipp/attribute/printer/PrinterStateMessage.java, * gnu/javax/print/ipp/attribute/printer/PrinterUpTime.java: Normalise whitespace; replace tabs with spaces and removing trailing whitespace. 2010-04-27 Andrew John Hughes <ahughes@redhat.com> * gnu/javax/print/ipp/IppPrintService.java: Fix whitespace. Use correct generic type for printerAttr map. (getPrinterAttributeSet(Class<? extends Attribute>)): Add appropriate generic type. * gnu/javax/print/ipp/attribute/supported/CharsetSupported.java: Fix whitespace. (getCategory()): Fix return type. * gnu/javax/print/ipp/attribute/supported/CompressionSupported.java: Fix whitespace. (getCategory()): Fix return type. (getAssociatedAttributeArray(Set<CompressionSupported>)): Add generic type to set and use for-each loop. * gnu/javax/print/ipp/attribute/supported/DocumentFormatSupported.java: Fix whitespace. (getCategory()): Fix return type. * gnu/javax/print/ipp/attribute/supported/FinishingsSupported.java: Fix whitespace. (getCategory()): Fix return type. (getAssociatedAttributeArray(Set<FinishingsSupported>)): Add generic type to set and use for-each loop. * gnu/javax/print/ipp/attribute/supported/GeneratedNaturalLanguageSupported.java: Fix whitespace. (getCategory()): Fix return type. * gnu/javax/print/ipp/attribute/supported/IppVersionsSupported.java: Fix whitespace. (getCategory()): Fix return type. * gnu/javax/print/ipp/attribute/supported/JobHoldUntilSupported.java: Fix whitespace. (getCategory()): Fix return type. * gnu/javax/print/ipp/attribute/supported/JobSheetsSupported.java: Fix whitespace. (getCategory()): Fix return type. (getAssociatedAttributeArray(Set<JobSheetsSupported>)): Add generic type to set and use for-each loop. * gnu/javax/print/ipp/attribute/supported/MediaSupported.java: Fix whitespace. (getCategory()): Fix return type. (getAssociatedAttributeArray(Set<MediaSupported>)): Add generic type to set and use for-each loop. * gnu/javax/print/ipp/attribute/supported/MultipleDocumentHandlingSupported.java: Fix whitespace. (getCategory()): Fix return type. (getAssociatedAttributeArray(Set<MultipleDocumentHandlingSupported>)): Add generic type to set and use for-each loop. * gnu/javax/print/ipp/attribute/supported/MultipleDocumentJobsSupported.java, Fix whitespace. (getCategory()): Fix return type. * gnu/javax/print/ipp/attribute/supported/OperationsSupported.java, Fix whitespace. (getCategory()): Fix return type. * gnu/javax/print/ipp/attribute/supported/OrientationRequestedSupported.java, Fix whitespace. (getCategory()): Fix return type. (getAssociatedAttributeArray(Set<OrientationRequestedSupported>)): Add generic type to set and use for-each loop. * gnu/javax/print/ipp/attribute/supported/PageRangesSupported.java, Fix whitespace. (getCategory()): Fix return type. * gnu/javax/print/ipp/attribute/supported/PrintQualitySupported.java, Fix whitespace. (getCategory()): Fix return type. (getAssociatedAttributeArray(Set<PrintQualitySupported>)): Add generic type to set and use for-each loop. * gnu/javax/print/ipp/attribute/supported/PrinterResolutionSupported.java, Fix whitespace. (getCategory()): Fix return type. (getAssociatedAttributeArray(Set<PrinterResolutionSupported>)): Add generic type to set and use for-each loop. * gnu/javax/print/ipp/attribute/supported/PrinterUriSupported.java, Fix whitespace. (getCategory()): Fix return type. * gnu/javax/print/ipp/attribute/supported/SidesSupported.java, Fix whitespace. (getCategory()): Fix return type. * gnu/javax/print/ipp/attribute/supported/UriAuthenticationSupported.java, Fix whitespace. (getCategory()): Fix return type. * gnu/javax/print/ipp/attribute/supported/UriSecuritySupported.java, Fix whitespace. (getCategory()): Fix return type. 2010-04-27 Andrew Haley <aph@redhat.com> * java/util/concurrent/CopyOnWriteArrayList.java: Fix for empty list. 2010-04-27 Andrew Haley <aph@redhat.com> * gnu/javax/print/ipp/IppResponse.java (parseAttributes): Handle IppValueTag.UNKNOWN. * gnu/javax/print/ipp/IppRequest.java (writeOperationAttributes): Handle RequestedAttributes. * gnu/javax/print/ipp/IppPrintService.java (processResponse): Add DocFlavor.SERVICE_FORMATTED.PAGEABLE and DocFlavor.SERVICE_FORMATTED.PRINTABLE. 2010-03-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> PR libgcj/38251 * tools/Makefile.am (dist-hook): Prune .svn directories in asm and classes copies. * tools/Makefile.in: Regenerate. Revert: 2008-11-05 Andrew Haley <aph@redhat.com> * tools/Makefile.am (UPDATE_TOOLS_ZIP, CREATE_TOOLS_ZIP): Exclude .svn direcories. 2010-01-30 Andrew John Hughes <ahughes@redhat.com> * doc/www.gnu.org/home.wml: Add newer JAPI results. 2010-01-30 Andrew John Hughes <ahughes@redhat.com> PR classpath/41686 * javax/security/auth/kerberos/KerberosTicket.java: Fix formatting. (toString()): Add full implementation. (getSessionKeyType()): Implemented. * javax/security/auth/kerberos/KeyImpl.java: (toString()): Implemented. 2010-01-30 Andrew John Hughes <ahughes@redhat.com> * autogen.sh: Allow libtool 2.* through. * configure.ac: Updated via autoupdate. * m4/lib-ld.m4, * m4/lib-link.m4, * m4/lib-prefix.m4: Drop old libtool macros which result in build failure. 2010-01-18 Andreas Tobler <andreast@fgznet.ch> * tools/Makefile.am (GJDOC_EX): Use find -name pattern -prune -o. * tools/Makefile.in: Regenerate. 2010-01-12 Jeroen Frijters <jeroen@frijters.net> * java/util/zip/Inflater. java (inflate(byte[],int,int)): Fix for #41696. 2009-11-18 Andrew Haley <aph@redhat.com> * java/util/TreeMap.java (anonymous class.size()): Debogosify. anonymous class.clear(): Likewise. 2009-10-22 Andrew Haley <aph@redhat.com> * native/jni/native-lib/cpnet.c (cpnet_addMembership): Fix aliasing warning. (cpnet_dropMembership): Likewise. 2009-10-22 Richard Guenther <rguenther@suse.de> PR cp-tools/39177 * tools/gnu/classpath/tools/jar/Creator.java (writeCommandLineEntries): Do not use uninitialized manifest. * tools/classes/gnu/classpath/tools/jar/Creator.class: Re-generated. 2009-07-08 Chris Burdess <dog@gnu.org> PR xml/40663: * javax/xml/stream/XMLEventFactory.java, * javax/xml/stream/XMLInputFactory.java, * javax/xml/stream/XMLOutputFactory.java, * javax/xml/stream/events/Namespace.java: Update API to match final version of StAX. * javax/xml/stream/util/ReaderDelegate.java: Removed. * javax/xml/stream/util/StreamReaderDelegate.java: Added (renamed from ReaderDelegate) * gnu/xml/stream/FilteredStreamReader.java, * gnu/xml/stream/NamespaceImpl.java, * gnu/xml/stream/XIncludeFilter.java, * gnu/xml/stream/XMLEventAllocatorImpl.java, * gnu/xml/stream/XMLEventFactoryImpl.java: Update implementation to match final version of StAX API. 2009-07-06 Ludovic Claude <ludovic.claude@laposte.net> PR xml/40653: * gnu/xml/stream/XMLStreamWriterImpl.java: Weaken testing of namespace prefix to match reference implementation and spec. 2009-07-07 Andrew John Hughes <ahughes@redhat.com> PR classpath/40630 * java/util/Scanner.java: (myCoreNext(boolean, Pattern)): Set tmp2 to null if the string is empty (i.e. we are at the end of the file). * java/util/regex/Matcher.java: (toMatchResult()): Check that match is non-null before attempting to clone it. 2009-07-07 Andrew John Hughes <ahughes@redhat.com> * java/util/Scanner.java, * java/util/regex/Matcher.java: Replace tab characters with spaces. 2009-03-29 Mark Wielaard <mark@klomp.org> * doc/www.gnu.org/faq/faq.wml: Fix link to cp-hacking.html. 2009-03-29 Mark Wielaard <mark@klomp.org> * m4/ac_prog_antlr.m4: Check whether ANTLR_JAR is empty. 2009-03-26 Andrew John Hughes <ahughes@redhat.com> PR classpath/39408: * tools/gnu/classpath/tools/javah/ClassWrapper.java: (linkSupers()): Make package-private. * tools/gnu/classpath/tools/javah/JniIncludePrinter.java: (writeFields(ClassWrapper, JniPrintStream)): Link in data from superclass before searching for fields. 2009-03-20 Andrew John Hughes <ahughes@redhat.com> * tools/gnu/classpath/tools/javah/ClassWrapper.java, * tools/gnu/classpath/tools/javah/CniPrintStream.java, * tools/gnu/classpath/tools/javah/CniStubPrinter.java, * tools/gnu/classpath/tools/javah/GcjhMain.java, * tools/gnu/classpath/tools/javah/JniIncludePrinter.java, * tools/gnu/classpath/tools/javah/JniPrintStream.java, * tools/gnu/classpath/tools/javah/JniStubPrinter.java, * tools/gnu/classpath/tools/javah/Keywords.java, * tools/gnu/classpath/tools/javah/Main.java, * tools/gnu/classpath/tools/javah/MethodHelper.java, * tools/gnu/classpath/tools/javah/PathOptionGroup.java: Fix generic issues in gjavah. 2009-03-17 Andrew John Hughes <ahughes@redhat.com> * tools/gnu/classpath/tools/FileSystemClassLoader.java, * tools/gnu/classpath/tools/doclets/xmldoclet/Driver.java, * tools/gnu/classpath/tools/doclets/xmldoclet/Driver1_4.java, * tools/gnu/classpath/tools/doclets/xmldoclet/HtmlRepairer.java, * tools/gnu/classpath/tools/doclets/xmldoclet/TargetContext.java, * tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/OutputFileInfo.java, * tools/gnu/classpath/tools/gjdoc/ErrorReporter.java, * tools/gnu/classpath/tools/gjdoc/TemporaryStore.java, * tools/gnu/classpath/tools/gjdoc/WritableType.java, * tools/gnu/classpath/tools/taglets/AuthorTaglet.java, * tools/gnu/classpath/tools/taglets/CopyrightTaglet.java, * tools/gnu/classpath/tools/taglets/DeprecatedTaglet.java, * tools/gnu/classpath/tools/taglets/GenericTaglet.java, * tools/gnu/classpath/tools/taglets/SinceTaglet.java, * tools/gnu/classpath/tools/taglets/VersionTaglet.java: Switch to UNIX line endings. 2009-03-17 Andrew John Hughes <ahughes@redhat.com> * tools/com/sun/tools/javadoc/Main.java, * tools/gnu/classpath/tools/FileSystemClassLoader.java, * tools/gnu/classpath/tools/IOToolkit.java, * tools/gnu/classpath/tools/MalformedInputEvent.java, * tools/gnu/classpath/tools/MalformedInputListener.java, * tools/gnu/classpath/tools/NotifyingInputStreamReader.java, * tools/gnu/classpath/tools/StringToolkit.java, * tools/gnu/classpath/tools/doclets/AbstractDoclet.java, * tools/gnu/classpath/tools/doclets/DocletConfigurationException.java, * tools/gnu/classpath/tools/doclets/DocletOption.java, * tools/gnu/classpath/tools/doclets/DocletOptionColonSeparated.java, * tools/gnu/classpath/tools/doclets/DocletOptionFile.java, * tools/gnu/classpath/tools/doclets/DocletOptionFlag.java, * tools/gnu/classpath/tools/doclets/DocletOptionPackageWildcard.java, * tools/gnu/classpath/tools/doclets/DocletOptionString.java, * tools/gnu/classpath/tools/doclets/InlineTagRenderer.java, * tools/gnu/classpath/tools/doclets/InvalidPackageWildcardException.java, * tools/gnu/classpath/tools/doclets/PackageGroup.java, * tools/gnu/classpath/tools/doclets/PackageMatcher.java, * tools/gnu/classpath/tools/doclets/StandardTaglet.java, * tools/gnu/classpath/tools/doclets/TagletPrinter.java, * tools/gnu/classpath/tools/doclets/debugdoclet/DebugDoclet.java, * tools/gnu/classpath/tools/doclets/htmldoclet/CssClass.java, * tools/gnu/classpath/tools/doclets/htmldoclet/ExternalDocSet.java, * tools/gnu/classpath/tools/doclets/htmldoclet/HtmlDoclet.java, * tools/gnu/classpath/tools/doclets/htmldoclet/HtmlPage.java, * tools/gnu/classpath/tools/doclets/htmldoclet/HtmlTagletContext.java, * tools/gnu/classpath/tools/doclets/xmldoclet/Driver.java, * tools/gnu/classpath/tools/doclets/xmldoclet/Driver1_4.java, * tools/gnu/classpath/tools/doclets/xmldoclet/HtmlRepairer.java, * tools/gnu/classpath/tools/doclets/xmldoclet/TargetContext.java, * tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTranslet.java, * tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTransletConfigurationException.java, * tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTransletException.java, * tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTransletOptions.java, * tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/JarClassLoader.java, * tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/OutputFileInfo.java, * tools/gnu/classpath/tools/gjdoc/AbstractTagImpl.java, * tools/gnu/classpath/tools/gjdoc/ArrayCharacterIterator.java, * tools/gnu/classpath/tools/gjdoc/ClassDocImpl.java, * tools/gnu/classpath/tools/gjdoc/ClassDocProxy.java, * tools/gnu/classpath/tools/gjdoc/ClassDocReflectedImpl.java, * tools/gnu/classpath/tools/gjdoc/ConstructorDocImpl.java, * tools/gnu/classpath/tools/gjdoc/Debug.java, * tools/gnu/classpath/tools/gjdoc/DirectoryTree.java, * tools/gnu/classpath/tools/gjdoc/DocImpl.java, * tools/gnu/classpath/tools/gjdoc/ErrorReporter.java, * tools/gnu/classpath/tools/gjdoc/ExecutableMemberDocImpl.java, * tools/gnu/classpath/tools/gjdoc/FieldDocImpl.java, * tools/gnu/classpath/tools/gjdoc/GjdocPackageDoc.java, * tools/gnu/classpath/tools/gjdoc/GjdocRootDoc.java, * tools/gnu/classpath/tools/gjdoc/InheritDocTagImpl.java, * tools/gnu/classpath/tools/gjdoc/JavadocWrapper.java, * tools/gnu/classpath/tools/gjdoc/LinkTagImpl.java, * tools/gnu/classpath/tools/gjdoc/Main.java, * tools/gnu/classpath/tools/gjdoc/MemberDocImpl.java, * tools/gnu/classpath/tools/gjdoc/MethodDocImpl.java, * tools/gnu/classpath/tools/gjdoc/PackageDocImpl.java, * tools/gnu/classpath/tools/gjdoc/ParamTagImpl.java, * tools/gnu/classpath/tools/gjdoc/ParameterImpl.java, * tools/gnu/classpath/tools/gjdoc/ParseException.java, * tools/gnu/classpath/tools/gjdoc/Parser.java, * tools/gnu/classpath/tools/gjdoc/ProgramElementDocImpl.java, * tools/gnu/classpath/tools/gjdoc/RootDocImpl.java, * tools/gnu/classpath/tools/gjdoc/SeeTagImpl.java, * tools/gnu/classpath/tools/gjdoc/SerialFieldTagImpl.java, * tools/gnu/classpath/tools/gjdoc/SourcePositionImpl.java, * tools/gnu/classpath/tools/gjdoc/TagContainer.java, * tools/gnu/classpath/tools/gjdoc/TagImpl.java, * tools/gnu/classpath/tools/gjdoc/TemporaryStore.java, * tools/gnu/classpath/tools/gjdoc/TextTagImpl.java, * tools/gnu/classpath/tools/gjdoc/ThrowsTagImpl.java, * tools/gnu/classpath/tools/gjdoc/Timer.java, * tools/gnu/classpath/tools/gjdoc/TimerDoclet.java, * tools/gnu/classpath/tools/gjdoc/TypeImpl.java, * tools/gnu/classpath/tools/gjdoc/TypeVariableImpl.java, * tools/gnu/classpath/tools/gjdoc/ValueTagImpl.java, * tools/gnu/classpath/tools/gjdoc/WritableType.java, * tools/gnu/classpath/tools/gjdoc/expr/AdditionExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/AndExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/BinaryBitwiseExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/BinaryComputationExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/BinaryEqualityExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/BinaryExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/BinaryLogicalExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/BinaryRelationExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/BinaryShiftExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/BitShiftRightExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/CircularExpressionException.java, * tools/gnu/classpath/tools/gjdoc/expr/ConditionalExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/ConstantBoolean.java, * tools/gnu/classpath/tools/gjdoc/expr/ConstantByte.java, * tools/gnu/classpath/tools/gjdoc/expr/ConstantChar.java, * tools/gnu/classpath/tools/gjdoc/expr/ConstantDouble.java, * tools/gnu/classpath/tools/gjdoc/expr/ConstantExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/ConstantFloat.java, * tools/gnu/classpath/tools/gjdoc/expr/ConstantInteger.java, * tools/gnu/classpath/tools/gjdoc/expr/ConstantLong.java, * tools/gnu/classpath/tools/gjdoc/expr/ConstantNull.java, * tools/gnu/classpath/tools/gjdoc/expr/ConstantShort.java, * tools/gnu/classpath/tools/gjdoc/expr/ConstantString.java, * tools/gnu/classpath/tools/gjdoc/expr/Context.java, * tools/gnu/classpath/tools/gjdoc/expr/DivisionExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/EqualExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/Evaluator.java, * tools/gnu/classpath/tools/gjdoc/expr/EvaluatorEnvironment.java, * tools/gnu/classpath/tools/gjdoc/expr/ExclusiveOrExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/Expression.java, * tools/gnu/classpath/tools/gjdoc/expr/GreaterThanExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/GreaterThanOrEqualExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/IdentifierExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/IllegalExpressionException.java, * tools/gnu/classpath/tools/gjdoc/expr/InclusiveOrExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/LessThanExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/LessThanOrEqualExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/LogicalAndExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/LogicalNotExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/LogicalOrExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/ModuloExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/MultiplicationExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/NegateExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/NotEqualExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/NotExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/ShiftLeftExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/ShiftRightExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/SubtractionExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/Type.java, * tools/gnu/classpath/tools/gjdoc/expr/TypeCastExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/UnaryExpression.java, * tools/gnu/classpath/tools/gjdoc/expr/UnknownIdentifierException.java, * tools/gnu/classpath/tools/java2xhtml/Java2xhtml.java, * tools/gnu/classpath/tools/rmic/ClassRmicCompiler.java, * tools/gnu/classpath/tools/rmic/CompilationError.java, * tools/gnu/classpath/tools/rmic/Generator.java, * tools/gnu/classpath/tools/rmic/GiopIo.java, * tools/gnu/classpath/tools/rmic/HashFinder.java, * tools/gnu/classpath/tools/rmic/Main.java, * tools/gnu/classpath/tools/rmic/MethodGenerator.java, * tools/gnu/classpath/tools/rmic/RMICException.java, * tools/gnu/classpath/tools/rmic/RmiMethodGenerator.java, * tools/gnu/classpath/tools/rmic/RmicBackend.java, * tools/gnu/classpath/tools/rmic/SourceRmicCompiler.java, * tools/gnu/classpath/tools/rmic/Variables.java, * tools/gnu/classpath/tools/rmic/WrapUnWrapper.java, * tools/gnu/classpath/tools/serialver/SerialVer.java, * tools/gnu/classpath/tools/taglets/AuthorTaglet.java, * tools/gnu/classpath/tools/taglets/CodeTaglet.java, * tools/gnu/classpath/tools/taglets/CopyrightTaglet.java, * tools/gnu/classpath/tools/taglets/DeprecatedTaglet.java, * tools/gnu/classpath/tools/taglets/GenericTaglet.java, * tools/gnu/classpath/tools/taglets/GnuExtendedTaglet.java, * tools/gnu/classpath/tools/taglets/SinceTaglet.java, * tools/gnu/classpath/tools/taglets/TagletContext.java, * tools/gnu/classpath/tools/taglets/ValueTaglet.java, * tools/gnu/classpath/tools/taglets/VersionTaglet.java: Fix license headers to GPLv2+Classpath exception. 2009-03-09 Andrew John Hughes <ahughes@redhat.com> * gnu/javax/swing/text/html/css/Selector.java: Use CPStringBuilder. Use typed list of maps rather than an array for type safety. * javax/swing/text/html/HTMLEditorKit.java, * javax/swing/text/html/HTMLWriter.java: Add generic typing where appropriate. * javax/swing/text/html/ImageView.java: Remove unused AttributeSet variables. * javax/swing/text/html/MinimalHTMLWriter.java: Switch to an ArrayDeque to avoid unnecessary internal synchronisation on a private variable. Add generic typing. * javax/swing/text/html/MultiAttributeSet.java: Add generic typing. * javax/swing/text/html/MultiStyle.java: Add generic typing, make class package-private as not part of the standard classes. * javax/swing/text/html/ObjectView.java, * javax/swing/text/html/StyleSheet.java: Add generic typing. * javax/swing/text/html/TableView.java: Remove unused variable. * javax/swing/tree/DefaultMutableTreeNode.java: Add generic typing, mute warnings where necessary. * javax/swing/tree/FixedHeightLayoutCache.java: Add generic typing. * javax/swing/tree/TreeNode.java: Mute warnings where necessary. * javax/swing/tree/VariableHeightLayoutCache.java, * javax/swing/undo/StateEdit.java, * javax/swing/undo/UndoableEditSupport.java, * org/ietf/jgss/GSSManager.java: Add generic typing. 2009-02-14 Andrew John Hughes <ahughes@redhat.com> * org/omg/CORBA/LocalObject.java, * org/omg/CORBA/portable/Delegate.java, * org/omg/CORBA/portable/InputStream.java, * org/omg/CORBA/portable/ObjectImpl.java, * org/omg/CORBA_2_3/portable/InputStream.java, * org/omg/CORBA_2_3/portable/OutputStream.java, * org/omg/DynamicAny/_DynAnyFactoryStub.java, * org/omg/DynamicAny/_DynAnyStub.java, * org/omg/DynamicAny/_DynArrayStub.java, * org/omg/DynamicAny/_DynEnumStub.java, * org/omg/DynamicAny/_DynFixedStub.java, * org/omg/DynamicAny/_DynSequenceStub.java, * org/omg/DynamicAny/_DynStructStub.java, * org/omg/DynamicAny/_DynUnionStub.java, * org/omg/DynamicAny/_DynValueStub.java, * org/omg/PortableServer/_ServantActivatorStub.java, * org/omg/PortableServer/_ServantLocatorStub.java: Turn off warnings where Class is used; forced to use raw type for API compatibility. 2009-02-06 Andrew John Hughes <ahughes@redhat.com> * NEWS: Add stub for 0.99. * configure.ac: Bump to 0.99. * doc/www.gnu.org/announce/20090205.wml, * doc/www.gnu.org/downloads/downloads.wml, * doc/www.gnu.org/newsitems.txt: Update website. 2009-02-05 Andrew John Hughes <ahughes@redhat.com> * NEWS: Add VM updates. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165383 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/classpath')
-rw-r--r--libjava/classpath/ChangeLog715
-rw-r--r--libjava/classpath/INSTALL114
-rw-r--r--libjava/classpath/Makefile.in11
-rw-r--r--libjava/classpath/NEWS2
-rw-r--r--libjava/classpath/aclocal.m46
-rwxr-xr-xlibjava/classpath/autogen.sh2
-rwxr-xr-xlibjava/classpath/config.rpath672
-rwxr-xr-xlibjava/classpath/configure396
-rw-r--r--libjava/classpath/configure.ac65
-rwxr-xr-xlibjava/classpath/depcomp87
-rw-r--r--libjava/classpath/doc/Makefile.in7
-rw-r--r--libjava/classpath/doc/api/Makefile.in7
-rw-r--r--libjava/classpath/doc/cp-hacking.texinfo2
-rw-r--r--libjava/classpath/doc/texinfo.tex714
-rw-r--r--libjava/classpath/examples/Makefile.in7
-rw-r--r--libjava/classpath/external/Makefile.in7
-rw-r--r--libjava/classpath/external/jsr166/Makefile.in7
-rw-r--r--libjava/classpath/external/relaxngDatatype/Makefile.in7
-rw-r--r--libjava/classpath/external/sax/Makefile.in7
-rw-r--r--libjava/classpath/external/w3c_dom/Makefile.in7
-rw-r--r--libjava/classpath/gnu/javax/print/CupsIppOperation.java38
-rw-r--r--libjava/classpath/gnu/javax/print/CupsMediaMapping.java30
-rw-r--r--libjava/classpath/gnu/javax/print/CupsPrintService.java18
-rw-r--r--libjava/classpath/gnu/javax/print/CupsPrintServiceLookup.java84
-rw-r--r--libjava/classpath/gnu/javax/print/CupsServer.java132
-rw-r--r--libjava/classpath/gnu/javax/print/PrintAttributeException.java34
-rw-r--r--libjava/classpath/gnu/javax/print/PrintFlavorException.java20
-rw-r--r--libjava/classpath/gnu/javax/print/PrintUriException.java26
-rw-r--r--libjava/classpath/gnu/javax/print/PrinterDialog.java606
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/DocPrintJobImpl.java148
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/IppDelimiterTag.java34
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/IppException.java6
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/IppMultiDocPrintService.java16
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/IppPrintService.java427
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/IppRequest.java256
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/IppResponse.java200
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/IppStatusCode.java44
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/IppUtilities.java272
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/IppValueTag.java82
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/MultiDocPrintJobImpl.java8
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/CharsetSyntax.java10
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/DefaultValueAttribute.java8
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/DetailedStatusMessage.java10
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/DocumentAccessError.java10
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/NaturalLanguageSyntax.java14
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/RequestedAttributes.java34
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/StatusMessage.java8
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/UnknownAttribute.java30
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/defaults/CopiesDefault.java18
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/defaults/DocumentFormatDefault.java16
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/defaults/FinishingsDefault.java106
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/defaults/JobHoldUntilDefault.java66
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/defaults/JobPriorityDefault.java16
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/defaults/JobSheetsDefault.java32
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/defaults/MediaDefault.java20
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/defaults/MultipleDocumentHandlingDefault.java42
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/defaults/NumberUpDefault.java18
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/defaults/OrientationRequestedDefault.java36
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/defaults/PrintQualityDefault.java24
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/defaults/PrinterResolutionDefault.java22
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/defaults/SidesDefault.java46
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/job/AttributesCharset.java12
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/job/AttributesNaturalLanguage.java16
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/job/JobDetailedStatusMessages.java8
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/job/JobDocumentAccessErrors.java8
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/job/JobId.java8
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/job/JobMoreInfo.java6
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/job/JobPrinterUri.java6
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/job/JobStateMessage.java8
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/job/JobUri.java6
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/printer/CharsetConfigured.java10
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/printer/DocumentFormat.java17
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/printer/MultipleOperationTimeOut.java8
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/printer/NaturalLanguageConfigured.java12
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/printer/PrinterCurrentTime.java13
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/printer/PrinterDriverInstaller.java8
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/printer/PrinterStateMessage.java11
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/printer/PrinterUpTime.java10
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/supported/CharsetSupported.java13
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/supported/CompressionSupported.java49
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/supported/DocumentFormatSupported.java11
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/supported/FinishingsSupported.java153
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/supported/GeneratedNaturalLanguageSupported.java17
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/supported/IppVersionsSupported.java31
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/supported/JobHoldUntilSupported.java61
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/supported/JobSheetsSupported.java54
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/supported/MediaSupported.java26
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/supported/MultipleDocumentHandlingSupported.java59
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/supported/MultipleDocumentJobsSupported.java27
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/supported/OperationsSupported.java115
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/supported/OrientationRequestedSupported.java53
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/supported/PageRangesSupported.java20
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/supported/PrintQualitySupported.java52
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/supported/PrinterResolutionSupported.java45
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/supported/PrinterUriSupported.java9
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/supported/SidesSupported.java41
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/supported/UriAuthenticationSupported.java51
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/supported/UriSecuritySupported.java33
-rw-r--r--libjava/classpath/gnu/javax/swing/text/html/css/Selector.java15
-rw-r--r--libjava/classpath/gnu/xml/stream/FilteredStreamReader.java4
-rw-r--r--libjava/classpath/gnu/xml/stream/NamespaceImpl.java29
-rw-r--r--libjava/classpath/gnu/xml/stream/XIncludeFilter.java4
-rw-r--r--libjava/classpath/gnu/xml/stream/XMLEventAllocatorImpl.java6
-rw-r--r--libjava/classpath/gnu/xml/stream/XMLEventFactoryImpl.java6
-rw-r--r--libjava/classpath/gnu/xml/stream/XMLStreamWriterImpl.java23
-rw-r--r--libjava/classpath/include/Makefile.in7
-rwxr-xr-xlibjava/classpath/install-sh11
-rw-r--r--libjava/classpath/java/util/Scanner.java742
-rw-r--r--libjava/classpath/java/util/TreeMap.java4
-rw-r--r--libjava/classpath/java/util/regex/Matcher.java121
-rw-r--r--libjava/classpath/java/util/zip/Inflater.java42
-rw-r--r--libjava/classpath/javax/security/auth/kerberos/KerberosTicket.java51
-rw-r--r--libjava/classpath/javax/security/auth/kerberos/KeyImpl.java9
-rw-r--r--libjava/classpath/javax/swing/text/html/HTMLEditorKit.java2
-rw-r--r--libjava/classpath/javax/swing/text/html/HTMLWriter.java38
-rw-r--r--libjava/classpath/javax/swing/text/html/ImageView.java3
-rw-r--r--libjava/classpath/javax/swing/text/html/MinimalHTMLWriter.java17
-rw-r--r--libjava/classpath/javax/swing/text/html/MultiAttributeSet.java8
-rw-r--r--libjava/classpath/javax/swing/text/html/MultiStyle.java4
-rw-r--r--libjava/classpath/javax/swing/text/html/ObjectView.java2
-rw-r--r--libjava/classpath/javax/swing/text/html/StyleSheet.java31
-rw-r--r--libjava/classpath/javax/swing/text/html/TableView.java1
-rw-r--r--libjava/classpath/javax/swing/tree/DefaultMutableTreeNode.java14
-rw-r--r--libjava/classpath/javax/swing/tree/FixedHeightLayoutCache.java4
-rw-r--r--libjava/classpath/javax/swing/tree/TreeNode.java1
-rw-r--r--libjava/classpath/javax/swing/tree/VariableHeightLayoutCache.java8
-rw-r--r--libjava/classpath/javax/swing/undo/StateEdit.java2
-rw-r--r--libjava/classpath/javax/swing/undo/UndoableEditSupport.java6
-rw-r--r--libjava/classpath/javax/xml/stream/XMLEventFactory.java10
-rw-r--r--libjava/classpath/javax/xml/stream/XMLInputFactory.java7
-rw-r--r--libjava/classpath/javax/xml/stream/XMLOutputFactory.java46
-rw-r--r--libjava/classpath/javax/xml/stream/events/Namespace.java2
-rw-r--r--libjava/classpath/javax/xml/stream/util/StreamReaderDelegate.java (renamed from libjava/classpath/javax/xml/stream/util/ReaderDelegate.java)10
-rw-r--r--libjava/classpath/lib/Makefile.in7
-rw-r--r--libjava/classpath/lib/gnu/java/locale/LocaleData.classbin7402 -> 7402 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/IppPrintService.classbin20439 -> 22794 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/IppRequest$RequestWriter.classbin9426 -> 9321 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/IppResponse$ResponseReader.classbin13186 -> 14012 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/IppResponse.classbin2476 -> 2868 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/IppUtilities.classbin15594 -> 16465 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/DetailedStatusMessage.classbin740 -> 818 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/DocumentAccessError.classbin732 -> 810 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/RequestedAttributes.classbin1660 -> 1861 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/StatusMessage.classbin707 -> 785 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/UnknownAttribute.classbin2180 -> 2258 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/CopiesDefault.classbin1151 -> 1229 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/DocumentFormatDefault.classbin1042 -> 1120 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/FinishingsDefault.classbin3187 -> 3265 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/JobHoldUntilDefault.classbin1603 -> 1681 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/JobPriorityDefault.classbin1173 -> 1251 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/JobSheetsDefault.classbin1338 -> 1416 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/MediaDefault.classbin1043 -> 1121 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/MultipleDocumentHandlingDefault.classbin2077 -> 2155 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/NumberUpDefault.classbin1031 -> 1109 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/OrientationRequestedDefault.classbin1998 -> 2076 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/PrintQualityDefault.classbin1778 -> 1856 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/PrinterResolutionDefault.classbin1207 -> 1285 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/SidesDefault.classbin1850 -> 1928 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/AttributesCharset.classbin804 -> 882 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/AttributesNaturalLanguage.classbin844 -> 922 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/JobDetailedStatusMessages.classbin765 -> 843 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/JobDocumentAccessErrors.classbin757 -> 835 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/JobId.classbin725 -> 803 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/JobMoreInfo.classbin638 -> 716 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/JobPrinterUri.classbin646 -> 724 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/JobStateMessage.classbin724 -> 802 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/JobUri.classbin617 -> 695 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/printer/CharsetConfigured.classbin691 -> 769 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/printer/DocumentFormat.classbin1481 -> 1559 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/printer/MultipleOperationTimeOut.classbin679 -> 757 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/printer/NaturalLanguageConfigured.classbin732 -> 810 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/printer/PrinterCurrentTime.classbin856 -> 934 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/printer/PrinterDriverInstaller.classbin690 -> 768 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/printer/PrinterStateMessage.classbin760 -> 838 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/printer/PrinterUpTime.classbin634 -> 712 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/CharsetSupported.classbin706 -> 784 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/CompressionSupported.classbin2442 -> 2755 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/DocumentFormatSupported.classbin783 -> 861 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/FinishingsSupported.classbin3892 -> 4204 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/GeneratedNaturalLanguageSupported.classbin784 -> 862 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/IppVersionsSupported.classbin1309 -> 1387 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/JobHoldUntilSupported.classbin1363 -> 1441 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/JobSheetsSupported.classbin2290 -> 2644 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/MediaSupported.classbin1762 -> 2161 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/MultipleDocumentHandlingSupported.classbin2774 -> 3100 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/MultipleDocumentJobsSupported.classbin1375 -> 1453 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/OperationsSupported.classbin2682 -> 2760 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/OrientationRequestedSupported.classbin2679 -> 3001 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/PageRangesSupported.classbin1332 -> 1410 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/PrintQualitySupported.classbin2459 -> 2773 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/PrinterResolutionSupported.classbin1820 -> 2139 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/PrinterUriSupported.classbin697 -> 775 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/SidesSupported.classbin1511 -> 1589 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/UriAuthenticationSupported.classbin1598 -> 1676 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/UriSecuritySupported.classbin1372 -> 1450 bytes
-rw-r--r--libjava/classpath/lib/gnu/javax/swing/text/html/css/Selector.classbin3283 -> 3622 bytes
-rw-r--r--libjava/classpath/lib/gnu/xml/stream/FilteredStreamReader.classbin1128 -> 1134 bytes
-rw-r--r--libjava/classpath/lib/gnu/xml/stream/NamespaceImpl.classbin1777 -> 2315 bytes
-rw-r--r--libjava/classpath/lib/gnu/xml/stream/XIncludeFilter.classbin17456 -> 17462 bytes
-rw-r--r--libjava/classpath/lib/gnu/xml/stream/XMLEventAllocatorImpl.classbin5771 -> 5856 bytes
-rw-r--r--libjava/classpath/lib/gnu/xml/stream/XMLEventFactoryImpl.classbin7555 -> 7640 bytes
-rw-r--r--libjava/classpath/lib/gnu/xml/stream/XMLStreamWriterImpl.classbin14899 -> 15076 bytes
-rw-r--r--libjava/classpath/lib/java/util/Scanner.classbin22993 -> 22990 bytes
-rw-r--r--libjava/classpath/lib/java/util/TreeMap$3.classbin1087 -> 1093 bytes
-rw-r--r--libjava/classpath/lib/java/util/regex/Matcher.classbin7093 -> 7104 bytes
-rw-r--r--libjava/classpath/lib/javax/security/auth/kerberos/KerberosTicket.classbin4697 -> 5448 bytes
-rw-r--r--libjava/classpath/lib/javax/security/auth/kerberos/KeyImpl.classbin1062 -> 1579 bytes
-rw-r--r--libjava/classpath/lib/javax/swing/text/html/HTMLEditorKit.classbin10427 -> 10493 bytes
-rw-r--r--libjava/classpath/lib/javax/swing/text/html/HTMLWriter.classbin13208 -> 13569 bytes
-rw-r--r--libjava/classpath/lib/javax/swing/text/html/ImageView$1.classbin842 -> 842 bytes
-rw-r--r--libjava/classpath/lib/javax/swing/text/html/ImageView.classbin8916 -> 8898 bytes
-rw-r--r--libjava/classpath/lib/javax/swing/text/html/MinimalHTMLWriter.classbin9010 -> 9209 bytes
-rw-r--r--libjava/classpath/lib/javax/swing/text/html/MultiAttributeSet$MultiNameEnumeration.classbin1245 -> 1366 bytes
-rw-r--r--libjava/classpath/lib/javax/swing/text/html/MultiAttributeSet.classbin2791 -> 2914 bytes
-rw-r--r--libjava/classpath/lib/javax/swing/text/html/MultiStyle.classbin1900 -> 2024 bytes
-rw-r--r--libjava/classpath/lib/javax/swing/text/html/ObjectView.classbin1388 -> 1454 bytes
-rw-r--r--libjava/classpath/lib/javax/swing/text/html/StyleSheet$BoxPainter.classbin3549 -> 3549 bytes
-rw-r--r--libjava/classpath/lib/javax/swing/text/html/StyleSheet$ListPainter.classbin2769 -> 2769 bytes
-rw-r--r--libjava/classpath/lib/javax/swing/text/html/StyleSheet.classbin17636 -> 18289 bytes
-rw-r--r--libjava/classpath/lib/javax/swing/text/html/TableView$CellView.classbin1846 -> 1846 bytes
-rw-r--r--libjava/classpath/lib/javax/swing/text/html/TableView$RowView.classbin3280 -> 3273 bytes
-rw-r--r--libjava/classpath/lib/javax/swing/text/html/TableView.classbin12606 -> 12606 bytes
-rw-r--r--libjava/classpath/lib/javax/swing/tree/DefaultMutableTreeNode$BreadthFirstEnumeration.classbin1664 -> 1664 bytes
-rw-r--r--libjava/classpath/lib/javax/swing/tree/DefaultMutableTreeNode$PostorderEnumeration.classbin2190 -> 2190 bytes
-rw-r--r--libjava/classpath/lib/javax/swing/tree/DefaultMutableTreeNode$PreorderEnumeration.classbin2076 -> 2076 bytes
-rw-r--r--libjava/classpath/lib/javax/swing/tree/DefaultMutableTreeNode.classbin10910 -> 10957 bytes
-rw-r--r--libjava/classpath/lib/javax/swing/tree/FixedHeightLayoutCache.classbin7465 -> 7536 bytes
-rw-r--r--libjava/classpath/lib/javax/swing/tree/VariableHeightLayoutCache.classbin8375 -> 8464 bytes
-rw-r--r--libjava/classpath/lib/javax/swing/undo/StateEdit.classbin2261 -> 2347 bytes
-rw-r--r--libjava/classpath/lib/javax/swing/undo/UndoableEditSupport.classbin3518 -> 3647 bytes
-rw-r--r--libjava/classpath/lib/javax/xml/stream/XMLEventFactory.classbin5614 -> 5614 bytes
-rw-r--r--libjava/classpath/lib/javax/xml/stream/XMLInputFactory.classbin5951 -> 5951 bytes
-rw-r--r--libjava/classpath/lib/javax/xml/stream/XMLOutputFactory.classbin4299 -> 4268 bytes
-rw-r--r--libjava/classpath/lib/javax/xml/stream/events/Namespace.classbin278 -> 279 bytes
-rw-r--r--libjava/classpath/lib/javax/xml/stream/util/StreamReaderDelegate.classbin0 -> 6619 bytes
-rw-r--r--libjava/classpath/lib/org/ietf/jgss/GSSManager.classbin2374 -> 2440 bytes
-rw-r--r--libjava/classpath/lib/org/omg/CORBA/LocalObject.classbin4238 -> 4238 bytes
-rw-r--r--libjava/classpath/lib/org/omg/CORBA/portable/Delegate.classbin4474 -> 4474 bytes
-rw-r--r--libjava/classpath/lib/org/omg/CORBA/portable/InputStream.classbin1973 -> 1973 bytes
-rw-r--r--libjava/classpath/lib/org/omg/CORBA/portable/ObjectImpl.classbin6331 -> 6331 bytes
-rw-r--r--libjava/classpath/lib/org/omg/CORBA_2_3/portable/InputStream.classbin2118 -> 2118 bytes
-rw-r--r--libjava/classpath/lib/org/omg/CORBA_2_3/portable/OutputStream.classbin1870 -> 1870 bytes
-rw-r--r--libjava/classpath/lib/org/omg/DynamicAny/_DynAnyFactoryStub.classbin1629 -> 1629 bytes
-rw-r--r--libjava/classpath/lib/org/omg/DynamicAny/_DynAnyStub.classbin6420 -> 6420 bytes
-rw-r--r--libjava/classpath/lib/org/omg/DynamicAny/_DynArrayStub.classbin6920 -> 6920 bytes
-rw-r--r--libjava/classpath/lib/org/omg/DynamicAny/_DynEnumStub.classbin6718 -> 6718 bytes
-rw-r--r--libjava/classpath/lib/org/omg/DynamicAny/_DynFixedStub.classbin6558 -> 6558 bytes
-rw-r--r--libjava/classpath/lib/org/omg/DynamicAny/_DynSequenceStub.classbin7118 -> 7118 bytes
-rw-r--r--libjava/classpath/lib/org/omg/DynamicAny/_DynStructStub.classbin7220 -> 7220 bytes
-rw-r--r--libjava/classpath/lib/org/omg/DynamicAny/_DynUnionStub.classbin7225 -> 7225 bytes
-rw-r--r--libjava/classpath/lib/org/omg/DynamicAny/_DynValueStub.classbin7486 -> 7486 bytes
-rw-r--r--libjava/classpath/lib/org/omg/PortableServer/_ServantActivatorStub.classbin1441 -> 1441 bytes
-rw-r--r--libjava/classpath/lib/org/omg/PortableServer/_ServantLocatorStub.classbin1730 -> 1730 bytes
-rw-r--r--libjava/classpath/m4/ac_prog_antlr.m46
-rw-r--r--libjava/classpath/m4/ac_prog_java.m41
-rw-r--r--libjava/classpath/m4/ac_prog_java_works.m411
-rw-r--r--libjava/classpath/m4/ac_prog_javac.m413
-rw-r--r--libjava/classpath/m4/ac_prog_javac_works.m43
-rw-r--r--libjava/classpath/m4/lib-ld.m4110
-rw-r--r--libjava/classpath/m4/lib-link.m4551
-rw-r--r--libjava/classpath/m4/lib-prefix.m4155
-rwxr-xr-xlibjava/classpath/missing49
-rw-r--r--libjava/classpath/native/Makefile.in7
-rw-r--r--libjava/classpath/native/fdlibm/Makefile.in7
-rw-r--r--libjava/classpath/native/jawt/Makefile.in7
-rw-r--r--libjava/classpath/native/jni/Makefile.in7
-rw-r--r--libjava/classpath/native/jni/classpath/Makefile.in7
-rw-r--r--libjava/classpath/native/jni/gconf-peer/Makefile.in7
-rw-r--r--libjava/classpath/native/jni/gstreamer-peer/Makefile.in7
-rw-r--r--libjava/classpath/native/jni/gtk-peer/Makefile.in7
-rw-r--r--libjava/classpath/native/jni/java-io/Makefile.in7
-rw-r--r--libjava/classpath/native/jni/java-lang/Makefile.in7
-rw-r--r--libjava/classpath/native/jni/java-math/Makefile.in7
-rw-r--r--libjava/classpath/native/jni/java-net/Makefile.in7
-rw-r--r--libjava/classpath/native/jni/java-nio/Makefile.in7
-rw-r--r--libjava/classpath/native/jni/java-util/Makefile.in7
-rw-r--r--libjava/classpath/native/jni/midi-alsa/Makefile.in7
-rw-r--r--libjava/classpath/native/jni/midi-dssi/Makefile.in7
-rw-r--r--libjava/classpath/native/jni/native-lib/Makefile.in7
-rw-r--r--libjava/classpath/native/jni/native-lib/cpnet.c6
-rw-r--r--libjava/classpath/native/jni/qt-peer/Makefile.in7
-rw-r--r--libjava/classpath/native/jni/xmlj/Makefile.in7
-rw-r--r--libjava/classpath/native/plugin/Makefile.in7
-rw-r--r--libjava/classpath/org/ietf/jgss/GSSManager.java2
-rw-r--r--libjava/classpath/org/omg/CORBA/LocalObject.java1
-rw-r--r--libjava/classpath/org/omg/CORBA/portable/Delegate.java3
-rw-r--r--libjava/classpath/org/omg/CORBA/portable/InputStream.java1
-rw-r--r--libjava/classpath/org/omg/CORBA/portable/ObjectImpl.java1
-rw-r--r--libjava/classpath/org/omg/CORBA_2_3/portable/InputStream.java2
-rw-r--r--libjava/classpath/org/omg/CORBA_2_3/portable/OutputStream.java1
-rw-r--r--libjava/classpath/org/omg/DynamicAny/_DynAnyFactoryStub.java1
-rw-r--r--libjava/classpath/org/omg/DynamicAny/_DynAnyStub.java1
-rw-r--r--libjava/classpath/org/omg/DynamicAny/_DynArrayStub.java1
-rw-r--r--libjava/classpath/org/omg/DynamicAny/_DynEnumStub.java1
-rw-r--r--libjava/classpath/org/omg/DynamicAny/_DynFixedStub.java1
-rw-r--r--libjava/classpath/org/omg/DynamicAny/_DynSequenceStub.java1
-rw-r--r--libjava/classpath/org/omg/DynamicAny/_DynStructStub.java1
-rw-r--r--libjava/classpath/org/omg/DynamicAny/_DynUnionStub.java1
-rw-r--r--libjava/classpath/org/omg/DynamicAny/_DynValueStub.java1
-rw-r--r--libjava/classpath/org/omg/PortableServer/_ServantActivatorStub.java1
-rw-r--r--libjava/classpath/org/omg/PortableServer/_ServantLocatorStub.java1
-rw-r--r--libjava/classpath/resource/Makefile.in7
-rw-r--r--libjava/classpath/scripts/Makefile.in7
-rw-r--r--libjava/classpath/tools/Makefile.in7
-rw-r--r--libjava/classpath/tools/classes/com/sun/tools/javadoc/Main.classbin453 -> 453 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/FileSystemClassLoader$FileStreamInfo.classbin1086 -> 1086 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/FileSystemClassLoader$JarStreamInfo.classbin1741 -> 1741 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/FileSystemClassLoader.classbin6253 -> 6253 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/IOToolkit.classbin3753 -> 3753 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/MalformedInputEvent.classbin1267 -> 1267 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/NotifyingInputStreamReader.classbin5878 -> 5878 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/StringToolkit.classbin1124 -> 1124 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/doclets/AbstractDoclet$DocletOptionGroup.classbin2075 -> 2075 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/doclets/AbstractDoclet$DocletOptionTag.classbin3296 -> 3296 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/doclets/AbstractDoclet$DocletOptionTaglet.classbin4359 -> 4359 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/doclets/AbstractDoclet$DocletOptionTagletPath.classbin955 -> 955 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/doclets/AbstractDoclet$IndexKey.classbin1129 -> 1129 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/doclets/AbstractDoclet$InterfaceRelation.classbin663 -> 663 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/doclets/AbstractDoclet$UsageType.classbin1848 -> 1848 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/doclets/AbstractDoclet.classbin27182 -> 27182 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/doclets/DocletConfigurationException.classbin432 -> 432 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/doclets/DocletOption.classbin575 -> 575 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/doclets/DocletOptionColonSeparated.classbin1139 -> 1139 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/doclets/DocletOptionFile.classbin962 -> 962 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/doclets/DocletOptionFlag.classbin755 -> 755 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/doclets/DocletOptionPackageWildcard.classbin2108 -> 2108 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/doclets/DocletOptionString.classbin776 -> 776 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/doclets/InvalidPackageWildcardException.classbin437 -> 437 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/doclets/PackageGroup.classbin698 -> 698 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/doclets/PackageMatcher.classbin2907 -> 2907 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/doclets/StandardTaglet.classbin1341 -> 1341 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/doclets/debugdoclet/DebugDoclet.classbin4081 -> 4081 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/CssClass.classbin14612 -> 14612 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/ExternalDocSet.classbin3836 -> 3836 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/HtmlDoclet$1.classbin1205 -> 1205 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/HtmlDoclet$2.classbin1207 -> 1207 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/HtmlDoclet$3.classbin1401 -> 1401 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/HtmlDoclet$TreeNode.classbin1088 -> 1088 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/HtmlDoclet.classbin79930 -> 79930 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/HtmlPage.classbin12297 -> 12297 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/HtmlTagletContext.classbin876 -> 876 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/Driver$1.classbin935 -> 935 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/Driver$NullErrorReporter.classbin793 -> 793 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/Driver$UsageType.classbin1537 -> 1537 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/Driver.classbin52598 -> 52598 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/Driver1_4.classbin955 -> 955 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/HtmlRepairer$TagInfo.classbin1043 -> 1043 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/HtmlRepairer.classbin10463 -> 10463 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/TargetContext.classbin1172 -> 1172 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTranslet$DocErrorReporterOutputStream.classbin1093 -> 1093 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTranslet.classbin14435 -> 14435 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTransletConfigurationException.classbin774 -> 774 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTransletException.classbin1218 -> 1218 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTransletOptions.classbin865 -> 865 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/doctranslet/JarClassLoader.classbin2127 -> 2127 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/doctranslet/OutputFileInfo.classbin1467 -> 1467 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/AbstractTagImpl.classbin2825 -> 2825 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ArrayCharacterIterator.classbin1762 -> 1762 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/BlockSourceComponent.classbin629 -> 629 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/BracketClose.classbin862 -> 862 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ClassComponent.classbin2610 -> 2610 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ClassDocImpl.classbin25782 -> 25782 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ClassDocProxy.classbin7577 -> 7577 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ClassDocReflectedImpl.classbin8685 -> 8685 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/CommentComponent.classbin1517 -> 1517 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ConstructorDocImpl.classbin757 -> 757 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Debug.classbin1447 -> 1447 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/DirectoryTree$FileNode.classbin943 -> 943 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/DirectoryTree.classbin1226 -> 1226 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/DocImpl.classbin19116 -> 19116 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/EmptyStatementComponent.classbin612 -> 612 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ErrorReporter.classbin1660 -> 1660 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ExecutableMemberDocImpl.classbin9289 -> 9289 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/FieldComponent.classbin3110 -> 3110 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/FieldDocImpl.classbin8266 -> 8266 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/FunctionComponent.classbin2992 -> 2992 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/IgnoredFileParseException.classbin357 -> 357 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ImportComponent.classbin1226 -> 1226 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/InheritDocTagImpl.classbin1838 -> 1838 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/JavadocWrapper.classbin960 -> 960 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/LinkTagImpl.classbin918 -> 918 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$1.classbin825 -> 825 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$10.classbin1221 -> 1221 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$11.classbin1728 -> 1728 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$12.classbin1799 -> 1799 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$13.classbin1800 -> 1800 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$14.classbin1002 -> 1002 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$15.classbin924 -> 924 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$16.classbin1715 -> 1715 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$17.classbin828 -> 828 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$18.classbin809 -> 809 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$19.classbin809 -> 809 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$2.classbin767 -> 767 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$20.classbin1382 -> 1382 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$21.classbin1401 -> 1401 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$22.classbin809 -> 809 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$23.classbin809 -> 809 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$24.classbin809 -> 809 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$25.classbin809 -> 809 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$3.classbin767 -> 767 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$4.classbin767 -> 767 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$5.classbin767 -> 767 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$6.classbin806 -> 806 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$7.classbin825 -> 825 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$8.classbin825 -> 825 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$9.classbin806 -> 806 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$OptionProcessor.classbin727 -> 727 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main.classbin29338 -> 29338 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/MemberDocImpl.classbin5337 -> 5337 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/MethodDocImpl.classbin1247 -> 1247 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/PackageComponent.classbin1142 -> 1142 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/PackageDocImpl.classbin5798 -> 5798 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ParamTagImpl.classbin1368 -> 1368 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ParameterImpl.classbin1682 -> 1682 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ParseException.classbin463 -> 463 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Parser$1.classbin1669 -> 1669 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Parser$Context.classbin1209 -> 1209 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Parser.classbin13190 -> 13190 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ProgramElementDocImpl.classbin3566 -> 3566 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/RootDocImpl$ResolvedImportClassFile.classbin3100 -> 3100 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/RootDocImpl$ResolvedImportNotFound.classbin1664 -> 1664 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/RootDocImpl$ResolvedImportPackageFile.classbin3932 -> 3932 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/RootDocImpl$ResolvedImportReflectionClass.classbin1980 -> 1980 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/RootDocImpl$ResolvedImportReflectionPackage.classbin2039 -> 2039 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/RootDocImpl$ScheduledClass.classbin1036 -> 1036 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/RootDocImpl.classbin20655 -> 20655 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/SeeTagImpl.classbin4114 -> 4114 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/SerialFieldTagImpl.classbin2862 -> 2862 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/SlashSlashCommentComponent.classbin556 -> 556 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/SourceComponent.classbin787 -> 787 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/SourcePositionImpl.classbin1095 -> 1095 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/StaticBlockComponent.classbin1030 -> 1030 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/TagImpl.classbin1350 -> 1350 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/TemporaryStore.classbin548 -> 548 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/TextTagImpl.classbin1026 -> 1026 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ThrowsTagImpl.classbin2479 -> 2479 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Timer.classbin2568 -> 2568 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/TimerDoclet$1.classbin900 -> 900 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/TimerDoclet.classbin2637 -> 2637 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/TypeImpl.classbin2694 -> 2694 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/TypeVariableImpl.classbin1292 -> 1292 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ValueTagImpl.classbin1032 -> 1032 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Whitespace.classbin591 -> 591 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/AdditionExpression.classbin2306 -> 2306 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/AndExpression.classbin756 -> 756 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/BinaryBitwiseExpression.classbin1711 -> 1711 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/BinaryComputationExpression.classbin2769 -> 2769 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/BinaryEqualityExpression.classbin2071 -> 2071 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/BinaryExpression.classbin615 -> 615 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/BinaryLogicalExpression.classbin1593 -> 1593 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/BinaryRelationExpression.classbin1928 -> 1928 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/BinaryShiftExpression.classbin1691 -> 1691 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/BitShiftRightExpression.classbin784 -> 784 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/CircularExpressionException.classbin618 -> 618 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConditionalExpression.classbin1670 -> 1670 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantBoolean.classbin1371 -> 1371 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantByte.classbin1082 -> 1082 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantChar.classbin1634 -> 1634 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantDouble.classbin1288 -> 1288 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantExpression.classbin787 -> 787 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantFloat.classbin1448 -> 1448 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantInteger.classbin1378 -> 1378 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantLong.classbin1599 -> 1599 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantNull.classbin829 -> 829 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantShort.classbin1088 -> 1088 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantString.classbin1025 -> 1025 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/Context.classbin818 -> 818 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/DivisionExpression.classbin959 -> 959 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/EqualExpression.classbin1067 -> 1067 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/Evaluator.classbin3343 -> 3343 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ExclusiveOrExpression.classbin780 -> 780 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/GreaterThanExpression.classbin988 -> 988 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/GreaterThanOrEqualExpression.classbin1009 -> 1009 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/IdentifierExpression.classbin2874 -> 2874 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/IllegalExpressionException.classbin577 -> 577 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/InclusiveOrExpression.classbin773 -> 773 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/LessThanExpression.classbin979 -> 979 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/LessThanOrEqualExpression.classbin1000 -> 1000 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/LogicalAndExpression.classbin693 -> 693 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/LogicalNotExpression.classbin1557 -> 1557 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/LogicalOrExpression.classbin683 -> 683 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ModuloExpression.classbin953 -> 953 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/MultiplicationExpression.classbin977 -> 977 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/NegateExpression.classbin1696 -> 1696 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/NotEqualExpression.classbin1071 -> 1071 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/NotExpression.classbin1467 -> 1467 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ShiftLeftExpression.classbin772 -> 772 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ShiftRightExpression.classbin775 -> 775 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/SubtractionExpression.classbin968 -> 968 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/Type.classbin1204 -> 1204 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/TypeCastExpression.classbin2687 -> 2687 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/UnaryExpression.classbin524 -> 524 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/UnknownIdentifierException.classbin473 -> 473 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/java2xhtml/Java2xhtml$State.classbin900 -> 900 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/java2xhtml/Java2xhtml.classbin26673 -> 26673 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/javah/ClassWrapper.classbin8421 -> 9260 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/javah/CniPrintStream.classbin5349 -> 5411 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/javah/CniStubPrinter.classbin4018 -> 4087 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/javah/GcjhMain.classbin3020 -> 3098 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/javah/JniIncludePrinter.classbin4472 -> 4600 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/javah/JniPrintStream.classbin3119 -> 3289 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/javah/JniStubPrinter.classbin3530 -> 3599 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/javah/Keywords.classbin3576 -> 3638 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main.classbin10907 -> 11933 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/javah/MethodHelper.classbin2924 -> 2993 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/javah/PathOptionGroup.classbin3353 -> 3678 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/rmic/ClassRmicCompiler$MethodRef.classbin2719 -> 2719 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/rmic/ClassRmicCompiler.classbin30526 -> 30526 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/rmic/CompilationError.classbin624 -> 624 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Generator.classbin2901 -> 2901 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/rmic/GiopIo.classbin2777 -> 2777 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/rmic/HashFinder.classbin1064 -> 1064 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$1.classbin969 -> 969 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$10.classbin971 -> 971 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$11.classbin900 -> 900 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$12.classbin971 -> 971 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$13.classbin971 -> 971 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$14.classbin971 -> 971 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$15.classbin1039 -> 1039 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$16.classbin972 -> 972 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$17.classbin1039 -> 1039 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$18.classbin900 -> 900 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$2.classbin969 -> 969 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$3.classbin969 -> 969 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$4.classbin1048 -> 1048 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$5.classbin1048 -> 1048 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$6.classbin960 -> 960 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$7.classbin960 -> 960 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$8.classbin969 -> 969 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$9.classbin969 -> 969 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main.classbin6058 -> 6058 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/rmic/MethodGenerator.classbin5280 -> 5280 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/rmic/RMICException.classbin555 -> 555 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/rmic/RmiMethodGenerator.classbin5116 -> 5116 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/rmic/SourceRmicCompiler.classbin3894 -> 3894 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Variables.classbin3290 -> 3290 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/rmic/WrapUnWrapper.classbin1244 -> 1244 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/serialver/SerialVer$1.classbin1171 -> 1171 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/serialver/SerialVer$2.classbin1197 -> 1197 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/serialver/SerialVer$3.classbin950 -> 950 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/serialver/SerialVer.classbin4636 -> 4636 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/taglets/AuthorTaglet$EmailReplacement.classbin714 -> 714 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/taglets/AuthorTaglet.classbin4878 -> 4878 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/taglets/CodeTaglet.classbin1529 -> 1529 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/taglets/CopyrightTaglet.classbin2366 -> 2366 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/taglets/DeprecatedTaglet.classbin2371 -> 2371 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/taglets/GenericTaglet.classbin2708 -> 2708 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/taglets/SinceTaglet.classbin2962 -> 2962 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/taglets/TagletContext.classbin858 -> 858 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/taglets/ValueTaglet.classbin2695 -> 2695 bytes
-rw-r--r--libjava/classpath/tools/classes/gnu/classpath/tools/taglets/VersionTaglet.classbin2580 -> 2580 bytes
-rw-r--r--libjava/classpath/tools/com/sun/tools/javadoc/Main.java37
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/FileSystemClassLoader.java609
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/IOToolkit.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/MalformedInputEvent.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/MalformedInputListener.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/NotifyingInputStreamReader.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/StringToolkit.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/doclets/AbstractDoclet.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/doclets/DocletConfigurationException.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/doclets/DocletOption.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/doclets/DocletOptionColonSeparated.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/doclets/DocletOptionFile.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/doclets/DocletOptionFlag.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/doclets/DocletOptionPackageWildcard.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/doclets/DocletOptionString.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/doclets/InlineTagRenderer.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/doclets/InvalidPackageWildcardException.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/doclets/PackageGroup.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/doclets/PackageMatcher.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/doclets/StandardTaglet.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/doclets/TagletPrinter.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/doclets/debugdoclet/DebugDoclet.java37
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/doclets/htmldoclet/CssClass.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/doclets/htmldoclet/ExternalDocSet.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/doclets/htmldoclet/HtmlDoclet.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/doclets/htmldoclet/HtmlPage.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/doclets/htmldoclet/HtmlTagletContext.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/Driver.java4885
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/Driver1_4.java151
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/HtmlRepairer.java1365
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/TargetContext.java189
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTranslet.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTransletConfigurationException.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTransletException.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTransletOptions.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/JarClassLoader.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/OutputFileInfo.java115
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/AbstractTagImpl.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/ArrayCharacterIterator.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/ClassDocImpl.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/ClassDocProxy.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/ClassDocReflectedImpl.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/ConstructorDocImpl.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/Debug.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/DirectoryTree.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/DocImpl.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/ErrorReporter.java225
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/ExecutableMemberDocImpl.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/FieldDocImpl.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/GjdocPackageDoc.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/GjdocRootDoc.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/InheritDocTagImpl.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/JavadocWrapper.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/LinkTagImpl.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/Main.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/MemberDocImpl.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/MethodDocImpl.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/PackageDocImpl.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/ParamTagImpl.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/ParameterImpl.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/ParseException.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/Parser.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/ProgramElementDocImpl.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/RootDocImpl.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/SeeTagImpl.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/SerialFieldTagImpl.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/SourcePositionImpl.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/TagContainer.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/TagImpl.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/TemporaryStore.java247
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/TextTagImpl.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/ThrowsTagImpl.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/Timer.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/TimerDoclet.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/TypeImpl.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/TypeVariableImpl.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/ValueTagImpl.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/WritableType.java71
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/AdditionExpression.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/AndExpression.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/BinaryBitwiseExpression.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/BinaryComputationExpression.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/BinaryEqualityExpression.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/BinaryExpression.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/BinaryLogicalExpression.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/BinaryRelationExpression.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/BinaryShiftExpression.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/BitShiftRightExpression.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/CircularExpressionException.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConditionalExpression.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantBoolean.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantByte.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantChar.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantDouble.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantExpression.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantFloat.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantInteger.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantLong.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantNull.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantShort.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantString.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/Context.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/DivisionExpression.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/EqualExpression.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/Evaluator.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/EvaluatorEnvironment.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ExclusiveOrExpression.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/Expression.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/GreaterThanExpression.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/GreaterThanOrEqualExpression.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/IdentifierExpression.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/IllegalExpressionException.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/InclusiveOrExpression.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/LessThanExpression.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/LessThanOrEqualExpression.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/LogicalAndExpression.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/LogicalNotExpression.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/LogicalOrExpression.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ModuloExpression.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/MultiplicationExpression.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/NegateExpression.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/NotEqualExpression.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/NotExpression.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ShiftLeftExpression.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ShiftRightExpression.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/SubtractionExpression.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/Type.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/TypeCastExpression.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/UnaryExpression.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/UnknownIdentifierException.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/java2xhtml/Java2xhtml.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/javah/ClassWrapper.java52
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/javah/CniPrintStream.java4
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/javah/CniStubPrinter.java2
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/javah/GcjhMain.java2
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/javah/JniIncludePrinter.java6
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/javah/JniPrintStream.java10
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/javah/JniStubPrinter.java2
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/javah/Keywords.java4
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/javah/Main.java30
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/javah/MethodHelper.java2
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/javah/PathOptionGroup.java16
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/rmic/ClassRmicCompiler.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/rmic/CompilationError.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/rmic/Generator.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/rmic/GiopIo.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/rmic/HashFinder.java18
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/rmic/Main.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/rmic/MethodGenerator.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/rmic/RMICException.java20
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/rmic/RmiMethodGenerator.java12
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/rmic/RmicBackend.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/rmic/SourceRmicCompiler.java12
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/rmic/Variables.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/rmic/WrapUnWrapper.java18
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/serialver/SerialVer.java20
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/taglets/AuthorTaglet.java569
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/taglets/CodeTaglet.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/taglets/CopyrightTaglet.java229
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/taglets/DeprecatedTaglet.java247
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/taglets/GenericTaglet.java297
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/taglets/GnuExtendedTaglet.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/taglets/SinceTaglet.java305
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/taglets/TagletContext.java37
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/taglets/ValueTaglet.java19
-rw-r--r--libjava/classpath/tools/gnu/classpath/tools/taglets/VersionTaglet.java289
717 files changed, 12793 insertions, 9211 deletions
diff --git a/libjava/classpath/ChangeLog b/libjava/classpath/ChangeLog
index a7ee39fdc79..7f936b0a7e4 100644
--- a/libjava/classpath/ChangeLog
+++ b/libjava/classpath/ChangeLog
@@ -12,11 +12,358 @@
* configure: Regenerate.
+2010-05-27 Andrew John Hughes <ahughes@redhat.com>
+
+ * configure.ac:
+ Disable plugin by default and warn about
+ unmaintained status when enabled.
+
+2010-05-04 Andrew John Hughes <ahughes@redhat.com>
+
+ * configure.ac:
+ Call AC_PROG_JAVA_WORKS and AC_PROG_JAVAC_WORKS
+ in place of AC_PROG_JAVA and AC_PROG_JAVAC
+ respectively, as this is the real test we want.
+ * m4/ac_prog_java.m4:
+ (AC_PROG_JAVA): Don't include AC_PROG_JAVA_WORKS.
+ * m4/ac_prog_java_works.m4:
+ (AC_PROG_JAVA_WORKS): Require AC_PROG_JAVA and be
+ defined only once. Require AC_PROG_JAVAC_WORKS for
+ compilation of test class. Remove inclusion of
+ AC_PROG_JAVAC.
+ (AC_TRY_COMPILE_JAVA): Require AC_PROG_JAVAC_WORKS
+ rather than AC_PROG_JAVAC. Be defined only once.
+ * m4/ac_prog_javac.m:
+ (AC_PROG_JAVAC): Be defined only once. Don't include
+ AC_PROG_JAVAC_WORKS.
+ * m4/ac_prog_javac_works.m4:
+ (AC_PROG_JAVAC_WORKS): Be defined only once. Require
+ AC_PROG_JAVAC.
+
2010-05-04 Andrew Haley <aph@redhat.com>
* lib/gen-classlist.sh.in: Use absolute pathnames for all the
directory names in the output file.
+2010-05-04 Andrew John Hughes <ahughes@redhat.com>
+
+ * m4/ac_prog_javac.m4:
+ Capture all output from javac --version
+ to avoid excess output. Make sure no appears
+ when javac is not gcj.
+
+2010-05-04 Andrew John Hughes <ahughes@redhat.com>
+
+ * configure.ac:
+ Add output to GMP directory detection and
+ only perform when compiling GMP.
+
+2010-05-04 Mike Stump <mikestump@comcast.net>
+
+ * configure.ac:
+ Allow prefix, libdir and includedir of GMP
+ to be specified via --with-gmp, --with-gmp-include
+ and --with-gmp-lib.
+
+2010-04-28 Andrew John Hughes <ahughes@redhat.com>
+
+ * gnu/javax/print/ipp/IppPrintService.java:
+ (printerAttr): Add generic typing.
+ (printServiceAttributeListener): Likewise.
+ (flavors): Likewise.
+ (printerUris): Likewise.
+ (IppPrintService(URI uri, String username, String password)):
+ Use generic types in initialising listener set.
+ (getPrinterAttributes()): Add generic types. Remove cast.
+ (getPrinterAttributeSet(Class<T>)): Return a set containing
+ attributes of type T. Now creates a new set and checks that
+ all elements of the original set can be cast and added to this
+ new set.
+ (getPrinterDefaultAttribute(Class<? extends Attribute>)): Add
+ generic types.
+ (processResponse()): Add generic types.
+ (getAttribute(Class<T>)): Use generic types corresponding to
+ parent interface.
+ (getSupportedAttributeCategories()): Use generic types.
+ (getSupportedAttributeValues()): Likewise.
+ (handleSupportedAttributeValuesResponse(IppResponse,Class<? extends Attribute>)):
+ Likewise.
+ (isAttributeCategorySupported(Class<? extends Attribute>)): Likewise.
+ * gnu/javax/print/ipp/IppResponse.java:
+ (parseResponse(InputStream)): Use generic types.
+ (parseAttributes(Map<Class<? extends Attribute>, Set<Attribute>, DataInputStream)):
+ Likewise.
+ (addAttribute(Map<Class<? extends Attribute>, Set<Attribute>>, Attribute): Likewise.
+ (IppResponse(URI, short)): Create lists with appropriate type parameters.
+ (getJobAttributes()): Use generic return type.
+ (getOperationAttributes()): Likewise.
+ (getPrinterAttributes()): Likewise.
+ (getUnsupportedAttributes()): Likewise.
+ * gnu/javax/print/ipp/attribute/supported/CompressionSupported.java:
+ (getAssociatedAttributeArray(Set<Attribute>)): Use superclass Attribute
+ as set type parameter and cast when looping over it.
+ * gnu/javax/print/ipp/attribute/supported/FinishingsSupported.java,
+ (getAssociatedAttributeArray(Set<Attribute>)): Use superclass Attribute
+ as set type parameter and cast when looping over it.
+ * gnu/javax/print/ipp/attribute/supported/JobSheetsSupported.java,
+ (getAssociatedAttributeArray(Set<Attribute>)): Use superclass Attribute
+ as set type parameter and cast when looping over it.
+ * gnu/javax/print/ipp/attribute/supported/MediaSupported.java,
+ (getAssociatedAttributeArray(Set<Attribute>)): Use superclass Attribute
+ as set type parameter and cast when looping over it.
+ * gnu/javax/print/ipp/attribute/supported/MultipleDocumentHandlingSupported.java,
+ (getAssociatedAttributeArray(Set<Attribute>)): Use superclass Attribute
+ as set type parameter and cast when looping over it.
+ * gnu/javax/print/ipp/attribute/supported/OrientationRequestedSupported.java,
+ (getAssociatedAttributeArray(Set<Attribute>)): Use superclass Attribute
+ as set type parameter and cast when looping over it.
+ * gnu/javax/print/ipp/attribute/supported/PrintQualitySupported.java,
+ (getAssociatedAttributeArray(Set<Attribute>)): Use superclass Attribute
+ as set type parameter and cast when looping over it.
+ * gnu/javax/print/ipp/attribute/supported/PrinterResolutionSupported.java,
+ (getAssociatedAttributeArray(Set<Attribute>)): Use superclass Attribute
+ as set type parameter and cast when looping over it.
+
+2010-04-28 Andrew John Hughes <ahughes@redhat.com>
+
+ * gnu/javax/print/ipp/IppUtilities.java:
+ (INTEGER_CLASS_ARRAY): Use generic typing.
+ (TEXT_CLASS_ARRAY): Likewise.
+ (classesByName): Likewise.
+ (instanceByClass): Likewise.
+ (getClass(String)): Remove cast. Return generic type.
+ (getSupportedAttrName(Class<? extends Attribute>)): Remove cast.
+ Add generic type to parameter.
+ (getSupportedCategory(Class<?> extends Attribute>)): Likewise.
+ (getEnumAttribute(String,Object)): Add missing generic types on Class.
+ (getIntegerAttribute(String,int)): Likewise and on Constructor.
+ (getTextAttribute(String,byte,byte[])): Likewise.
+
+2010-04-27 Andrew John Hughes <ahughes@redhat.com>
+
+ * gnu/javax/print/ipp/IppRequest.java:
+ (write(RequestedAttributes)): Fix for change in return value
+ of RequestedAttributes.getValues().
+ * gnu/javax/print/ipp/attribute/DetailedStatusMessage.java:
+ (getCategory()): Fix return value.
+ * gnu/javax/print/ipp/attribute/DocumentAccessError.java:
+ (getCategory()): Fix return value.
+ * gnu/javax/print/ipp/attribute/RequestedAttributes.java:
+ (RequestedAttributes()): Use appropriate generic type with attributes
+ ArrayList.
+ (getValues()): Return an array-based snapshot of the current state of
+ attributes rather than providing direct mutable access to it.
+ * gnu/javax/print/ipp/attribute/StatusMessage.java:
+ (getCategory()): Fix return value.
+ * gnu/javax/print/ipp/attribute/UnknownAttribute.java:
+ (getCategory()): Fix return value.
+ * gnu/javax/print/ipp/attribute/defaults/CopiesDefault.java:
+ (getCategory()): Fix return value.
+ * gnu/javax/print/ipp/attribute/defaults/DocumentFormatDefault.java:
+ (getCategory()): Fix return value.
+ * gnu/javax/print/ipp/attribute/defaults/FinishingsDefault.java:
+ (getCategory()): Fix return value.
+ * gnu/javax/print/ipp/attribute/defaults/JobHoldUntilDefault.java:
+ (getCategory()): Fix return value.
+ * gnu/javax/print/ipp/attribute/defaults/JobPriorityDefault.java:
+ (getCategory()): Fix return value.
+ * gnu/javax/print/ipp/attribute/defaults/JobSheetsDefault.java:
+ (getCategory()): Fix return value.
+ * gnu/javax/print/ipp/attribute/defaults/MediaDefault.java:
+ (getCategory()): Fix return value.
+ * gnu/javax/print/ipp/attribute/defaults/MultipleDocumentHandlingDefault.java:
+ (getCategory()): Fix return value.
+ * gnu/javax/print/ipp/attribute/defaults/NumberUpDefault.java:
+ (getCategory()): Fix return value.
+ * gnu/javax/print/ipp/attribute/defaults/OrientationRequestedDefault.java:
+ (getCategory()): Fix return value.
+ * gnu/javax/print/ipp/attribute/defaults/PrintQualityDefault.java:
+ (getCategory()): Fix return value.
+ * gnu/javax/print/ipp/attribute/defaults/PrinterResolutionDefault.java:
+ (getCategory()): Fix return value.
+ * gnu/javax/print/ipp/attribute/defaults/SidesDefault.java:
+ (getCategory()): Fix return value.
+ * gnu/javax/print/ipp/attribute/job/AttributesCharset.java:
+ (getCategory()): Fix return value.
+ * gnu/javax/print/ipp/attribute/job/AttributesNaturalLanguage.java:
+ (getCategory()): Fix return value.
+ * gnu/javax/print/ipp/attribute/job/JobDetailedStatusMessages.java:
+ (getCategory()): Fix return value.
+ * gnu/javax/print/ipp/attribute/job/JobDocumentAccessErrors.java:
+ (getCategory()): Fix return value.
+ * gnu/javax/print/ipp/attribute/job/JobId.java:
+ (getCategory()): Fix return value.
+ * gnu/javax/print/ipp/attribute/job/JobMoreInfo.java:
+ (getCategory()): Fix return value.
+ * gnu/javax/print/ipp/attribute/job/JobPrinterUri.java:
+ (getCategory()): Fix return value.
+ * gnu/javax/print/ipp/attribute/job/JobStateMessage.java:
+ (getCategory()): Fix return value.
+ * gnu/javax/print/ipp/attribute/job/JobUri.java:
+ (getCategory()): Fix return value.
+ * gnu/javax/print/ipp/attribute/printer/CharsetConfigured.java:
+ (getCategory()): Fix return value.
+ * gnu/javax/print/ipp/attribute/printer/DocumentFormat.java:
+ (getCategory()): Fix return value.
+ * gnu/javax/print/ipp/attribute/printer/MultipleOperationTimeOut.java:
+ (getCategory()): Fix return value.
+ * gnu/javax/print/ipp/attribute/printer/NaturalLanguageConfigured.java:
+ (getCategory()): Fix return value.
+ * gnu/javax/print/ipp/attribute/printer/PrinterCurrentTime.java:
+ (getCategory()): Fix return value.
+ * gnu/javax/print/ipp/attribute/printer/PrinterDriverInstaller.java:
+ (getCategory()): Fix return value.
+ * gnu/javax/print/ipp/attribute/printer/PrinterStateMessage.java:
+ (getCategory()): Fix return value.
+ * gnu/javax/print/ipp/attribute/printer/PrinterUpTime.java:
+ (getCategory()): Fix return value.
+
+2010-04-27 Andrew John Hughes <ahughes@redhat.com>
+
+ * gnu/javax/print/CupsIppOperation.java,
+ * gnu/javax/print/CupsMediaMapping.java,
+ * gnu/javax/print/CupsPrintService.java,
+ * gnu/javax/print/CupsPrintServiceLookup.java,
+ * gnu/javax/print/CupsServer.java,
+ * gnu/javax/print/PrintAttributeException.java,
+ * gnu/javax/print/PrintFlavorException.java,
+ * gnu/javax/print/PrintUriException.java,
+ * gnu/javax/print/PrinterDialog.java,
+ * gnu/javax/print/ipp/DocPrintJobImpl.java,
+ * gnu/javax/print/ipp/IppDelimiterTag.java,
+ * gnu/javax/print/ipp/IppException.java,
+ * gnu/javax/print/ipp/IppMultiDocPrintService.java,
+ * gnu/javax/print/ipp/IppRequest.java,
+ * gnu/javax/print/ipp/IppResponse.java,
+ * gnu/javax/print/ipp/IppStatusCode.java,
+ * gnu/javax/print/ipp/IppUtilities.java,
+ * gnu/javax/print/ipp/IppValueTag.java,
+ * gnu/javax/print/ipp/MultiDocPrintJobImpl.java,
+ * gnu/javax/print/ipp/attribute/CharsetSyntax.java,
+ * gnu/javax/print/ipp/attribute/DefaultValueAttribute.java,
+ * gnu/javax/print/ipp/attribute/DetailedStatusMessage.java,
+ * gnu/javax/print/ipp/attribute/DocumentAccessError.java,
+ * gnu/javax/print/ipp/attribute/NaturalLanguageSyntax.java,
+ * gnu/javax/print/ipp/attribute/RequestedAttributes.java,
+ * gnu/javax/print/ipp/attribute/StatusMessage.java,
+ * gnu/javax/print/ipp/attribute/UnknownAttribute.java,
+ * gnu/javax/print/ipp/attribute/defaults/CopiesDefault.java,
+ * gnu/javax/print/ipp/attribute/defaults/DocumentFormatDefault.java,
+ * gnu/javax/print/ipp/attribute/defaults/FinishingsDefault.java,
+ * gnu/javax/print/ipp/attribute/defaults/JobHoldUntilDefault.java,
+ * gnu/javax/print/ipp/attribute/defaults/JobPriorityDefault.java,
+ * gnu/javax/print/ipp/attribute/defaults/JobSheetsDefault.java,
+ * gnu/javax/print/ipp/attribute/defaults/MediaDefault.java,
+ * gnu/javax/print/ipp/attribute/defaults/MultipleDocumentHandlingDefault.java,
+ * gnu/javax/print/ipp/attribute/defaults/NumberUpDefault.java,
+ * gnu/javax/print/ipp/attribute/defaults/OrientationRequestedDefault.java,
+ * gnu/javax/print/ipp/attribute/defaults/PrintQualityDefault.java,
+ * gnu/javax/print/ipp/attribute/defaults/PrinterResolutionDefault.java,
+ * gnu/javax/print/ipp/attribute/defaults/SidesDefault.java,
+ * gnu/javax/print/ipp/attribute/job/AttributesCharset.java,
+ * gnu/javax/print/ipp/attribute/job/AttributesNaturalLanguage.java,
+ * gnu/javax/print/ipp/attribute/job/JobDetailedStatusMessages.java,
+ * gnu/javax/print/ipp/attribute/job/JobDocumentAccessErrors.java,
+ * gnu/javax/print/ipp/attribute/job/JobId.java,
+ * gnu/javax/print/ipp/attribute/job/JobMoreInfo.java,
+ * gnu/javax/print/ipp/attribute/job/JobPrinterUri.java,
+ * gnu/javax/print/ipp/attribute/job/JobStateMessage.java,
+ * gnu/javax/print/ipp/attribute/job/JobUri.java,
+ * gnu/javax/print/ipp/attribute/printer/CharsetConfigured.java,
+ * gnu/javax/print/ipp/attribute/printer/DocumentFormat.java,
+ * gnu/javax/print/ipp/attribute/printer/MultipleOperationTimeOut.java,
+ * gnu/javax/print/ipp/attribute/printer/NaturalLanguageConfigured.java,
+ * gnu/javax/print/ipp/attribute/printer/PrinterCurrentTime.java,
+ * gnu/javax/print/ipp/attribute/printer/PrinterDriverInstaller.java,
+ * gnu/javax/print/ipp/attribute/printer/PrinterStateMessage.java,
+ * gnu/javax/print/ipp/attribute/printer/PrinterUpTime.java:
+ Normalise whitespace; replace tabs with spaces and removing
+ trailing whitespace.
+
+2010-04-27 Andrew John Hughes <ahughes@redhat.com>
+
+ * gnu/javax/print/ipp/IppPrintService.java:
+ Fix whitespace. Use correct generic type for printerAttr
+ map.
+ (getPrinterAttributeSet(Class<? extends Attribute>)): Add
+ appropriate generic type.
+ * gnu/javax/print/ipp/attribute/supported/CharsetSupported.java:
+ Fix whitespace.
+ (getCategory()): Fix return type.
+ * gnu/javax/print/ipp/attribute/supported/CompressionSupported.java:
+ Fix whitespace.
+ (getCategory()): Fix return type.
+ (getAssociatedAttributeArray(Set<CompressionSupported>)): Add generic
+ type to set and use for-each loop.
+ * gnu/javax/print/ipp/attribute/supported/DocumentFormatSupported.java:
+ Fix whitespace.
+ (getCategory()): Fix return type.
+ * gnu/javax/print/ipp/attribute/supported/FinishingsSupported.java:
+ Fix whitespace.
+ (getCategory()): Fix return type.
+ (getAssociatedAttributeArray(Set<FinishingsSupported>)): Add generic
+ type to set and use for-each loop.
+ * gnu/javax/print/ipp/attribute/supported/GeneratedNaturalLanguageSupported.java:
+ Fix whitespace.
+ (getCategory()): Fix return type.
+ * gnu/javax/print/ipp/attribute/supported/IppVersionsSupported.java:
+ Fix whitespace.
+ (getCategory()): Fix return type.
+ * gnu/javax/print/ipp/attribute/supported/JobHoldUntilSupported.java:
+ Fix whitespace.
+ (getCategory()): Fix return type.
+ * gnu/javax/print/ipp/attribute/supported/JobSheetsSupported.java:
+ Fix whitespace.
+ (getCategory()): Fix return type.
+ (getAssociatedAttributeArray(Set<JobSheetsSupported>)): Add generic
+ type to set and use for-each loop.
+ * gnu/javax/print/ipp/attribute/supported/MediaSupported.java:
+ Fix whitespace.
+ (getCategory()): Fix return type.
+ (getAssociatedAttributeArray(Set<MediaSupported>)): Add generic
+ type to set and use for-each loop.
+ * gnu/javax/print/ipp/attribute/supported/MultipleDocumentHandlingSupported.java:
+ Fix whitespace.
+ (getCategory()): Fix return type.
+ (getAssociatedAttributeArray(Set<MultipleDocumentHandlingSupported>)): Add generic
+ type to set and use for-each loop.
+ * gnu/javax/print/ipp/attribute/supported/MultipleDocumentJobsSupported.java,
+ Fix whitespace.
+ (getCategory()): Fix return type.
+ * gnu/javax/print/ipp/attribute/supported/OperationsSupported.java,
+ Fix whitespace.
+ (getCategory()): Fix return type.
+ * gnu/javax/print/ipp/attribute/supported/OrientationRequestedSupported.java,
+ Fix whitespace.
+ (getCategory()): Fix return type.
+ (getAssociatedAttributeArray(Set<OrientationRequestedSupported>)): Add generic
+ type to set and use for-each loop.
+ * gnu/javax/print/ipp/attribute/supported/PageRangesSupported.java,
+ Fix whitespace.
+ (getCategory()): Fix return type.
+ * gnu/javax/print/ipp/attribute/supported/PrintQualitySupported.java,
+ Fix whitespace.
+ (getCategory()): Fix return type.
+ (getAssociatedAttributeArray(Set<PrintQualitySupported>)): Add generic
+ type to set and use for-each loop.
+ * gnu/javax/print/ipp/attribute/supported/PrinterResolutionSupported.java,
+ Fix whitespace.
+ (getCategory()): Fix return type.
+ (getAssociatedAttributeArray(Set<PrinterResolutionSupported>)): Add generic
+ type to set and use for-each loop.
+ * gnu/javax/print/ipp/attribute/supported/PrinterUriSupported.java,
+ Fix whitespace.
+ (getCategory()): Fix return type.
+ * gnu/javax/print/ipp/attribute/supported/SidesSupported.java,
+ Fix whitespace.
+ (getCategory()): Fix return type.
+ * gnu/javax/print/ipp/attribute/supported/UriAuthenticationSupported.java,
+ Fix whitespace.
+ (getCategory()): Fix return type.
+ * gnu/javax/print/ipp/attribute/supported/UriSecuritySupported.java,
+ Fix whitespace.
+ (getCategory()): Fix return type.
+
2010-04-27 Andrew Haley <aph@redhat.com>
* java/util/concurrent/CopyOnWriteArrayList.java: Fix for empty
@@ -25,7 +372,7 @@
2010-04-27 Andrew Haley <aph@redhat.com>
* gnu/javax/print/ipp/IppResponse.java (parseAttributes): Handle
- IppValueTag.UNKNOWN.
+ IppValueTag.UNKNOWN.
* gnu/javax/print/ipp/IppRequest.java (writeOperationAttributes):
Handle RequestedAttributes.
* gnu/javax/print/ipp/IppPrintService.java (processResponse): Add
@@ -70,6 +417,7 @@
* resource/Makefile.in: Regenerate.
* scripts/Makefile.in: Regenerate.
* tools/Makefile.in: Regenerate.
+
2010-03-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
PR libgcj/38251
@@ -83,11 +431,42 @@
* tools/Makefile.am (UPDATE_TOOLS_ZIP, CREATE_TOOLS_ZIP): Exclude
.svn direcories.
+2010-01-30 Andrew John Hughes <ahughes@redhat.com>
+
+ * doc/www.gnu.org/home.wml:
+ Add newer JAPI results.
+
+2010-01-30 Andrew John Hughes <ahughes@redhat.com>
+
+ PR classpath/41686
+ * javax/security/auth/kerberos/KerberosTicket.java:
+ Fix formatting.
+ (toString()): Add full implementation.
+ (getSessionKeyType()): Implemented.
+ * javax/security/auth/kerberos/KeyImpl.java:
+ (toString()): Implemented.
+
+2010-01-30 Andrew John Hughes <ahughes@redhat.com>
+
+ * autogen.sh:
+ Allow libtool 2.* through.
+ * configure.ac:
+ Updated via autoupdate.
+ * m4/lib-ld.m4,
+ * m4/lib-link.m4,
+ * m4/lib-prefix.m4:
+ Drop old libtool macros which
+ result in build failure.
+
2010-01-18 Andreas Tobler <andreast@fgznet.ch>
* tools/Makefile.am (GJDOC_EX): Use find -name pattern -prune -o.
* tools/Makefile.in: Regenerate.
+2010-01-12 Jeroen Frijters <jeroen@frijters.net>
+
+ * java/util/zip/Inflater. java (inflate(byte[],int,int)): Fix for #41696.
+
2009-12-05 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* Makefile.in: Regenerate.
@@ -126,6 +505,17 @@
* scripts/Makefile.in: Regenerate.
* tools/Makefile.in: Regenerate.
+2009-11-18 Andrew Haley <aph@redhat.com>
+
+ * java/util/TreeMap.java (anonymous class.size()): Debogosify.
+ anonymous class.clear(): Likewise.
+
+2009-10-22 Andrew Haley <aph@redhat.com>
+
+ * native/jni/native-lib/cpnet.c (cpnet_addMembership): Fix
+ aliasing warning.
+ (cpnet_dropMembership): Likewise.
+
2009-10-22 Richard Guenther <rguenther@suse.de>
PR cp-tools/39177
@@ -193,6 +583,48 @@
(func_mode_link): Add new -bindir option, and use it to place
output DLL if specified.
+2009-07-08 Chris Burdess <dog@gnu.org>
+
+ PR xml/40663:
+ * javax/xml/stream/XMLEventFactory.java,
+ * javax/xml/stream/XMLInputFactory.java,
+ * javax/xml/stream/XMLOutputFactory.java,
+ * javax/xml/stream/events/Namespace.java: Update API to match final
+ version of StAX.
+ * javax/xml/stream/util/ReaderDelegate.java: Removed.
+ * javax/xml/stream/util/StreamReaderDelegate.java: Added (renamed
+ from ReaderDelegate)
+ * gnu/xml/stream/FilteredStreamReader.java,
+ * gnu/xml/stream/NamespaceImpl.java,
+ * gnu/xml/stream/XIncludeFilter.java,
+ * gnu/xml/stream/XMLEventAllocatorImpl.java,
+ * gnu/xml/stream/XMLEventFactoryImpl.java: Update implementation to
+ match final version of StAX API.
+
+2009-07-06 Ludovic Claude <ludovic.claude@laposte.net>
+
+ PR xml/40653:
+ * gnu/xml/stream/XMLStreamWriterImpl.java:
+ Weaken testing of namespace prefix to match
+ reference implementation and spec.
+
+2009-07-07 Andrew John Hughes <ahughes@redhat.com>
+
+ PR classpath/40630
+ * java/util/Scanner.java:
+ (myCoreNext(boolean, Pattern)): Set tmp2 to
+ null if the string is empty (i.e. we are at
+ the end of the file).
+ * java/util/regex/Matcher.java:
+ (toMatchResult()): Check that match is non-null
+ before attempting to clone it.
+
+2009-07-07 Andrew John Hughes <ahughes@redhat.com>
+
+ * java/util/Scanner.java,
+ * java/util/regex/Matcher.java:
+ Replace tab characters with spaces.
+
2009-06-29 Andrew Haley <aph@redhat.com>
PR java/40590
@@ -216,6 +648,285 @@
New methods.
(moveToPackage): Use printName().
+2009-03-29 Mark Wielaard <mark@klomp.org>
+
+ * doc/www.gnu.org/faq/faq.wml: Fix link to cp-hacking.html.
+
+2009-03-29 Mark Wielaard <mark@klomp.org>
+
+ * m4/ac_prog_antlr.m4: Check whether ANTLR_JAR is empty.
+
+2009-03-26 Andrew John Hughes <ahughes@redhat.com>
+
+ PR classpath/39408:
+ * tools/gnu/classpath/tools/javah/ClassWrapper.java:
+ (linkSupers()): Make package-private.
+ * tools/gnu/classpath/tools/javah/JniIncludePrinter.java:
+ (writeFields(ClassWrapper, JniPrintStream)):
+ Link in data from superclass before searching for fields.
+
+2009-03-20 Andrew John Hughes <ahughes@redhat.com>
+
+ * tools/gnu/classpath/tools/javah/ClassWrapper.java,
+ * tools/gnu/classpath/tools/javah/CniPrintStream.java,
+ * tools/gnu/classpath/tools/javah/CniStubPrinter.java,
+ * tools/gnu/classpath/tools/javah/GcjhMain.java,
+ * tools/gnu/classpath/tools/javah/JniIncludePrinter.java,
+ * tools/gnu/classpath/tools/javah/JniPrintStream.java,
+ * tools/gnu/classpath/tools/javah/JniStubPrinter.java,
+ * tools/gnu/classpath/tools/javah/Keywords.java,
+ * tools/gnu/classpath/tools/javah/Main.java,
+ * tools/gnu/classpath/tools/javah/MethodHelper.java,
+ * tools/gnu/classpath/tools/javah/PathOptionGroup.java:
+ Fix generic issues in gjavah.
+
+2009-03-17 Andrew John Hughes <ahughes@redhat.com>
+
+ * tools/gnu/classpath/tools/FileSystemClassLoader.java,
+ * tools/gnu/classpath/tools/doclets/xmldoclet/Driver.java,
+ * tools/gnu/classpath/tools/doclets/xmldoclet/Driver1_4.java,
+ * tools/gnu/classpath/tools/doclets/xmldoclet/HtmlRepairer.java,
+ * tools/gnu/classpath/tools/doclets/xmldoclet/TargetContext.java,
+ * tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/OutputFileInfo.java,
+ * tools/gnu/classpath/tools/gjdoc/ErrorReporter.java,
+ * tools/gnu/classpath/tools/gjdoc/TemporaryStore.java,
+ * tools/gnu/classpath/tools/gjdoc/WritableType.java,
+ * tools/gnu/classpath/tools/taglets/AuthorTaglet.java,
+ * tools/gnu/classpath/tools/taglets/CopyrightTaglet.java,
+ * tools/gnu/classpath/tools/taglets/DeprecatedTaglet.java,
+ * tools/gnu/classpath/tools/taglets/GenericTaglet.java,
+ * tools/gnu/classpath/tools/taglets/SinceTaglet.java,
+ * tools/gnu/classpath/tools/taglets/VersionTaglet.java:
+ Switch to UNIX line endings.
+
+2009-03-17 Andrew John Hughes <ahughes@redhat.com>
+
+ * tools/com/sun/tools/javadoc/Main.java,
+ * tools/gnu/classpath/tools/FileSystemClassLoader.java,
+ * tools/gnu/classpath/tools/IOToolkit.java,
+ * tools/gnu/classpath/tools/MalformedInputEvent.java,
+ * tools/gnu/classpath/tools/MalformedInputListener.java,
+ * tools/gnu/classpath/tools/NotifyingInputStreamReader.java,
+ * tools/gnu/classpath/tools/StringToolkit.java,
+ * tools/gnu/classpath/tools/doclets/AbstractDoclet.java,
+ * tools/gnu/classpath/tools/doclets/DocletConfigurationException.java,
+ * tools/gnu/classpath/tools/doclets/DocletOption.java,
+ * tools/gnu/classpath/tools/doclets/DocletOptionColonSeparated.java,
+ * tools/gnu/classpath/tools/doclets/DocletOptionFile.java,
+ * tools/gnu/classpath/tools/doclets/DocletOptionFlag.java,
+ * tools/gnu/classpath/tools/doclets/DocletOptionPackageWildcard.java,
+ * tools/gnu/classpath/tools/doclets/DocletOptionString.java,
+ * tools/gnu/classpath/tools/doclets/InlineTagRenderer.java,
+ * tools/gnu/classpath/tools/doclets/InvalidPackageWildcardException.java,
+ * tools/gnu/classpath/tools/doclets/PackageGroup.java,
+ * tools/gnu/classpath/tools/doclets/PackageMatcher.java,
+ * tools/gnu/classpath/tools/doclets/StandardTaglet.java,
+ * tools/gnu/classpath/tools/doclets/TagletPrinter.java,
+ * tools/gnu/classpath/tools/doclets/debugdoclet/DebugDoclet.java,
+ * tools/gnu/classpath/tools/doclets/htmldoclet/CssClass.java,
+ * tools/gnu/classpath/tools/doclets/htmldoclet/ExternalDocSet.java,
+ * tools/gnu/classpath/tools/doclets/htmldoclet/HtmlDoclet.java,
+ * tools/gnu/classpath/tools/doclets/htmldoclet/HtmlPage.java,
+ * tools/gnu/classpath/tools/doclets/htmldoclet/HtmlTagletContext.java,
+ * tools/gnu/classpath/tools/doclets/xmldoclet/Driver.java,
+ * tools/gnu/classpath/tools/doclets/xmldoclet/Driver1_4.java,
+ * tools/gnu/classpath/tools/doclets/xmldoclet/HtmlRepairer.java,
+ * tools/gnu/classpath/tools/doclets/xmldoclet/TargetContext.java,
+ * tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTranslet.java,
+ * tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTransletConfigurationException.java,
+ * tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTransletException.java,
+ * tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTransletOptions.java,
+ * tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/JarClassLoader.java,
+ * tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/OutputFileInfo.java,
+ * tools/gnu/classpath/tools/gjdoc/AbstractTagImpl.java,
+ * tools/gnu/classpath/tools/gjdoc/ArrayCharacterIterator.java,
+ * tools/gnu/classpath/tools/gjdoc/ClassDocImpl.java,
+ * tools/gnu/classpath/tools/gjdoc/ClassDocProxy.java,
+ * tools/gnu/classpath/tools/gjdoc/ClassDocReflectedImpl.java,
+ * tools/gnu/classpath/tools/gjdoc/ConstructorDocImpl.java,
+ * tools/gnu/classpath/tools/gjdoc/Debug.java,
+ * tools/gnu/classpath/tools/gjdoc/DirectoryTree.java,
+ * tools/gnu/classpath/tools/gjdoc/DocImpl.java,
+ * tools/gnu/classpath/tools/gjdoc/ErrorReporter.java,
+ * tools/gnu/classpath/tools/gjdoc/ExecutableMemberDocImpl.java,
+ * tools/gnu/classpath/tools/gjdoc/FieldDocImpl.java,
+ * tools/gnu/classpath/tools/gjdoc/GjdocPackageDoc.java,
+ * tools/gnu/classpath/tools/gjdoc/GjdocRootDoc.java,
+ * tools/gnu/classpath/tools/gjdoc/InheritDocTagImpl.java,
+ * tools/gnu/classpath/tools/gjdoc/JavadocWrapper.java,
+ * tools/gnu/classpath/tools/gjdoc/LinkTagImpl.java,
+ * tools/gnu/classpath/tools/gjdoc/Main.java,
+ * tools/gnu/classpath/tools/gjdoc/MemberDocImpl.java,
+ * tools/gnu/classpath/tools/gjdoc/MethodDocImpl.java,
+ * tools/gnu/classpath/tools/gjdoc/PackageDocImpl.java,
+ * tools/gnu/classpath/tools/gjdoc/ParamTagImpl.java,
+ * tools/gnu/classpath/tools/gjdoc/ParameterImpl.java,
+ * tools/gnu/classpath/tools/gjdoc/ParseException.java,
+ * tools/gnu/classpath/tools/gjdoc/Parser.java,
+ * tools/gnu/classpath/tools/gjdoc/ProgramElementDocImpl.java,
+ * tools/gnu/classpath/tools/gjdoc/RootDocImpl.java,
+ * tools/gnu/classpath/tools/gjdoc/SeeTagImpl.java,
+ * tools/gnu/classpath/tools/gjdoc/SerialFieldTagImpl.java,
+ * tools/gnu/classpath/tools/gjdoc/SourcePositionImpl.java,
+ * tools/gnu/classpath/tools/gjdoc/TagContainer.java,
+ * tools/gnu/classpath/tools/gjdoc/TagImpl.java,
+ * tools/gnu/classpath/tools/gjdoc/TemporaryStore.java,
+ * tools/gnu/classpath/tools/gjdoc/TextTagImpl.java,
+ * tools/gnu/classpath/tools/gjdoc/ThrowsTagImpl.java,
+ * tools/gnu/classpath/tools/gjdoc/Timer.java,
+ * tools/gnu/classpath/tools/gjdoc/TimerDoclet.java,
+ * tools/gnu/classpath/tools/gjdoc/TypeImpl.java,
+ * tools/gnu/classpath/tools/gjdoc/TypeVariableImpl.java,
+ * tools/gnu/classpath/tools/gjdoc/ValueTagImpl.java,
+ * tools/gnu/classpath/tools/gjdoc/WritableType.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/AdditionExpression.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/AndExpression.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/BinaryBitwiseExpression.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/BinaryComputationExpression.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/BinaryEqualityExpression.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/BinaryExpression.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/BinaryLogicalExpression.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/BinaryRelationExpression.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/BinaryShiftExpression.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/BitShiftRightExpression.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/CircularExpressionException.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/ConditionalExpression.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/ConstantBoolean.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/ConstantByte.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/ConstantChar.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/ConstantDouble.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/ConstantExpression.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/ConstantFloat.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/ConstantInteger.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/ConstantLong.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/ConstantNull.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/ConstantShort.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/ConstantString.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/Context.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/DivisionExpression.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/EqualExpression.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/Evaluator.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/EvaluatorEnvironment.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/ExclusiveOrExpression.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/Expression.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/GreaterThanExpression.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/GreaterThanOrEqualExpression.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/IdentifierExpression.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/IllegalExpressionException.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/InclusiveOrExpression.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/LessThanExpression.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/LessThanOrEqualExpression.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/LogicalAndExpression.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/LogicalNotExpression.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/LogicalOrExpression.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/ModuloExpression.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/MultiplicationExpression.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/NegateExpression.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/NotEqualExpression.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/NotExpression.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/ShiftLeftExpression.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/ShiftRightExpression.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/SubtractionExpression.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/Type.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/TypeCastExpression.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/UnaryExpression.java,
+ * tools/gnu/classpath/tools/gjdoc/expr/UnknownIdentifierException.java,
+ * tools/gnu/classpath/tools/java2xhtml/Java2xhtml.java,
+ * tools/gnu/classpath/tools/rmic/ClassRmicCompiler.java,
+ * tools/gnu/classpath/tools/rmic/CompilationError.java,
+ * tools/gnu/classpath/tools/rmic/Generator.java,
+ * tools/gnu/classpath/tools/rmic/GiopIo.java,
+ * tools/gnu/classpath/tools/rmic/HashFinder.java,
+ * tools/gnu/classpath/tools/rmic/Main.java,
+ * tools/gnu/classpath/tools/rmic/MethodGenerator.java,
+ * tools/gnu/classpath/tools/rmic/RMICException.java,
+ * tools/gnu/classpath/tools/rmic/RmiMethodGenerator.java,
+ * tools/gnu/classpath/tools/rmic/RmicBackend.java,
+ * tools/gnu/classpath/tools/rmic/SourceRmicCompiler.java,
+ * tools/gnu/classpath/tools/rmic/Variables.java,
+ * tools/gnu/classpath/tools/rmic/WrapUnWrapper.java,
+ * tools/gnu/classpath/tools/serialver/SerialVer.java,
+ * tools/gnu/classpath/tools/taglets/AuthorTaglet.java,
+ * tools/gnu/classpath/tools/taglets/CodeTaglet.java,
+ * tools/gnu/classpath/tools/taglets/CopyrightTaglet.java,
+ * tools/gnu/classpath/tools/taglets/DeprecatedTaglet.java,
+ * tools/gnu/classpath/tools/taglets/GenericTaglet.java,
+ * tools/gnu/classpath/tools/taglets/GnuExtendedTaglet.java,
+ * tools/gnu/classpath/tools/taglets/SinceTaglet.java,
+ * tools/gnu/classpath/tools/taglets/TagletContext.java,
+ * tools/gnu/classpath/tools/taglets/ValueTaglet.java,
+ * tools/gnu/classpath/tools/taglets/VersionTaglet.java:
+ Fix license headers to GPLv2+Classpath exception.
+
+2009-03-09 Andrew John Hughes <ahughes@redhat.com>
+
+ * gnu/javax/swing/text/html/css/Selector.java:
+ Use CPStringBuilder. Use typed list of maps
+ rather than an array for type safety.
+ * javax/swing/text/html/HTMLEditorKit.java,
+ * javax/swing/text/html/HTMLWriter.java:
+ Add generic typing where appropriate.
+ * javax/swing/text/html/ImageView.java:
+ Remove unused AttributeSet variables.
+ * javax/swing/text/html/MinimalHTMLWriter.java:
+ Switch to an ArrayDeque to avoid unnecessary
+ internal synchronisation on a private variable.
+ Add generic typing.
+ * javax/swing/text/html/MultiAttributeSet.java:
+ Add generic typing.
+ * javax/swing/text/html/MultiStyle.java:
+ Add generic typing, make class package-private
+ as not part of the standard classes.
+ * javax/swing/text/html/ObjectView.java,
+ * javax/swing/text/html/StyleSheet.java:
+ Add generic typing.
+ * javax/swing/text/html/TableView.java:
+ Remove unused variable.
+ * javax/swing/tree/DefaultMutableTreeNode.java:
+ Add generic typing, mute warnings where necessary.
+ * javax/swing/tree/FixedHeightLayoutCache.java:
+ Add generic typing.
+ * javax/swing/tree/TreeNode.java:
+ Mute warnings where necessary.
+ * javax/swing/tree/VariableHeightLayoutCache.java,
+ * javax/swing/undo/StateEdit.java,
+ * javax/swing/undo/UndoableEditSupport.java,
+ * org/ietf/jgss/GSSManager.java:
+ Add generic typing.
+
+2009-02-14 Andrew John Hughes <ahughes@redhat.com>
+
+ * org/omg/CORBA/LocalObject.java,
+ * org/omg/CORBA/portable/Delegate.java,
+ * org/omg/CORBA/portable/InputStream.java,
+ * org/omg/CORBA/portable/ObjectImpl.java,
+ * org/omg/CORBA_2_3/portable/InputStream.java,
+ * org/omg/CORBA_2_3/portable/OutputStream.java,
+ * org/omg/DynamicAny/_DynAnyFactoryStub.java,
+ * org/omg/DynamicAny/_DynAnyStub.java,
+ * org/omg/DynamicAny/_DynArrayStub.java,
+ * org/omg/DynamicAny/_DynEnumStub.java,
+ * org/omg/DynamicAny/_DynFixedStub.java,
+ * org/omg/DynamicAny/_DynSequenceStub.java,
+ * org/omg/DynamicAny/_DynStructStub.java,
+ * org/omg/DynamicAny/_DynUnionStub.java,
+ * org/omg/DynamicAny/_DynValueStub.java,
+ * org/omg/PortableServer/_ServantActivatorStub.java,
+ * org/omg/PortableServer/_ServantLocatorStub.java:
+ Turn off warnings where Class is used; forced
+ to use raw type for API compatibility.
+
+2009-02-06 Andrew John Hughes <ahughes@redhat.com>
+
+ * NEWS:
+ Add stub for 0.99.
+ * configure.ac:
+ Bump to 0.99.
+ * doc/www.gnu.org/announce/20090205.wml,
+ * doc/www.gnu.org/downloads/downloads.wml,
+ * doc/www.gnu.org/newsitems.txt:
+ Update website.
+
2009-03-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* configure: Regenerate.
@@ -223,7 +934,7 @@
2009-02-05 Andrew John Hughes <ahughes@redhat.com>
* NEWS: Add VM updates.
-
+
2009-02-05 Andrew John Hughes <ahughes@redhat.com>
* NEWS: Updated.
diff --git a/libjava/classpath/INSTALL b/libjava/classpath/INSTALL
index 8b82ade08e8..7d1c323beae 100644
--- a/libjava/classpath/INSTALL
+++ b/libjava/classpath/INSTALL
@@ -2,10 +2,12 @@ Installation Instructions
*************************
Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005,
-2006, 2007, 2008 Free Software Foundation, Inc.
+2006, 2007, 2008, 2009 Free Software Foundation, Inc.
- This file is free documentation; the Free Software Foundation gives
-unlimited permission to copy, distribute and modify it.
+ Copying and distribution of this file, with or without modification,
+are permitted in any medium without royalty provided the copyright
+notice and this notice are preserved. This file is offered as-is,
+without warranty of any kind.
Basic Installation
==================
@@ -13,7 +15,11 @@ Basic Installation
Briefly, the shell commands `./configure; make; make install' should
configure, build, and install this package. The following
more-detailed instructions are generic; see the `README' file for
-instructions specific to this package.
+instructions specific to this package. Some packages provide this
+`INSTALL' file but do not implement all of the features documented
+below. The lack of an optional feature in a given package is not
+necessarily a bug. More recommendations for GNU packages can be found
+in *note Makefile Conventions: (standards)Makefile Conventions.
The `configure' shell script attempts to guess correct values for
various system-dependent variables used during compilation. It uses
@@ -42,7 +48,7 @@ may remove or edit it.
you want to change it or regenerate `configure' using a newer version
of `autoconf'.
-The simplest way to compile this package is:
+ The simplest way to compile this package is:
1. `cd' to the directory containing the package's source code and type
`./configure' to configure the package for your system.
@@ -53,12 +59,22 @@ The simplest way to compile this package is:
2. Type `make' to compile the package.
3. Optionally, type `make check' to run any self-tests that come with
- the package.
+ the package, generally using the just-built uninstalled binaries.
4. Type `make install' to install the programs and any data files and
- documentation.
-
- 5. You can remove the program binaries and object files from the
+ documentation. When installing into a prefix owned by root, it is
+ recommended that the package be configured and built as a regular
+ user, and only the `make install' phase executed with root
+ privileges.
+
+ 5. Optionally, type `make installcheck' to repeat any self-tests, but
+ this time using the binaries in their final installed location.
+ This target does not install anything. Running this target as a
+ regular user, particularly if the prior `make install' required
+ root privileges, verifies that the installation completed
+ correctly.
+
+ 6. You can remove the program binaries and object files from the
source code directory by typing `make clean'. To also remove the
files that `configure' created (so you can compile the package for
a different kind of computer), type `make distclean'. There is
@@ -67,8 +83,15 @@ The simplest way to compile this package is:
all sorts of other programs in order to regenerate files that came
with the distribution.
- 6. Often, you can also type `make uninstall' to remove the installed
- files again.
+ 7. Often, you can also type `make uninstall' to remove the installed
+ files again. In practice, not all packages have tested that
+ uninstallation works correctly, even though it is required by the
+ GNU Coding Standards.
+
+ 8. Some packages, particularly those that use Automake, provide `make
+ distcheck', which can by used by developers to test that all other
+ targets like `make install' and `make uninstall' work correctly.
+ This target is generally not run by end users.
Compilers and Options
=====================
@@ -93,7 +116,8 @@ same time, by placing the object files for each architecture in their
own directory. To do this, you can use GNU `make'. `cd' to the
directory where you want the object files and executables to go and run
the `configure' script. `configure' automatically checks for the
-source code in the directory that `configure' is in and in `..'.
+source code in the directory that `configure' is in and in `..'. This
+is known as a "VPATH" build.
With a non-GNU `make', it is safer to compile the package for one
architecture at a time in the source code directory. After you have
@@ -120,7 +144,8 @@ Installation Names
By default, `make install' installs the package's commands under
`/usr/local/bin', include files under `/usr/local/include', etc. You
can specify an installation prefix other than `/usr/local' by giving
-`configure' the option `--prefix=PREFIX'.
+`configure' the option `--prefix=PREFIX', where PREFIX must be an
+absolute file name.
You can specify separate installation prefixes for
architecture-specific files and architecture-independent files. If you
@@ -131,15 +156,46 @@ Documentation and other data files still use the regular prefix.
In addition, if you use an unusual directory layout you can give
options like `--bindir=DIR' to specify different values for particular
kinds of files. Run `configure --help' for a list of the directories
-you can set and what kinds of files go in them.
+you can set and what kinds of files go in them. In general, the
+default for these options is expressed in terms of `${prefix}', so that
+specifying just `--prefix' will affect all of the other directory
+specifications that were not explicitly provided.
+
+ The most portable way to affect installation locations is to pass the
+correct locations to `configure'; however, many packages provide one or
+both of the following shortcuts of passing variable assignments to the
+`make install' command line to change installation locations without
+having to reconfigure or recompile.
+
+ The first method involves providing an override variable for each
+affected directory. For example, `make install
+prefix=/alternate/directory' will choose an alternate location for all
+directory configuration variables that were expressed in terms of
+`${prefix}'. Any directories that were specified during `configure',
+but not in terms of `${prefix}', must each be overridden at install
+time for the entire installation to be relocated. The approach of
+makefile variable overrides for each directory variable is required by
+the GNU Coding Standards, and ideally causes no recompilation.
+However, some platforms have known limitations with the semantics of
+shared libraries that end up requiring recompilation when using this
+method, particularly noticeable in packages that use GNU Libtool.
+
+ The second method involves providing the `DESTDIR' variable. For
+example, `make install DESTDIR=/alternate/directory' will prepend
+`/alternate/directory' before all installation names. The approach of
+`DESTDIR' overrides is not required by the GNU Coding Standards, and
+does not work on platforms that have drive letters. On the other hand,
+it does better at avoiding recompilation issues, and works well even
+when some directory options were not specified in terms of `${prefix}'
+at `configure' time.
+
+Optional Features
+=================
If the package supports it, you can cause programs to be installed
with an extra prefix or suffix on their names by giving `configure' the
option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
-Optional Features
-=================
-
Some packages pay attention to `--enable-FEATURE' options to
`configure', where FEATURE indicates an optional part of the package.
They may also pay attention to `--with-PACKAGE' options, where PACKAGE
@@ -152,6 +208,13 @@ find the X include and library files automatically, but if it doesn't,
you can use the `configure' options `--x-includes=DIR' and
`--x-libraries=DIR' to specify their locations.
+ Some packages offer the ability to configure how verbose the
+execution of `make' will be. For these packages, running `./configure
+--enable-silent-rules' sets the default to minimal output, which can be
+overridden with `make V=1'; while running `./configure
+--disable-silent-rules' sets the default to verbose, which can be
+overridden with `make V=0'.
+
Particular systems
==================
@@ -159,7 +222,7 @@ Particular systems
CC is not installed, it is recommended to use the following options in
order to use an ANSI C compiler:
- ./configure CC="cc -Ae"
+ ./configure CC="cc -Ae -D_XOPEN_SOURCE=500"
and if that doesn't work, install pre-built binaries of GCC for HP-UX.
@@ -174,6 +237,16 @@ and if that doesn't work, try
./configure CC="cc -nodtk"
+ On Solaris, don't put `/usr/ucb' early in your `PATH'. This
+directory contains several dysfunctional programs; working variants of
+these programs are available in `/usr/bin'. So, if you need `/usr/ucb'
+in your `PATH', put it _after_ `/usr/bin'.
+
+ On Haiku, software installed for all users goes in `/boot/common',
+not `/usr/local'. It is recommended to use the following options:
+
+ ./configure --prefix=/boot/common
+
Specifying the System Type
==========================
@@ -189,7 +262,8 @@ type, such as `sun4', or a canonical name which has the form:
where SYSTEM can have one of these forms:
- OS KERNEL-OS
+ OS
+ KERNEL-OS
See the file `config.sub' for the possible values of each field. If
`config.sub' isn't included in this package, then this package doesn't
@@ -277,7 +351,7 @@ operates.
`configure' can determine that directory automatically.
`--prefix=DIR'
- Use DIR as the installation prefix. *Note Installation Names::
+ Use DIR as the installation prefix. *note Installation Names::
for more details, including other options available for fine-tuning
the installation locations.
diff --git a/libjava/classpath/Makefile.in b/libjava/classpath/Makefile.in
index f9d4b8b7563..0e8aee5b8d0 100644
--- a/libjava/classpath/Makefile.in
+++ b/libjava/classpath/Makefile.in
@@ -51,12 +51,15 @@ DIST_COMMON = README $(am__configure_deps) $(srcdir)/../../compile \
../../config.rpath ../../config.sub ../../depcomp \
../../install-sh ../../ltmain.sh ../../missing \
../../mkinstalldirs ../../ylwrap AUTHORS COPYING ChangeLog \
- INSTALL NEWS TODO compile config.guess config.sub depcomp \
- install-sh ltcf-c.sh ltcf-cxx.sh ltcf-gcj.sh ltconfig \
+ INSTALL NEWS TODO compile config.guess config.rpath config.sub \
+ depcomp install-sh ltcf-c.sh ltcf-cxx.sh ltcf-gcj.sh ltconfig \
ltmain.sh missing mkinstalldirs
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/../../config/lead-dot.m4 \
+ $(top_srcdir)/../../config/lib-ld.m4 \
+ $(top_srcdir)/../../config/lib-link.m4 \
+ $(top_srcdir)/../../config/lib-prefix.m4 \
$(top_srcdir)/../../config/multi.m4 \
$(top_srcdir)/../../config/no-executables.m4 \
$(top_srcdir)/../../config/override.m4 \
@@ -75,9 +78,7 @@ am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_func_which_gethostbyname_r.m4 \
$(top_srcdir)/m4/gcc_attribute.m4 $(top_srcdir)/m4/iconv.m4 \
- $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
- $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
diff --git a/libjava/classpath/NEWS b/libjava/classpath/NEWS
index 4ae10d710d9..095f9700b8d 100644
--- a/libjava/classpath/NEWS
+++ b/libjava/classpath/NEWS
@@ -1,3 +1,5 @@
+New in release 0.99 (XXX XX, XXXX)
+
New in release 0.98 (Feb 05, 2009)
* Native support for BigInteger is now provided using the GMP
diff --git a/libjava/classpath/aclocal.m4 b/libjava/classpath/aclocal.m4
index c6fce4da260..e84d8d8e1a9 100644
--- a/libjava/classpath/aclocal.m4
+++ b/libjava/classpath/aclocal.m4
@@ -1062,6 +1062,9 @@ AC_SUBST([am__untar])
m4_include([../../config/depstand.m4])
m4_include([../../config/lead-dot.m4])
+m4_include([../../config/lib-ld.m4])
+m4_include([../../config/lib-link.m4])
+m4_include([../../config/lib-prefix.m4])
m4_include([../../config/multi.m4])
m4_include([../../config/no-executables.m4])
m4_include([../../config/override.m4])
@@ -1082,7 +1085,4 @@ m4_include([m4/ax_create_stdint_h.m4])
m4_include([m4/ax_func_which_gethostbyname_r.m4])
m4_include([m4/gcc_attribute.m4])
m4_include([m4/iconv.m4])
-m4_include([m4/lib-ld.m4])
-m4_include([m4/lib-link.m4])
-m4_include([m4/lib-prefix.m4])
m4_include([m4/pkg.m4])
diff --git a/libjava/classpath/autogen.sh b/libjava/classpath/autogen.sh
index 3e46cff1d9c..adb8f0c9408 100755
--- a/libjava/classpath/autogen.sh
+++ b/libjava/classpath/autogen.sh
@@ -18,7 +18,7 @@ have_libtool=false
if ${LIBTOOLIZE} --version < /dev/null > /dev/null 2>&1 ; then
libtool_version=`${LIBTOOLIZE} --version | sed 's/^.*[^0-9.]\([0-9]\{1,\}\.[0-9.]\{1,\}\).*/\1/'`
case $libtool_version in
- 1.5*)
+ 1.5*|2.*)
have_libtool=true
;;
esac
diff --git a/libjava/classpath/config.rpath b/libjava/classpath/config.rpath
new file mode 100755
index 00000000000..17298f2348b
--- /dev/null
+++ b/libjava/classpath/config.rpath
@@ -0,0 +1,672 @@
+#! /bin/sh
+# Output a system dependent set of variables, describing how to set the
+# run time search path of shared libraries in an executable.
+#
+# Copyright 1996-2010 Free Software Foundation, Inc.
+# Taken from GNU libtool, 2001
+# Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
+#
+# This file is free software; the Free Software Foundation gives
+# unlimited permission to copy and/or distribute it, with or without
+# modifications, as long as this notice is preserved.
+#
+# The first argument passed to this file is the canonical host specification,
+# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
+# or
+# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
+# The environment variables CC, GCC, LDFLAGS, LD, with_gnu_ld
+# should be set by the caller.
+#
+# The set of defined variables is at the end of this script.
+
+# Known limitations:
+# - On IRIX 6.5 with CC="cc", the run time search patch must not be longer
+# than 256 bytes, otherwise the compiler driver will dump core. The only
+# known workaround is to choose shorter directory names for the build
+# directory and/or the installation directory.
+
+# All known linkers require a `.a' archive for static linking (except MSVC,
+# which needs '.lib').
+libext=a
+shrext=.so
+
+host="$1"
+host_cpu=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
+host_vendor=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
+host_os=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
+
+# Code taken from libtool.m4's _LT_CC_BASENAME.
+
+for cc_temp in $CC""; do
+ case $cc_temp in
+ compile | *[\\/]compile | ccache | *[\\/]ccache ) ;;
+ distcc | *[\\/]distcc | purify | *[\\/]purify ) ;;
+ \-*) ;;
+ *) break;;
+ esac
+done
+cc_basename=`echo "$cc_temp" | sed -e 's%^.*/%%'`
+
+# Code taken from libtool.m4's _LT_COMPILER_PIC.
+
+wl=
+if test "$GCC" = yes; then
+ wl='-Wl,'
+else
+ case "$host_os" in
+ aix*)
+ wl='-Wl,'
+ ;;
+ darwin*)
+ case $cc_basename in
+ xlc*)
+ wl='-Wl,'
+ ;;
+ esac
+ ;;
+ mingw* | cygwin* | pw32* | os2* | cegcc*)
+ ;;
+ hpux9* | hpux10* | hpux11*)
+ wl='-Wl,'
+ ;;
+ irix5* | irix6* | nonstopux*)
+ wl='-Wl,'
+ ;;
+ newsos6)
+ ;;
+ linux* | k*bsd*-gnu)
+ case $cc_basename in
+ ecc*)
+ wl='-Wl,'
+ ;;
+ icc* | ifort*)
+ wl='-Wl,'
+ ;;
+ lf95*)
+ wl='-Wl,'
+ ;;
+ pgcc | pgf77 | pgf90)
+ wl='-Wl,'
+ ;;
+ ccc*)
+ wl='-Wl,'
+ ;;
+ como)
+ wl='-lopt='
+ ;;
+ *)
+ case `$CC -V 2>&1 | sed 5q` in
+ *Sun\ C*)
+ wl='-Wl,'
+ ;;
+ esac
+ ;;
+ esac
+ ;;
+ osf3* | osf4* | osf5*)
+ wl='-Wl,'
+ ;;
+ rdos*)
+ ;;
+ solaris*)
+ wl='-Wl,'
+ ;;
+ sunos4*)
+ wl='-Qoption ld '
+ ;;
+ sysv4 | sysv4.2uw2* | sysv4.3*)
+ wl='-Wl,'
+ ;;
+ sysv4*MP*)
+ ;;
+ sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
+ wl='-Wl,'
+ ;;
+ unicos*)
+ wl='-Wl,'
+ ;;
+ uts4*)
+ ;;
+ esac
+fi
+
+# Code taken from libtool.m4's _LT_LINKER_SHLIBS.
+
+hardcode_libdir_flag_spec=
+hardcode_libdir_separator=
+hardcode_direct=no
+hardcode_minus_L=no
+
+case "$host_os" in
+ cygwin* | mingw* | pw32* | cegcc*)
+ # FIXME: the MSVC++ port hasn't been tested in a loooong time
+ # When not using gcc, we currently assume that we are using
+ # Microsoft Visual C++.
+ if test "$GCC" != yes; then
+ with_gnu_ld=no
+ fi
+ ;;
+ interix*)
+ # we just hope/assume this is gcc and not c89 (= MSVC++)
+ with_gnu_ld=yes
+ ;;
+ openbsd*)
+ with_gnu_ld=no
+ ;;
+esac
+
+ld_shlibs=yes
+if test "$with_gnu_ld" = yes; then
+ # Set some defaults for GNU ld with shared library support. These
+ # are reset later if shared libraries are not supported. Putting them
+ # here allows them to be overridden if necessary.
+ # Unlike libtool, we use -rpath here, not --rpath, since the documented
+ # option of GNU ld is called -rpath, not --rpath.
+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
+ case "$host_os" in
+ aix[3-9]*)
+ # On AIX/PPC, the GNU linker is very broken
+ if test "$host_cpu" != ia64; then
+ ld_shlibs=no
+ fi
+ ;;
+ amigaos*)
+ hardcode_libdir_flag_spec='-L$libdir'
+ hardcode_minus_L=yes
+ # Samuel A. Falvo II <kc5tja@dolphin.openprojects.net> reports
+ # that the semantics of dynamic libraries on AmigaOS, at least up
+ # to version 4, is to share data among multiple programs linked
+ # with the same dynamic library. Since this doesn't match the
+ # behavior of shared libraries on other platforms, we cannot use
+ # them.
+ ld_shlibs=no
+ ;;
+ beos*)
+ if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
+ :
+ else
+ ld_shlibs=no
+ fi
+ ;;
+ cygwin* | mingw* | pw32* | cegcc*)
+ # hardcode_libdir_flag_spec is actually meaningless, as there is
+ # no search path for DLLs.
+ hardcode_libdir_flag_spec='-L$libdir'
+ if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then
+ :
+ else
+ ld_shlibs=no
+ fi
+ ;;
+ interix[3-9]*)
+ hardcode_direct=no
+ hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
+ ;;
+ gnu* | linux* | k*bsd*-gnu)
+ if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
+ :
+ else
+ ld_shlibs=no
+ fi
+ ;;
+ netbsd*)
+ ;;
+ solaris*)
+ if $LD -v 2>&1 | grep 'BFD 2\.8' > /dev/null; then
+ ld_shlibs=no
+ elif $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
+ :
+ else
+ ld_shlibs=no
+ fi
+ ;;
+ sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
+ case `$LD -v 2>&1` in
+ *\ [01].* | *\ 2.[0-9].* | *\ 2.1[0-5].*)
+ ld_shlibs=no
+ ;;
+ *)
+ if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
+ hardcode_libdir_flag_spec='`test -z "$SCOABSPATH" && echo ${wl}-rpath,$libdir`'
+ else
+ ld_shlibs=no
+ fi
+ ;;
+ esac
+ ;;
+ sunos4*)
+ hardcode_direct=yes
+ ;;
+ *)
+ if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
+ :
+ else
+ ld_shlibs=no
+ fi
+ ;;
+ esac
+ if test "$ld_shlibs" = no; then
+ hardcode_libdir_flag_spec=
+ fi
+else
+ case "$host_os" in
+ aix3*)
+ # Note: this linker hardcodes the directories in LIBPATH if there
+ # are no directories specified by -L.
+ hardcode_minus_L=yes
+ if test "$GCC" = yes; then
+ # Neither direct hardcoding nor static linking is supported with a
+ # broken collect2.
+ hardcode_direct=unsupported
+ fi
+ ;;
+ aix[4-9]*)
+ if test "$host_cpu" = ia64; then
+ # On IA64, the linker does run time linking by default, so we don't
+ # have to do anything special.
+ aix_use_runtimelinking=no
+ else
+ aix_use_runtimelinking=no
+ # Test if we are trying to use run time linking or normal
+ # AIX style linking. If -brtl is somewhere in LDFLAGS, we
+ # need to do runtime linking.
+ case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*)
+ for ld_flag in $LDFLAGS; do
+ if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
+ aix_use_runtimelinking=yes
+ break
+ fi
+ done
+ ;;
+ esac
+ fi
+ hardcode_direct=yes
+ hardcode_libdir_separator=':'
+ if test "$GCC" = yes; then
+ case $host_os in aix4.[012]|aix4.[012].*)
+ collect2name=`${CC} -print-prog-name=collect2`
+ if test -f "$collect2name" && \
+ strings "$collect2name" | grep resolve_lib_name >/dev/null
+ then
+ # We have reworked collect2
+ :
+ else
+ # We have old collect2
+ hardcode_direct=unsupported
+ hardcode_minus_L=yes
+ hardcode_libdir_flag_spec='-L$libdir'
+ hardcode_libdir_separator=
+ fi
+ ;;
+ esac
+ fi
+ # Begin _LT_AC_SYS_LIBPATH_AIX.
+ echo 'int main () { return 0; }' > conftest.c
+ ${CC} ${LDFLAGS} conftest.c -o conftest
+ aix_libpath=`dump -H conftest 2>/dev/null | sed -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; }
+}'`
+ if test -z "$aix_libpath"; then
+ aix_libpath=`dump -HX64 conftest 2>/dev/null | sed -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; }
+}'`
+ fi
+ if test -z "$aix_libpath"; then
+ aix_libpath="/usr/lib:/lib"
+ fi
+ rm -f conftest.c conftest
+ # End _LT_AC_SYS_LIBPATH_AIX.
+ if test "$aix_use_runtimelinking" = yes; then
+ hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
+ else
+ if test "$host_cpu" = ia64; then
+ hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib'
+ else
+ hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
+ fi
+ fi
+ ;;
+ amigaos*)
+ hardcode_libdir_flag_spec='-L$libdir'
+ hardcode_minus_L=yes
+ # see comment about different semantics on the GNU ld section
+ ld_shlibs=no
+ ;;
+ bsdi[45]*)
+ ;;
+ cygwin* | mingw* | pw32* | cegcc*)
+ # When not using gcc, we currently assume that we are using
+ # Microsoft Visual C++.
+ # hardcode_libdir_flag_spec is actually meaningless, as there is
+ # no search path for DLLs.
+ hardcode_libdir_flag_spec=' '
+ libext=lib
+ ;;
+ darwin* | rhapsody*)
+ hardcode_direct=no
+ if test "$GCC" = yes ; then
+ :
+ else
+ case $cc_basename in
+ xlc*)
+ ;;
+ *)
+ ld_shlibs=no
+ ;;
+ esac
+ fi
+ ;;
+ dgux*)
+ hardcode_libdir_flag_spec='-L$libdir'
+ ;;
+ freebsd1*)
+ ld_shlibs=no
+ ;;
+ freebsd2.2*)
+ hardcode_libdir_flag_spec='-R$libdir'
+ hardcode_direct=yes
+ ;;
+ freebsd2*)
+ hardcode_direct=yes
+ hardcode_minus_L=yes
+ ;;
+ freebsd* | dragonfly*)
+ hardcode_libdir_flag_spec='-R$libdir'
+ hardcode_direct=yes
+ ;;
+ hpux9*)
+ hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
+ hardcode_libdir_separator=:
+ hardcode_direct=yes
+ # hardcode_minus_L: Not really in the search PATH,
+ # but as the default location of the library.
+ hardcode_minus_L=yes
+ ;;
+ hpux10*)
+ if test "$with_gnu_ld" = no; then
+ hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
+ hardcode_libdir_separator=:
+ hardcode_direct=yes
+ # hardcode_minus_L: Not really in the search PATH,
+ # but as the default location of the library.
+ hardcode_minus_L=yes
+ fi
+ ;;
+ hpux11*)
+ if test "$with_gnu_ld" = no; then
+ hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
+ hardcode_libdir_separator=:
+ case $host_cpu in
+ hppa*64*|ia64*)
+ hardcode_direct=no
+ ;;
+ *)
+ hardcode_direct=yes
+ # hardcode_minus_L: Not really in the search PATH,
+ # but as the default location of the library.
+ hardcode_minus_L=yes
+ ;;
+ esac
+ fi
+ ;;
+ irix5* | irix6* | nonstopux*)
+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
+ hardcode_libdir_separator=:
+ ;;
+ netbsd*)
+ hardcode_libdir_flag_spec='-R$libdir'
+ hardcode_direct=yes
+ ;;
+ newsos6)
+ hardcode_direct=yes
+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
+ hardcode_libdir_separator=:
+ ;;
+ openbsd*)
+ if test -f /usr/libexec/ld.so; then
+ hardcode_direct=yes
+ if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+ hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
+ else
+ case "$host_os" in
+ openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*)
+ hardcode_libdir_flag_spec='-R$libdir'
+ ;;
+ *)
+ hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
+ ;;
+ esac
+ fi
+ else
+ ld_shlibs=no
+ fi
+ ;;
+ os2*)
+ hardcode_libdir_flag_spec='-L$libdir'
+ hardcode_minus_L=yes
+ ;;
+ osf3*)
+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
+ hardcode_libdir_separator=:
+ ;;
+ osf4* | osf5*)
+ if test "$GCC" = yes; then
+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
+ else
+ # Both cc and cxx compiler support -rpath directly
+ hardcode_libdir_flag_spec='-rpath $libdir'
+ fi
+ hardcode_libdir_separator=:
+ ;;
+ solaris*)
+ hardcode_libdir_flag_spec='-R$libdir'
+ ;;
+ sunos4*)
+ hardcode_libdir_flag_spec='-L$libdir'
+ hardcode_direct=yes
+ hardcode_minus_L=yes
+ ;;
+ sysv4)
+ case $host_vendor in
+ sni)
+ hardcode_direct=yes # is this really true???
+ ;;
+ siemens)
+ hardcode_direct=no
+ ;;
+ motorola)
+ hardcode_direct=no #Motorola manual says yes, but my tests say they lie
+ ;;
+ esac
+ ;;
+ sysv4.3*)
+ ;;
+ sysv4*MP*)
+ if test -d /usr/nec; then
+ ld_shlibs=yes
+ fi
+ ;;
+ sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*)
+ ;;
+ sysv5* | sco3.2v5* | sco5v6*)
+ hardcode_libdir_flag_spec='`test -z "$SCOABSPATH" && echo ${wl}-R,$libdir`'
+ hardcode_libdir_separator=':'
+ ;;
+ uts4*)
+ hardcode_libdir_flag_spec='-L$libdir'
+ ;;
+ *)
+ ld_shlibs=no
+ ;;
+ esac
+fi
+
+# Check dynamic linker characteristics
+# Code taken from libtool.m4's _LT_SYS_DYNAMIC_LINKER.
+# Unlike libtool.m4, here we don't care about _all_ names of the library, but
+# only about the one the linker finds when passed -lNAME. This is the last
+# element of library_names_spec in libtool.m4, or possibly two of them if the
+# linker has special search rules.
+library_names_spec= # the last element of library_names_spec in libtool.m4
+libname_spec='lib$name'
+case "$host_os" in
+ aix3*)
+ library_names_spec='$libname.a'
+ ;;
+ aix[4-9]*)
+ library_names_spec='$libname$shrext'
+ ;;
+ amigaos*)
+ library_names_spec='$libname.a'
+ ;;
+ beos*)
+ library_names_spec='$libname$shrext'
+ ;;
+ bsdi[45]*)
+ library_names_spec='$libname$shrext'
+ ;;
+ cygwin* | mingw* | pw32* | cegcc*)
+ shrext=.dll
+ library_names_spec='$libname.dll.a $libname.lib'
+ ;;
+ darwin* | rhapsody*)
+ shrext=.dylib
+ library_names_spec='$libname$shrext'
+ ;;
+ dgux*)
+ library_names_spec='$libname$shrext'
+ ;;
+ freebsd1*)
+ ;;
+ freebsd* | dragonfly*)
+ case "$host_os" in
+ freebsd[123]*)
+ library_names_spec='$libname$shrext$versuffix' ;;
+ *)
+ library_names_spec='$libname$shrext' ;;
+ esac
+ ;;
+ gnu*)
+ library_names_spec='$libname$shrext'
+ ;;
+ hpux9* | hpux10* | hpux11*)
+ case $host_cpu in
+ ia64*)
+ shrext=.so
+ ;;
+ hppa*64*)
+ shrext=.sl
+ ;;
+ *)
+ shrext=.sl
+ ;;
+ esac
+ library_names_spec='$libname$shrext'
+ ;;
+ interix[3-9]*)
+ library_names_spec='$libname$shrext'
+ ;;
+ irix5* | irix6* | nonstopux*)
+ library_names_spec='$libname$shrext'
+ case "$host_os" in
+ irix5* | nonstopux*)
+ libsuff= shlibsuff=
+ ;;
+ *)
+ case $LD in
+ *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ") libsuff= shlibsuff= ;;
+ *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ") libsuff=32 shlibsuff=N32 ;;
+ *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ") libsuff=64 shlibsuff=64 ;;
+ *) libsuff= shlibsuff= ;;
+ esac
+ ;;
+ esac
+ ;;
+ linux*oldld* | linux*aout* | linux*coff*)
+ ;;
+ linux* | k*bsd*-gnu)
+ library_names_spec='$libname$shrext'
+ ;;
+ knetbsd*-gnu)
+ library_names_spec='$libname$shrext'
+ ;;
+ netbsd*)
+ library_names_spec='$libname$shrext'
+ ;;
+ newsos6)
+ library_names_spec='$libname$shrext'
+ ;;
+ nto-qnx*)
+ library_names_spec='$libname$shrext'
+ ;;
+ openbsd*)
+ library_names_spec='$libname$shrext$versuffix'
+ ;;
+ os2*)
+ libname_spec='$name'
+ shrext=.dll
+ library_names_spec='$libname.a'
+ ;;
+ osf3* | osf4* | osf5*)
+ library_names_spec='$libname$shrext'
+ ;;
+ rdos*)
+ ;;
+ solaris*)
+ library_names_spec='$libname$shrext'
+ ;;
+ sunos4*)
+ library_names_spec='$libname$shrext$versuffix'
+ ;;
+ sysv4 | sysv4.3*)
+ library_names_spec='$libname$shrext'
+ ;;
+ sysv4*MP*)
+ library_names_spec='$libname$shrext'
+ ;;
+ sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
+ library_names_spec='$libname$shrext'
+ ;;
+ uts4*)
+ library_names_spec='$libname$shrext'
+ ;;
+esac
+
+sed_quote_subst='s/\(["`$\\]\)/\\\1/g'
+escaped_wl=`echo "X$wl" | sed -e 's/^X//' -e "$sed_quote_subst"`
+shlibext=`echo "$shrext" | sed -e 's,^\.,,'`
+escaped_libname_spec=`echo "X$libname_spec" | sed -e 's/^X//' -e "$sed_quote_subst"`
+escaped_library_names_spec=`echo "X$library_names_spec" | sed -e 's/^X//' -e "$sed_quote_subst"`
+escaped_hardcode_libdir_flag_spec=`echo "X$hardcode_libdir_flag_spec" | sed -e 's/^X//' -e "$sed_quote_subst"`
+
+LC_ALL=C sed -e 's/^\([a-zA-Z0-9_]*\)=/acl_cv_\1=/' <<EOF
+
+# How to pass a linker flag through the compiler.
+wl="$escaped_wl"
+
+# Static library suffix (normally "a").
+libext="$libext"
+
+# Shared library suffix (normally "so").
+shlibext="$shlibext"
+
+# Format of library name prefix.
+libname_spec="$escaped_libname_spec"
+
+# Library names that the linker finds when passed -lNAME.
+library_names_spec="$escaped_library_names_spec"
+
+# Flag to hardcode \$libdir into a binary during linking.
+# This must work even if \$libdir does not exist.
+hardcode_libdir_flag_spec="$escaped_hardcode_libdir_flag_spec"
+
+# Whether we need a single -rpath flag with a separated argument.
+hardcode_libdir_separator="$hardcode_libdir_separator"
+
+# Set to yes if using DIR/libNAME.so during linking hardcodes DIR into the
+# resulting binary.
+hardcode_direct="$hardcode_direct"
+
+# Set to yes if using the -LDIR flag during linking hardcodes DIR into the
+# resulting binary.
+hardcode_minus_L="$hardcode_minus_L"
+
+EOF
diff --git a/libjava/classpath/configure b/libjava/classpath/configure
index b98c8e84a67..8ed8064f6a9 100755
--- a/libjava/classpath/configure
+++ b/libjava/classpath/configure
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.64 for GNU Classpath 0.98.
+# Generated by GNU Autoconf 2.64 for GNU Classpath 0.99-pre.
#
# Report bugs to <classpath@gnu.org>.
#
@@ -559,8 +559,8 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='GNU Classpath'
PACKAGE_TARNAME='classpath'
-PACKAGE_VERSION='0.98'
-PACKAGE_STRING='GNU Classpath 0.98'
+PACKAGE_VERSION='0.99-pre'
+PACKAGE_STRING='GNU Classpath 0.99-pre'
PACKAGE_BUGREPORT='classpath@gnu.org'
PACKAGE_URL='http://www.gnu.org/software/classpath/'
@@ -1490,7 +1490,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures GNU Classpath 0.98 to adapt to many kinds of systems.
+\`configure' configures GNU Classpath 0.99-pre to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1565,7 +1565,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of GNU Classpath 0.98:";;
+ short | recursive ) echo "Configuration of GNU Classpath 0.99-pre:";;
esac
cat <<\_ACEOF
@@ -1757,7 +1757,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-GNU Classpath configure 0.98
+GNU Classpath configure 0.99-pre
generated by GNU Autoconf 2.64
Copyright (C) 2009 Free Software Foundation, Inc.
@@ -2586,7 +2586,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by GNU Classpath $as_me 0.98, which was
+It was created by GNU Classpath $as_me 0.99-pre, which was
generated by GNU Autoconf 2.64. Invocation command line was
$ $0 $@
@@ -2938,6 +2938,7 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
ac_aux_dir=
for ac_dir in ../.. "$srcdir"/../..; do
for ac_t in install-sh install.sh shtool; do
@@ -3620,7 +3621,7 @@ fi
# Define the identity of the package.
PACKAGE='classpath'
- VERSION='0.98'
+ VERSION='0.99-pre'
cat >>confdefs.h <<_ACEOF
@@ -5474,7 +5475,7 @@ if test "${enable_plugin+set}" = set; then :
*) COMPILE_PLUGIN=yes ;;
esac
else
- COMPILE_PLUGIN=yes
+ COMPILE_PLUGIN=no
fi
if test "x${COMPILE_PLUGIN}" = xyes; then
@@ -11818,7 +11819,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 11821 "configure"
+#line 11822 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -11924,7 +11925,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 11927 "configure"
+#line 11928 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -21956,6 +21957,24 @@ fi
fi
if test "x${COMPILE_GMP}" = xyes; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GMP directories" >&5
+$as_echo_n "checking for GMP directories... " >&6; }
+ if test "x$with_gmp" != x; then
+ gmplibs="-L$with_gmp/lib -lgmp"
+ gmpinc="-I$with_gmp/include"
+ if test "x$with_gmp_include" != x; then
+ gmpinc="-I$with_gmp_include $gmpinc"
+ fi
+ if test "x$with_gmp_lib" != x; then
+ gmplibs="-L$with_gmp_lib $gmplibs"
+ fi
+ else
+ with_gmp="/usr"
+ gmplibs="-lgmp"
+ gmpinc="-I/usr/include"
+ fi
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: prefix=$with_gmp, libs=$gmplibs, inc=$gmpinc" >&5
+$as_echo "prefix=$with_gmp, libs=$gmplibs, inc=$gmpinc" >&6; }
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for __gmpz_mul_si in -lgmp" >&5
$as_echo_n "checking for __gmpz_mul_si in -lgmp... " >&6; }
if test "${ac_cv_lib_gmp___gmpz_mul_si+set}" = set; then :
@@ -23676,82 +23695,6 @@ test -n "$JAVA" || JAVA="$JAVAPREFIX"
fi
test "x$JAVA" = x && as_fn_error "no acceptable Java virtual machine found in \$PATH" "$LINENO" 5
-# Extract the first word of "uudecode$EXEEXT", so it can be a program name with args.
-set dummy uudecode$EXEEXT; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_uudecode+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$uudecode"; then
- ac_cv_prog_uudecode="$uudecode" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_uudecode="yes"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-uudecode=$ac_cv_prog_uudecode
-if test -n "$uudecode"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $uudecode" >&5
-$as_echo "$uudecode" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-if test x$uudecode = xyes; then
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if uudecode can decode base 64 file" >&5
-$as_echo_n "checking if uudecode can decode base 64 file... " >&6; }
-if test "${ac_cv_prog_uudecode_base64+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
-
-cat << \EOF > Test.uue
-begin-base64 644 Test.class
-yv66vgADAC0AFQcAAgEABFRlc3QHAAQBABBqYXZhL2xhbmcvT2JqZWN0AQAE
-bWFpbgEAFihbTGphdmEvbGFuZy9TdHJpbmc7KVYBAARDb2RlAQAPTGluZU51
-bWJlclRhYmxlDAAKAAsBAARleGl0AQAEKEkpVgoADQAJBwAOAQAQamF2YS9s
-YW5nL1N5c3RlbQEABjxpbml0PgEAAygpVgwADwAQCgADABEBAApTb3VyY2VG
-aWxlAQAJVGVzdC5qYXZhACEAAQADAAAAAAACAAkABQAGAAEABwAAACEAAQAB
-AAAABQO4AAyxAAAAAQAIAAAACgACAAAACgAEAAsAAQAPABAAAQAHAAAAIQAB
-AAEAAAAFKrcAErEAAAABAAgAAAAKAAIAAAAEAAQABAABABMAAAACABQ=
-====
-EOF
-if uudecode$EXEEXT Test.uue; then
- ac_cv_prog_uudecode_base64=yes
-else
- echo "configure: 23737: uudecode had trouble decoding base 64 file 'Test.uue'" >&5
- echo "configure: failed file was:" >&5
- cat Test.uue >&5
- ac_cv_prog_uudecode_base64=no
-fi
-rm -f Test.uue
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_uudecode_base64" >&5
-$as_echo "$ac_cv_prog_uudecode_base64" >&6; }
-fi
-if test x$ac_cv_prog_uudecode_base64 != xyes; then
- rm -f Test.class
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: I have to compile Test.class from scratch" >&5
-$as_echo "$as_me: WARNING: I have to compile Test.class from scratch" >&2;}
- if test x$ac_cv_prog_javac_works = xno; then
- as_fn_error "Cannot compile java source. $JAVAC does not work properly" "$LINENO" 5
- fi
- if test x$ac_cv_prog_javac_works = x; then
ECJ_OPTS="-warn:-deprecation,serial,unusedImport"
JAVAC_OPTS="-Xlint:unchecked,cast,divzero,empty,finally,overrides"
@@ -23851,10 +23794,13 @@ if test "${ac_cv_prog_javac_is_gcj+set}" = set; then :
$as_echo_n "(cached) " >&6
else
-if $JAVAC --version | grep gcj > /dev/null; then
+if $JAVAC --version 2>&1 | grep gcj >&5 ; then
ac_cv_prog_javac_is_gcj=yes;
JAVAC="$JAVAC $GCJ_OPTS";
+else
+ ac_cv_prog_javac_is_gcj=no;
fi
+
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_javac_is_gcj" >&5
$as_echo "$ac_cv_prog_javac_is_gcj" >&6; }
@@ -23868,7 +23814,8 @@ else
GCJ_JAVAC_FALSE=
fi
-if test "$enable_java_maintainer_mode" = yes; then
+
+
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $JAVAC works" >&5
$as_echo_n "checking if $JAVAC works... " >&6; }
@@ -23879,7 +23826,7 @@ else
JAVA_TEST=Object.java
CLASS_TEST=Object.class
cat << \EOF > $JAVA_TEST
-/* #line 23882 "configure" */
+/* #line 23829 "configure" */
package java.lang;
public class Object
@@ -23912,8 +23859,82 @@ fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_javac_works" >&5
$as_echo "$ac_cv_prog_javac_works" >&6; }
+
+
+# Extract the first word of "uudecode$EXEEXT", so it can be a program name with args.
+set dummy uudecode$EXEEXT; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if test "${ac_cv_prog_uudecode+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -n "$uudecode"; then
+ ac_cv_prog_uudecode="$uudecode" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+ ac_cv_prog_uudecode="yes"
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+ done
+IFS=$as_save_IFS
+
+fi
+fi
+uudecode=$ac_cv_prog_uudecode
+if test -n "$uudecode"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $uudecode" >&5
+$as_echo "$uudecode" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
fi
+
+if test x$uudecode = xyes; then
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if uudecode can decode base 64 file" >&5
+$as_echo_n "checking if uudecode can decode base 64 file... " >&6; }
+if test "${ac_cv_prog_uudecode_base64+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+else
+
+cat << \EOF > Test.uue
+begin-base64 644 Test.class
+yv66vgADAC0AFQcAAgEABFRlc3QHAAQBABBqYXZhL2xhbmcvT2JqZWN0AQAE
+bWFpbgEAFihbTGphdmEvbGFuZy9TdHJpbmc7KVYBAARDb2RlAQAPTGluZU51
+bWJlclRhYmxlDAAKAAsBAARleGl0AQAEKEkpVgoADQAJBwAOAQAQamF2YS9s
+YW5nL1N5c3RlbQEABjxpbml0PgEAAygpVgwADwAQCgADABEBAApTb3VyY2VG
+aWxlAQAJVGVzdC5qYXZhACEAAQADAAAAAAACAAkABQAGAAEABwAAACEAAQAB
+AAAABQO4AAyxAAAAAQAIAAAACgACAAAACgAEAAsAAQAPABAAAQAHAAAAIQAB
+AAEAAAAFKrcAErEAAAABAAgAAAAKAAIAAAAEAAQABAABABMAAAACABQ=
+====
+EOF
+if uudecode$EXEEXT Test.uue; then
+ ac_cv_prog_uudecode_base64=yes
+else
+ echo "configure: 23922: uudecode had trouble decoding base 64 file 'Test.uue'" >&5
+ echo "configure: failed file was:" >&5
+ cat Test.uue >&5
+ ac_cv_prog_uudecode_base64=no
+fi
+rm -f Test.uue
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_uudecode_base64" >&5
+$as_echo "$ac_cv_prog_uudecode_base64" >&6; }
+fi
+if test x$ac_cv_prog_uudecode_base64 != xyes; then
+ rm -f Test.class
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: I have to compile Test.class from scratch" >&5
+$as_echo "$as_me: WARNING: I have to compile Test.class from scratch" >&2;}
+ if test x$ac_cv_prog_javac_works = xno; then
+ as_fn_error "Cannot compile java source. $JAVAC does not work properly" "$LINENO" 5
fi
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $JAVA works" >&5
@@ -23926,13 +23947,14 @@ JAVA_TEST=Test.java
CLASS_TEST=Test.class
TEST=Test
cat << \EOF > $JAVA_TEST
-/* [#]line 23929 "configure" */
+/* [#]line 23950 "configure" */
public class Test {
public static void main (String args[]) {
System.exit (0);
} }
EOF
if test x$ac_cv_prog_uudecode_base64 != xyes; then
+
if { ac_try='$JAVAC $JAVACFLAGS $JAVA_TEST'
{ { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
(eval $ac_try) 2>&5
@@ -23965,7 +23987,6 @@ fi
$as_echo "$ac_cv_prog_java_works" >&6; }
-
fi
if test "x${COMPILE_GJDOC}" = xyes; then
@@ -24092,7 +24113,11 @@ fi
if test -z "$JAVA"; then
as_fn_error "Failed to find either an antlr binary or a suitable Java runtime for ANTLR." "$LINENO" 5
else
- ANTLR="$JAVA -classpath $ANTLR_JAR antlr.Tool"
+ if test -z "$ANTLR_JAR"; then
+ as_fn_error "Failed to find either an antlr binary or a suitable antlr jar file." "$LINENO" 5
+ else
+ ANTLR="$JAVA -classpath $ANTLR_JAR antlr.Tool"
+ fi
fi
fi
@@ -24124,174 +24149,13 @@ fi
if test "x${use_glibj_zip}" = xfalse || \
test "x${EXAMPLESDIR}" != x || \
test "x${TOOLSDIR}" != x && \
- test "x${build_class_files}" != xno; then
-
-ECJ_OPTS="-warn:-deprecation,serial,unusedImport"
-JAVAC_OPTS="-Xlint:unchecked,cast,divzero,empty,finally,overrides"
-GCJ_OPTS="-g"
-if test "x$JAVAPREFIX" = x; then
- test "x$JAVAC" = x && for ac_prog in "ecj$EXEEXT $ECJ_OPTS" "ecj-3.3$EXEEXT $ECJ_OPTS" "ecj-3.2$EXEEXT $ECJ_OPTS" "javac$EXEEXT $JAVAC_OPTS" "gcj$EXEEXT -C"
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_JAVAC+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$JAVAC"; then
- ac_cv_prog_JAVAC="$JAVAC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_JAVAC="$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-JAVAC=$ac_cv_prog_JAVAC
-if test -n "$JAVAC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $JAVAC" >&5
-$as_echo "$JAVAC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$JAVAC" && break
-done
-
-else
- test "x$JAVAC" = x && for ac_prog in "ecj$EXEEXT $ECJ_OPTS" "ecj-3.3$EXEEXT $ECJ_OPTS" "ecj-3.2$EXEEXT $ECJ_OPTS" "javac$EXEEXT $JAVAC_OPTS" "gcj$EXEEXT -C"
-do
- # Extract the first word of "$ac_prog", so it can be a program name with args.
-set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if test "${ac_cv_prog_JAVAC+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
- if test -n "$JAVAC"; then
- ac_cv_prog_JAVAC="$JAVAC" # Let the user override the test.
-else
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
- ac_cv_prog_JAVAC="$ac_prog"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
-fi
-fi
-JAVAC=$ac_cv_prog_JAVAC
-if test -n "$JAVAC"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $JAVAC" >&5
-$as_echo "$JAVAC" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
- test -n "$JAVAC" && break
-done
-test -n "$JAVAC" || JAVAC="$JAVAPREFIX"
-
-fi
-test "x$JAVAC" = x && as_fn_error "no acceptable Java compiler found in \$PATH" "$LINENO" 5
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $JAVAC is a version of gcj" >&5
-$as_echo_n "checking if $JAVAC is a version of gcj... " >&6; }
-if test "${ac_cv_prog_javac_is_gcj+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
-
-if $JAVAC --version | grep gcj > /dev/null; then
- ac_cv_prog_javac_is_gcj=yes;
- JAVAC="$JAVAC $GCJ_OPTS";
-fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_javac_is_gcj" >&5
-$as_echo "$ac_cv_prog_javac_is_gcj" >&6; }
-JAVAC_IS_GCJ=$ac_cv_prog_javac_is_gcj
-
- if test x"${JAVAC_IS_GCJ}" = xyes; then
- GCJ_JAVAC_TRUE=
- GCJ_JAVAC_FALSE='#'
-else
- GCJ_JAVAC_TRUE='#'
- GCJ_JAVAC_FALSE=
-fi
-
-if test "$enable_java_maintainer_mode" = yes; then
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $JAVAC works" >&5
-$as_echo_n "checking if $JAVAC works... " >&6; }
-if test "${ac_cv_prog_javac_works+set}" = set; then :
- $as_echo_n "(cached) " >&6
-else
-
-JAVA_TEST=Object.java
-CLASS_TEST=Object.class
-cat << \EOF > $JAVA_TEST
-/* #line 24255 "configure" */
-package java.lang;
-
-public class Object
-{
- static <T> void doStuff()
- {
- }
-}
-EOF
-if test x$JAVAC_IS_GCJ = xyes; then
- CMD="$JAVAC $JAVACFLAGS -fsource=1.5 -ftarget=1.5 $JAVA_TEST"
-else
- CMD="$JAVAC $JAVACFLAGS -source 1.5 -target 1.5 $JAVA_TEST"
-fi
-if { ac_try='$CMD'
- { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; } >/dev/null 2>&1; then
- ac_cv_prog_javac_works=yes
-else
- as_fn_error "The Java compiler $JAVAC failed (see config.log, check the CLASSPATH?)" "$LINENO" 5
- echo "configure: failed program was:" >&5
- cat $JAVA_TEST >&5
-fi
-rm -f $JAVA_TEST $CLASS_TEST
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_javac_works" >&5
-$as_echo "$ac_cv_prog_javac_works" >&6; }
-
-fi
-
+ test "x${build_class_files}" != xno && \
+ test "${enable_java_maintainer_mode}" = yes; then
JAVA_TEST=Test.java
CLASS_TEST=Test.class
cat << \EOF > $JAVA_TEST
- /* #line 24294 "configure" */
+ /* #line 24158 "configure" */
public class Test
{
public static void main(String args)
@@ -24317,6 +24181,15 @@ $as_echo "no" >&6; }
rm -f $JAVA_TEST $CLASS_TEST
+else
+ if no; then
+ GCJ_JAVAC_TRUE=
+ GCJ_JAVAC_FALSE='#'
+else
+ GCJ_JAVAC_TRUE='#'
+ GCJ_JAVAC_FALSE=
+fi
+
fi
@@ -25127,7 +25000,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by GNU Classpath $as_me 0.98, which was
+This file was extended by GNU Classpath $as_me 0.99-pre, which was
generated by GNU Autoconf 2.64. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -25197,7 +25070,7 @@ General help using GNU software: <http://www.gnu.org/gethelp/>."
_ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_version="\\
-GNU Classpath config.status 0.98
+GNU Classpath config.status 0.99-pre
configured by $0, generated by GNU Autoconf 2.64,
with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
@@ -27869,3 +27742,8 @@ cat ${srcdir}/lib/standard.omit.in > lib/standard.omit
if test x$use_escher != xtrue; then
echo gnu/java/awt/peer/x/.*java$ >> lib/standard.omit
fi
+
+if test "x${COMPILE_PLUGIN}" = "xyes" ; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: You have enabled the browser plugin. Please note that this is no longer maintained as part of GNU Classpath; development has moved to the IcedTea project." >&5
+$as_echo "$as_me: WARNING: You have enabled the browser plugin. Please note that this is no longer maintained as part of GNU Classpath; development has moved to the IcedTea project." >&2;}
+fi
diff --git a/libjava/classpath/configure.ac b/libjava/classpath/configure.ac
index d2d149fe239..ab72c161c52 100644
--- a/libjava/classpath/configure.ac
+++ b/libjava/classpath/configure.ac
@@ -6,8 +6,9 @@ dnl -----------------------------------------------------------
dnl define([AC_CACHE_LOAD], )dnl
dnl define([AC_CACHE_SAVE], )dnl
-AC_INIT([GNU Classpath],[0.98],[classpath@gnu.org],[classpath])
+AC_INIT([GNU Classpath],[0.99-pre],[classpath@gnu.org],[classpath])
AC_CONFIG_SRCDIR(java/lang/System.java)
+AC_CONFIG_MACRO_DIR([m4])
dnl GCJ LOCAL
AC_CONFIG_AUX_DIR(../..)
@@ -273,7 +274,7 @@ AC_ARG_ENABLE([qt-peer],
AM_CONDITIONAL(CREATE_QT_PEER_LIBRARIES, test "x${COMPILE_QT_PEER}" = xyes)
dnl -----------------------------------------------------------
-dnl Plugin (enabled by default)
+dnl Plugin (disabled by default)
dnl -----------------------------------------------------------
AC_ARG_ENABLE([plugin],
[AS_HELP_STRING(--disable-plugin,compile gcjwebplugin (disabled by --disable-plugin) [default=yes])],
@@ -282,7 +283,7 @@ AC_ARG_ENABLE([plugin],
no) COMPILE_PLUGIN=no ;;
*) COMPILE_PLUGIN=yes ;;
esac],
- [COMPILE_PLUGIN=yes])
+ [COMPILE_PLUGIN=no])
AM_CONDITIONAL(CREATE_PLUGIN, test "x${COMPILE_PLUGIN}" = xyes)
dnl -----------------------------------------------------------
@@ -424,7 +425,7 @@ dnl -----------------------------------------------------------
dnl Initialize libtool
AC_DISABLE_STATIC
-AC_PROG_LIBTOOL
+LT_INIT
AC_PROG_AWK
AC_PROG_CC
AM_PROG_CC_C_O
@@ -739,35 +740,26 @@ if test "x${COMPILE_JNI}" = xyes; then
dnl Check for MSG_NOSIGNAL
dnl **********************************************************************
AC_MSG_CHECKING(for MSG_NOSIGNAL)
- AC_TRY_COMPILE([#include <sys/socket.h>],
- [ int f = MSG_NOSIGNAL; ],
- [ AC_MSG_RESULT(yes)
+ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <sys/socket.h>]], [[ int f = MSG_NOSIGNAL; ]])],[ AC_MSG_RESULT(yes)
AC_DEFINE(HAVE_MSG_NOSIGNAL, 1,
- [Define this symbol if you have MSG_NOSIGNAL]) ],
- [ AC_MSG_RESULT(no)]
- )
+ [Define this symbol if you have MSG_NOSIGNAL]) ],[ AC_MSG_RESULT(no)
+ ])
dnl **********************************************************************
dnl Check for SO_NOSIGPIPE (Darwin equivalent for MSG_NOSIGNAL)
dnl **********************************************************************
AC_MSG_CHECKING(for SO_NOSIGPIPE )
- AC_TRY_COMPILE([#include <sys/socket.h>],
- [ int f = SO_NOSIGPIPE; ],
- [ AC_MSG_RESULT(yes)
+ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <sys/socket.h>]], [[ int f = SO_NOSIGPIPE; ]])],[ AC_MSG_RESULT(yes)
AC_DEFINE(HAVE_SO_NOSIGPIPE, 1,
- [Define this symbol if you have SO_NOSIGPIPE]) ],
- [ AC_MSG_RESULT(no)]
- )
+ [Define this symbol if you have SO_NOSIGPIPE]) ],[ AC_MSG_RESULT(no)
+ ])
dnl **********************************************************************
dnl Check for MSG_WAITALL
dnl **********************************************************************
AC_MSG_CHECKING(for MSG_WAITALL)
- AC_TRY_COMPILE([#include <sys/socket.h>],
- [ int f = MSG_WAITALL; ],
- [ AC_MSG_RESULT(yes)
+ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <sys/socket.h>]], [[ int f = MSG_WAITALL; ]])],[ AC_MSG_RESULT(yes)
AC_DEFINE(HAVE_MSG_WAITALL, 1,
- [Define this symbol if you have MSG_WAITALL]) ],
- [ AC_MSG_RESULT(no)]
- )
+ [Define this symbol if you have MSG_WAITALL]) ],[ AC_MSG_RESULT(no)
+ ])
dnl Check for plugin support headers and libraries.
if test "x${COMPILE_PLUGIN}" = xyes; then
@@ -835,6 +827,22 @@ if test "x${COMPILE_JNI}" = xyes; then
fi
if test "x${COMPILE_GMP}" = xyes; then
+ AC_MSG_CHECKING([for GMP directories])
+ if test "x$with_gmp" != x; then
+ gmplibs="-L$with_gmp/lib -lgmp"
+ gmpinc="-I$with_gmp/include"
+ if test "x$with_gmp_include" != x; then
+ gmpinc="-I$with_gmp_include $gmpinc"
+ fi
+ if test "x$with_gmp_lib" != x; then
+ gmplibs="-L$with_gmp_lib $gmplibs"
+ fi
+ else
+ with_gmp="/usr"
+ gmplibs="-lgmp"
+ gmpinc="-I/usr/include"
+ fi
+ AC_MSG_RESULT([prefix=$with_gmp, libs=$gmplibs, inc=$gmpinc])
AC_CHECK_LIB(gmp, __gmpz_mul_si,
[GMP_CFLAGS="$gmpinc"
GMP_LIBS="$gmplibs" ],
@@ -1044,7 +1052,7 @@ AC_SUBST(PATH_TO_GLIBJ_ZIP)
if test "x${TOOLSDIR}" != x; then
dnl GCJ LOCAL
if test "x${COMPILE_WRAPPERS}" = xno && test "x${enable_java_maintainer_mode}" = xyes; then
- AC_PROG_JAVA
+ AC_PROG_JAVA_WORKS
fi
dnl END GCJ LOCAL
if test "x${COMPILE_GJDOC}" = xyes; then
@@ -1063,9 +1071,12 @@ fi
if test "x${use_glibj_zip}" = xfalse || \
test "x${EXAMPLESDIR}" != x || \
test "x${TOOLSDIR}" != x && \
- test "x${build_class_files}" != xno; then
- AC_PROG_JAVAC
+ test "x${build_class_files}" != xno && \
+ test "${enable_java_maintainer_mode}" = yes; then dnl GCJ_LOCAL
+ AC_PROG_JAVAC_WORKS
CLASSPATH_JAVAC_MEM_CHECK
+else
+ AM_CONDITIONAL(GCJ_JAVAC, no)
fi
dnl -----------------------------------------------------------
@@ -1232,3 +1243,7 @@ cat ${srcdir}/lib/standard.omit.in > lib/standard.omit
if test x$use_escher != xtrue; then
echo gnu/java/awt/peer/x/.*java$ >> lib/standard.omit
fi
+
+if test "x${COMPILE_PLUGIN}" = "xyes" ; then
+ AC_MSG_WARN([You have enabled the browser plugin. Please note that this is no longer maintained as part of GNU Classpath; development has moved to the IcedTea project.])
+fi
diff --git a/libjava/classpath/depcomp b/libjava/classpath/depcomp
index e5f9736c723..df8eea7e4ce 100755
--- a/libjava/classpath/depcomp
+++ b/libjava/classpath/depcomp
@@ -1,10 +1,10 @@
#! /bin/sh
# depcomp - compile a program generating dependencies as side-effects
-scriptversion=2007-03-29.01
+scriptversion=2009-04-28.21; # UTC
-# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007 Free Software
-# Foundation, Inc.
+# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007, 2009 Free
+# Software Foundation, Inc.
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -17,9 +17,7 @@ scriptversion=2007-03-29.01
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-# 02110-1301, USA.
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
@@ -87,6 +85,15 @@ if test "$depmode" = dashXmstdout; then
depmode=dashmstdout
fi
+cygpath_u="cygpath -u -f -"
+if test "$depmode" = msvcmsys; then
+ # This is just like msvisualcpp but w/o cygpath translation.
+ # Just convert the backslash-escaped backslashes to single forward
+ # slashes to satisfy depend.m4
+ cygpath_u="sed s,\\\\\\\\,/,g"
+ depmode=msvisualcpp
+fi
+
case "$depmode" in
gcc3)
## gcc 3 implements dependency tracking that does exactly what
@@ -192,14 +199,14 @@ sgi)
' < "$tmpdepfile" \
| sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \
tr '
-' ' ' >> $depfile
- echo >> $depfile
+' ' ' >> "$depfile"
+ echo >> "$depfile"
# The second pass generates a dummy entry for each header file.
tr ' ' '
' < "$tmpdepfile" \
| sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
- >> $depfile
+ >> "$depfile"
else
# The sourcefile does not contain any dependencies, so just
# store a dummy comment line, to avoid errors with the Makefile
@@ -328,7 +335,12 @@ hp2)
if test -f "$tmpdepfile"; then
sed -e "s,^.*\.[a-z]*:,$object:," "$tmpdepfile" > "$depfile"
# Add `dependent.h:' lines.
- sed -ne '2,${; s/^ *//; s/ \\*$//; s/$/:/; p;}' "$tmpdepfile" >> "$depfile"
+ sed -ne '2,${
+ s/^ *//
+ s/ \\*$//
+ s/$/:/
+ p
+ }' "$tmpdepfile" >> "$depfile"
else
echo "#dummy" > "$depfile"
fi
@@ -404,7 +416,7 @@ dashmstdout)
# Remove the call to Libtool.
if test "$libtool" = yes; then
- while test $1 != '--mode=compile'; do
+ while test "X$1" != 'X--mode=compile'; do
shift
done
shift
@@ -455,32 +467,39 @@ makedepend)
"$@" || exit $?
# Remove any Libtool call
if test "$libtool" = yes; then
- while test $1 != '--mode=compile'; do
+ while test "X$1" != 'X--mode=compile'; do
shift
done
shift
fi
# X makedepend
shift
- cleared=no
- for arg in "$@"; do
+ cleared=no eat=no
+ for arg
+ do
case $cleared in
no)
set ""; shift
cleared=yes ;;
esac
+ if test $eat = yes; then
+ eat=no
+ continue
+ fi
case "$arg" in
-D*|-I*)
set fnord "$@" "$arg"; shift ;;
# Strip any option that makedepend may not understand. Remove
# the object too, otherwise makedepend will parse it as a source file.
+ -arch)
+ eat=yes ;;
-*|$object)
;;
*)
set fnord "$@" "$arg"; shift ;;
esac
done
- obj_suffix="`echo $object | sed 's/^.*\././'`"
+ obj_suffix=`echo "$object" | sed 's/^.*\././'`
touch "$tmpdepfile"
${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@"
rm -f "$depfile"
@@ -500,7 +519,7 @@ cpp)
# Remove the call to Libtool.
if test "$libtool" = yes; then
- while test $1 != '--mode=compile'; do
+ while test "X$1" != 'X--mode=compile'; do
shift
done
shift
@@ -538,13 +557,27 @@ cpp)
msvisualcpp)
# Important note: in order to support this mode, a compiler *must*
- # always write the preprocessed file to stdout, regardless of -o,
- # because we must use -o when running libtool.
+ # always write the preprocessed file to stdout.
"$@" || exit $?
+
+ # Remove the call to Libtool.
+ if test "$libtool" = yes; then
+ while test "X$1" != 'X--mode=compile'; do
+ shift
+ done
+ shift
+ fi
+
IFS=" "
for arg
do
case "$arg" in
+ -o)
+ shift
+ ;;
+ $object)
+ shift
+ ;;
"-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
set fnord "$@"
shift
@@ -557,16 +590,23 @@ msvisualcpp)
;;
esac
done
- "$@" -E |
- sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::echo "`cygpath -u \\"\1\\"`":p' | sort | uniq > "$tmpdepfile"
+ "$@" -E 2>/dev/null |
+ sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile"
rm -f "$depfile"
echo "$object : \\" > "$depfile"
- . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile"
+ sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile"
echo " " >> "$depfile"
- . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s::\1\::p' >> "$depfile"
+ sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile"
rm -f "$tmpdepfile"
;;
+msvcmsys)
+ # This case exists only to let depend.m4 do its work. It works by
+ # looking at the text of this script. This case will never be run,
+ # since it is checked for above.
+ exit 1
+ ;;
+
none)
exec "$@"
;;
@@ -585,5 +625,6 @@ exit 0
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-end: "$"
+# time-stamp-time-zone: "UTC"
+# time-stamp-end: "; # UTC"
# End:
diff --git a/libjava/classpath/doc/Makefile.in b/libjava/classpath/doc/Makefile.in
index f5955e12234..7a2432c0dda 100644
--- a/libjava/classpath/doc/Makefile.in
+++ b/libjava/classpath/doc/Makefile.in
@@ -39,6 +39,9 @@ DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in texinfo.tex
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/../../config/lead-dot.m4 \
+ $(top_srcdir)/../../config/lib-ld.m4 \
+ $(top_srcdir)/../../config/lib-link.m4 \
+ $(top_srcdir)/../../config/lib-prefix.m4 \
$(top_srcdir)/../../config/multi.m4 \
$(top_srcdir)/../../config/no-executables.m4 \
$(top_srcdir)/../../config/override.m4 \
@@ -57,9 +60,7 @@ am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_func_which_gethostbyname_r.m4 \
$(top_srcdir)/m4/gcc_attribute.m4 $(top_srcdir)/m4/iconv.m4 \
- $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
- $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/../../mkinstalldirs
diff --git a/libjava/classpath/doc/api/Makefile.in b/libjava/classpath/doc/api/Makefile.in
index 069b24186ed..c811ef15ac3 100644
--- a/libjava/classpath/doc/api/Makefile.in
+++ b/libjava/classpath/doc/api/Makefile.in
@@ -40,6 +40,9 @@ DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/../../config/lead-dot.m4 \
+ $(top_srcdir)/../../config/lib-ld.m4 \
+ $(top_srcdir)/../../config/lib-link.m4 \
+ $(top_srcdir)/../../config/lib-prefix.m4 \
$(top_srcdir)/../../config/multi.m4 \
$(top_srcdir)/../../config/no-executables.m4 \
$(top_srcdir)/../../config/override.m4 \
@@ -58,9 +61,7 @@ am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_func_which_gethostbyname_r.m4 \
$(top_srcdir)/m4/gcc_attribute.m4 $(top_srcdir)/m4/iconv.m4 \
- $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
- $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/../../mkinstalldirs
diff --git a/libjava/classpath/doc/cp-hacking.texinfo b/libjava/classpath/doc/cp-hacking.texinfo
index a424b56ec76..2914c5be5cd 100644
--- a/libjava/classpath/doc/cp-hacking.texinfo
+++ b/libjava/classpath/doc/cp-hacking.texinfo
@@ -11,7 +11,7 @@
This file contains important information you will need to know if you
are going to hack on the GNU Classpath project code.
-Copyright (C) 1998,1999,2000,2001,2002,2003,2004,2005,2007 Free Software Foundation, Inc.
+Copyright (C) 1998,1999,2000,2001,2002,2003,2004,2005,2007,2009 Free Software Foundation, Inc.
@ifnotplaintext
@dircategory GNU Libraries
diff --git a/libjava/classpath/doc/texinfo.tex b/libjava/classpath/doc/texinfo.tex
index 3569bd5a864..91408263bc9 100644
--- a/libjava/classpath/doc/texinfo.tex
+++ b/libjava/classpath/doc/texinfo.tex
@@ -1,13 +1,13 @@
% texinfo.tex -- TeX macros to handle Texinfo files.
-%
+%
% Load plain if necessary, i.e., if running under initex.
\expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi
%
-\def\texinfoversion{2008-11-17.21}
+\def\texinfoversion{2009-08-14.15}
%
-% Copyright (C) 1985, 1986, 1988, 1990, 1991, 1992, 1993, 1994, 1995,
+% Copyright 1985, 1986, 1988, 1990, 1991, 1992, 1993, 1994, 1995,
% 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
-% 2007, 2008 Free Software Foundation, Inc.
+% 2007, 2008, 2009 Free Software Foundation, Inc.
%
% This texinfo.tex file is free software: you can redistribute it and/or
% modify it under the terms of the GNU General Public License as
@@ -100,6 +100,7 @@
\let\ptextop=\top
{\catcode`\'=\active
\global\let\ptexquoteright'}% Math-mode def from plain.tex.
+\let\ptexraggedright=\raggedright
% If this character appears in an error message or help string, it
% starts a new line in the output.
@@ -357,7 +358,7 @@
% We don't want .vr (or whatever) entries like this:
% \entry{{\tt \indexbackslash }acronym}{32}{\code {\acronym}}
% "\acronym" won't work when it's read back in;
- % it needs to be
+ % it needs to be
% {\code {{\tt \backslashcurfont }acronym}
\shipout\vbox{%
% Do this early so pdf references go to the beginning of the page.
@@ -708,7 +709,7 @@
\def\?{?\spacefactor=\endofsentencespacefactor\space}
% @frenchspacing on|off says whether to put extra space after punctuation.
-%
+%
\def\onword{on}
\def\offword{off}
%
@@ -1284,7 +1285,7 @@ where each line of input produces a line of output.}
% that's what we do).
% double active backslashes.
-%
+%
{\catcode`\@=0 \catcode`\\=\active
@gdef@activebackslashdouble{%
@catcode`@\=@active
@@ -1296,11 +1297,11 @@ where each line of input produces a line of output.}
% us) handles it with this amazing macro to replace tokens, with minor
% changes for Texinfo. It is included here under the GPL by permission
% from the author, Heiko Oberdiek.
-%
+%
% #1 is the tokens to replace.
% #2 is the replacement.
% #3 is the control sequence with the string.
-%
+%
\def\HyPsdSubst#1#2#3{%
\def\HyPsdReplace##1#1##2\END{%
##1%
@@ -1331,11 +1332,17 @@ output) for that.)}
\ifpdf
%
- % Color manipulation macros based on pdfcolor.tex.
- \def\cmykDarkRed{0.28 1 1 0.35}
- \def\cmykBlack{0 0 0 1}
+ % Color manipulation macros based on pdfcolor.tex,
+ % except using rgb instead of cmyk; the latter is said to render as a
+ % very dark gray on-screen and a very dark halftone in print, instead
+ % of actual black.
+ \def\rgbDarkRed{0.50 0.09 0.12}
+ \def\rgbBlack{0 0 0}
+ %
+ % k sets the color for filling (usual text, etc.);
+ % K sets the color for stroking (thin rules, e.g., normal _'s).
+ \def\pdfsetcolor#1{\pdfliteral{#1 rg #1 RG}}
%
- \def\pdfsetcolor#1{\pdfliteral{#1 k}}
% Set color, and create a mark which defines \thiscolor accordingly,
% so that \makeheadline knows which color to restore.
\def\setcolor#1{%
@@ -1344,7 +1351,7 @@ output) for that.)}
\pdfsetcolor{#1}%
}
%
- \def\maincolor{\cmykBlack}
+ \def\maincolor{\rgbBlack}
\pdfsetcolor{\maincolor}
\edef\thiscolor{\maincolor}
\def\lastcolordefs{}
@@ -1439,8 +1446,8 @@ output) for that.)}
%
% by default, use a color that is dark enough to print on paper as
% nearly black, but still distinguishable for online viewing.
- \def\urlcolor{\cmykDarkRed}
- \def\linkcolor{\cmykDarkRed}
+ \def\urlcolor{\rgbDarkRed}
+ \def\linkcolor{\rgbDarkRed}
\def\endlink{\setcolor{\maincolor}\pdfendlink}
%
% Adding outlines to PDF; macros for calculating structure of outlines
@@ -1569,11 +1576,15 @@ output) for that.)}
% tried to figure out what each command should do in the context
% of @url. for now, just make @/ a no-op, that's the only one
% people have actually reported a problem with.
- %
+ %
\normalturnoffactive
\def\@{@}%
\let\/=\empty
\makevalueexpandable
+ % do we want to go so far as to use \indexnofonts instead of just
+ % special-casing \var here?
+ \def\var##1{##1}%
+ %
\leavevmode\setcolor{\urlcolor}%
\startlink attr{/Border [0 0 0]}%
user{/Subtype /Link /A << /S /URI /URI (#1) >>}%
@@ -1604,6 +1615,7 @@ output) for that.)}
\setcolor{\linkcolor}#1\endlink}
\def\done{\edef\st{\global\noexpand\toksA={\the\toksB}}\st}
\else
+ % non-pdf mode
\let\pdfmkdest = \gobble
\let\pdfurl = \gobble
\let\endlink = \relax
@@ -1972,7 +1984,7 @@ end
% Definitions for a main text size of 11pt. This is the default in
% Texinfo.
-%
+%
\def\definetextfontsizexi{%
% Text fonts (11.2pt, magstep1).
\def\textnominalsize{11pt}
@@ -2103,7 +2115,7 @@ end
% section, chapter, etc., sizes following suit. This is for the GNU
% Press printing of the Emacs 22 manual. Maybe other manuals in the
% future. Used with @smallbook, which sets the leading to 12pt.
-%
+%
\def\definetextfontsizex{%
% Text fonts (10pt).
\def\textnominalsize{10pt}
@@ -2192,7 +2204,7 @@ end
\setfont\secsf\sfbshape{12}{1000}{OT1}
\let\secbf\secrm
\setfont\secsc\scbshape{10}{\magstep1}{OT1}
-\font\seci=cmmi12
+\font\seci=cmmi12
\font\secsy=cmsy10 scaled \magstep1
\def\sececsize{1200}
@@ -2236,7 +2248,7 @@ end
% We provide the user-level command
% @fonttextsize 10
% (or 11) to redefine the text font size. pt is assumed.
-%
+%
\def\xword{10}
\def\xiword{11}
%
@@ -2246,7 +2258,7 @@ end
%
% Set \globaldefs so that documents can use this inside @tex, since
% makeinfo 4.8 does not support it, but we need it nonetheless.
- %
+ %
\begingroup \globaldefs=1
\ifx\textsizearg\xword \definetextfontsizex
\else \ifx\textsizearg\xiword \definetextfontsizexi
@@ -2348,6 +2360,16 @@ end
\def\lsize{smaller}\def\lllsize{smaller}%
\resetmathfonts \setleading{9.5pt}}
+% Fonts for short table of contents.
+\setfont\shortcontrm\rmshape{12}{1000}{OT1}
+\setfont\shortcontbf\bfshape{10}{\magstep1}{OT1} % no cmb12
+\setfont\shortcontsl\slshape{12}{1000}{OT1}
+\setfont\shortconttt\ttshape{12}{1000}{OT1TT}
+
+% Define these just so they can be easily changed for other fonts.
+\def\angleleft{$\langle$}
+\def\angleright{$\rangle$}
+
% Set the fonts to use with the @small... environments.
\let\smallexamplefonts = \smallfonts
@@ -2361,28 +2383,128 @@ end
%
% By the way, for comparison, here's what fits with @example (10pt):
% 8.5x11=71 smallbook=60 a4=75 a5=58
-%
-% I wish the USA used A4 paper.
% --karl, 24jan03.
-
% Set up the default fonts, so we can use them for creating boxes.
%
\definetextfontsizexi
-% Define these so they can be easily changed for other fonts.
-\def\angleleft{$\langle$}
-\def\angleright{$\rangle$}
+
+\message{markup,}
+
+% Check if we are currently using a typewriter font. Since all the
+% Computer Modern typewriter fonts have zero interword stretch (and
+% shrink), and it is reasonable to expect all typewriter fonts to have
+% this property, we can check that font parameter.
+%
+\def\ifmonospace{\ifdim\fontdimen3\font=0pt }
+
+% Markup style infrastructure. \defmarkupstylesetup\INITMACRO will
+% define and register \INITMACRO to be called on markup style changes.
+% \INITMACRO can check \currentmarkupstyle for the innermost
+% style and the set of \ifmarkupSTYLE switches for all styles
+% currently in effect.
+\newif\ifmarkupvar
+\newif\ifmarkupsamp
+\newif\ifmarkupkey
+%\newif\ifmarkupfile % @file == @samp.
+%\newif\ifmarkupoption % @option == @samp.
+\newif\ifmarkupcode
+\newif\ifmarkupkbd
+%\newif\ifmarkupenv % @env == @code.
+%\newif\ifmarkupcommand % @command == @code.
+\newif\ifmarkuptex % @tex (and part of @math, for now).
+\newif\ifmarkupexample
+\newif\ifmarkupverb
+\newif\ifmarkupverbatim
+
+\let\currentmarkupstyle\empty
+
+\def\setupmarkupstyle#1{%
+ \csname markup#1true\endcsname
+ \def\currentmarkupstyle{#1}%
+ \markupstylesetup
+}
+
+\let\markupstylesetup\empty
+
+\def\defmarkupstylesetup#1{%
+ \expandafter\def\expandafter\markupstylesetup
+ \expandafter{\markupstylesetup #1}%
+ \def#1%
+}
+
+% Markup style setup for left and right quotes.
+\defmarkupstylesetup\markupsetuplq{%
+ \expandafter\let\expandafter \temp \csname markupsetuplq\currentmarkupstyle\endcsname
+ \ifx\temp\relax \markupsetuplqdefault \else \temp \fi
+}
+
+\defmarkupstylesetup\markupsetuprq{%
+ \expandafter\let\expandafter \temp \csname markupsetuprq\currentmarkupstyle\endcsname
+ \ifx\temp\relax \markupsetuprqdefault \else \temp \fi
+}
+
+{
+\catcode`\'=\active
+\catcode`\`=\active
+
+\gdef\markupsetuplqdefault{\let`\lq}
+\gdef\markupsetuprqdefault{\let'\rq}
+
+\gdef\markupsetcodequoteleft{\let`\codequoteleft}
+\gdef\markupsetcodequoteright{\let'\codequoteright}
+
+\gdef\markupsetnoligaturesquoteleft{\let`\noligaturesquoteleft}
+}
+
+\let\markupsetuplqcode \markupsetcodequoteleft
+\let\markupsetuprqcode \markupsetcodequoteright
+\let\markupsetuplqexample \markupsetcodequoteleft
+\let\markupsetuprqexample \markupsetcodequoteright
+\let\markupsetuplqverb \markupsetcodequoteleft
+\let\markupsetuprqverb \markupsetcodequoteright
+\let\markupsetuplqverbatim \markupsetcodequoteleft
+\let\markupsetuprqverbatim \markupsetcodequoteright
+
+\let\markupsetuplqsamp \markupsetnoligaturesquoteleft
+\let\markupsetuplqkbd \markupsetnoligaturesquoteleft
+
+% Allow an option to not replace quotes with a regular directed right
+% quote/apostrophe (char 0x27), but instead use the undirected quote
+% from cmtt (char 0x0d). The undirected quote is ugly, so don't make it
+% the default, but it works for pasting with more pdf viewers (at least
+% evince), the lilypond developers report. xpdf does work with the
+% regular 0x27.
+%
+\def\codequoteright{%
+ \expandafter\ifx\csname SETtxicodequoteundirected\endcsname\relax
+ \expandafter\ifx\csname SETcodequoteundirected\endcsname\relax
+ '%
+ \else \char'15 \fi
+ \else \char'15 \fi
+}
+%
+% and a similar option for the left quote char vs. a grave accent.
+% Modern fonts display ASCII 0x60 as a grave accent, so some people like
+% the code environments to do likewise.
+%
+\def\codequoteleft{%
+ \expandafter\ifx\csname SETtxicodequotebacktick\endcsname\relax
+ \expandafter\ifx\csname SETcodequotebacktick\endcsname\relax
+ % [Knuth] pp. 380,381,391
+ % \relax disables Spanish ligatures ?` and !` of \tt font.
+ \relax`%
+ \else \char'22 \fi
+ \else \char'22 \fi
+}
+
+% [Knuth] pp. 380,381,391, disable Spanish ligatures ?` and !` of \tt font.
+\def\noligaturesquoteleft{\relax\lq}
% Count depth in font-changes, for error checks
\newcount\fontdepth \fontdepth=0
-% Fonts for short table of contents.
-\setfont\shortcontrm\rmshape{12}{1000}{OT1}
-\setfont\shortcontbf\bfshape{10}{\magstep1}{OT1} % no cmb12
-\setfont\shortcontsl\slshape{12}{1000}{OT1}
-\setfont\shortconttt\ttshape{12}{1000}{OT1TT}
-
%% Add scribe-like font environments, plus @l for inline lisp (usually sans
%% serif) and @ii for TeX italic
@@ -2397,7 +2519,7 @@ end
% @var is set to this for defun arguments.
\def\ttslanted#1{{\ttsl #1}\futurelet\next\smartitalicx}
-% like \smartslanted except unconditionally use \sl. We never want
+% @cite is like \smartslanted except unconditionally use \sl. We never want
% ttsl for book titles, do we?
\def\cite#1{{\sl #1}\futurelet\next\smartitalicx}
@@ -2407,7 +2529,12 @@ end
\let\dfn=\smartslanted
\let\emph=\smartitalic
-% @b, explicit bold.
+% Explicit font changes: @r, @sc, undocumented @ii.
+\def\r#1{{\rm #1}} % roman font
+\def\sc#1{{\smallcaps#1}} % smallcaps font
+\def\ii#1{{\it #1}} % italic font
+
+% @b, explicit bold. Also @strong.
\def\b#1{{\bf #1}}
\let\strong=\b
@@ -2439,22 +2566,35 @@ end
\catcode`@=\other
\def\endofsentencespacefactor{3000}% default
+% @t, explicit typewriter.
\def\t#1{%
{\tt \rawbackslash \plainfrenchspacing #1}%
\null
}
+
+% @samp.
\def\samp#1{{\setupmarkupstyle{samp}\lq\tclose{#1}\rq\null}}
-\setfont\keyrm\rmshape{8}{1000}{OT1}
-\font\keysy=cmsy9
-\def\key#1{{\keyrm\textfont2=\keysy \leavevmode\hbox{%
- \raise0.4pt\hbox{\angleleft}\kern-.08em\vtop{%
- \vbox{\hrule\kern-0.4pt
- \hbox{\raise0.4pt\hbox{\vphantom{\angleleft}}#1}}%
- \kern-0.4pt\hrule}%
- \kern-.06em\raise0.4pt\hbox{\angleright}}}}
-\def\key #1{{\setupmarkupstyle{key}\nohyphenation \uppercase{#1}}\null}
-% The old definition, with no lozenge:
-%\def\key #1{{\ttsl \nohyphenation \uppercase{#1}}\null}
+
+% definition of @key that produces a lozenge. Doesn't adjust to text size.
+%\setfont\keyrm\rmshape{8}{1000}{OT1}
+%\font\keysy=cmsy9
+%\def\key#1{{\keyrm\textfont2=\keysy \leavevmode\hbox{%
+% \raise0.4pt\hbox{\angleleft}\kern-.08em\vtop{%
+% \vbox{\hrule\kern-0.4pt
+% \hbox{\raise0.4pt\hbox{\vphantom{\angleleft}}#1}}%
+% \kern-0.4pt\hrule}%
+% \kern-.06em\raise0.4pt\hbox{\angleright}}}}
+
+% definition of @key with no lozenge. If the current font is already
+% monospace, don't change it; that way, we respect @kbdinputstyle. But
+% if it isn't monospace, then use \tt.
+%
+\def\key#1{{\setupmarkupstyle{key}%
+ \nohyphenation
+ \ifmonospace\else\tt\fi
+ #1}\null}
+
+% ctrl is no longer a Texinfo command.
\def\ctrl #1{{\tt \rawbackslash \hat}#1}
% @file, @option are the same as @samp.
@@ -2532,7 +2672,7 @@ end
% each of the four underscores in __typeof__. This is undesirable in
% some manuals, especially if they don't have long identifiers in
% general. @allowcodebreaks provides a way to control this.
-%
+%
\newif\ifallowcodebreaks \allowcodebreakstrue
\def\keywordtrue{true}
@@ -2552,6 +2692,7 @@ end
% @kbd is like @code, except that if the argument is just one @key command,
% then @kbd has no effect.
+\def\kbd#1{{\setupmarkupstyle{kbd}\def\look{#1}\expandafter\kbdfoo\look??\par}}
% @kbdinputstyle -- arg is `distinct' (@kbd uses slanted tty font always),
% `example' (@kbd uses ttsl only inside of @example and friends),
@@ -2573,7 +2714,7 @@ end
\def\wordexample{example}
\def\wordcode{code}
-% Default is `distinct.'
+% Default is `distinct'.
\kbdinputstyle distinct
\def\xkey{\key}
@@ -2643,34 +2784,20 @@ end
\let\email=\uref
\fi
-% Check if we are currently using a typewriter font. Since all the
-% Computer Modern typewriter fonts have zero interword stretch (and
-% shrink), and it is reasonable to expect all typewriter fonts to have
-% this property, we can check that font parameter.
-%
-\def\ifmonospace{\ifdim\fontdimen3\font=0pt }
-
% Typeset a dimension, e.g., `in' or `pt'. The only reason for the
% argument is to make the input look right: @dmn{pt} instead of @dmn{}pt.
%
\def\dmn#1{\thinspace #1}
-\def\kbd#1{{\setupmarkupstyle{kbd}\def\look{#1}\expandafter\kbdfoo\look??\par}}
-
% @l was never documented to mean ``switch to the Lisp font'',
% and it is not used as such in any manual I can find. We need it for
% Polish suppressed-l. --karl, 22sep96.
%\def\l#1{{\li #1}\null}
-% Explicit font changes: @r, @sc, undocumented @ii.
-\def\r#1{{\rm #1}} % roman font
-\def\sc#1{{\smallcaps#1}} % smallcaps font
-\def\ii#1{{\it #1}} % italic font
-
% @acronym for "FBI", "NATO", and the like.
% We print this one point size smaller, since it's intended for
% all-uppercase.
-%
+%
\def\acronym#1{\doacronym #1,,\finish}
\def\doacronym#1,#2,#3\finish{%
{\selectfonts\lsize #1}%
@@ -2682,7 +2809,7 @@ end
% @abbr for "Comput. J." and the like.
% No font change, but don't do end-of-sentence spacing.
-%
+%
\def\abbr#1{\doabbr #1,,\finish}
\def\doabbr#1,#2,#3\finish{%
{\plainfrenchspacing #1}%
@@ -2692,6 +2819,44 @@ end
\fi
}
+
+\message{glyphs,}
+
+% @point{}, @result{}, @expansion{}, @print{}, @equiv{}.
+%
+% Since these characters are used in examples, they should be an even number of
+% \tt widths. Each \tt character is 1en, so two makes it 1em.
+%
+\def\point{$\star$}
+\def\arrow{\leavevmode\raise.05ex\hbox to 1em{\hfil$\rightarrow$\hfil}}
+\def\result{\leavevmode\raise.05ex\hbox to 1em{\hfil$\Rightarrow$\hfil}}
+\def\expansion{\leavevmode\hbox to 1em{\hfil$\mapsto$\hfil}}
+\def\print{\leavevmode\lower.1ex\hbox to 1em{\hfil$\dashv$\hfil}}
+\def\equiv{\leavevmode\hbox to 1em{\hfil$\ptexequiv$\hfil}}
+
+% The @error{} command.
+% Adapted from the TeXbook's \boxit.
+%
+\newbox\errorbox
+%
+{\tentt \global\dimen0 = 3em}% Width of the box.
+\dimen2 = .55pt % Thickness of rules
+% The text. (`r' is open on the right, `e' somewhat less so on the left.)
+\setbox0 = \hbox{\kern-.75pt \reducedsf error\kern-1.5pt}
+%
+\setbox\errorbox=\hbox to \dimen0{\hfil
+ \hsize = \dimen0 \advance\hsize by -5.8pt % Space to left+right.
+ \advance\hsize by -2\dimen2 % Rules.
+ \vbox{%
+ \hrule height\dimen2
+ \hbox{\vrule width\dimen2 \kern3pt % Space to left of text.
+ \vtop{\kern2.4pt \box0 \kern2.4pt}% Space above/below.
+ \kern3pt\vrule width\dimen2}% Space to right.
+ \hrule height\dimen2}
+ \hfil}
+%
+\def\error{\leavevmode\lower.7ex\copy\errorbox}
+
% @pounds{} is a sterling sign, which Knuth put in the CM italic font.
%
\def\pounds{{\it\$}}
@@ -2701,52 +2866,59 @@ end
% Theiling, which support regular, slanted, bold and bold slanted (and
% "outlined" (blackboard board, sort of) versions, which we don't need).
% It is available from http://www.ctan.org/tex-archive/fonts/eurosym.
-%
+%
% Although only regular is the truly official Euro symbol, we ignore
% that. The Euro is designed to be slightly taller than the regular
% font height.
-%
+%
% feymr - regular
% feymo - slanted
% feybr - bold
% feybo - bold slanted
-%
+%
% There is no good (free) typewriter version, to my knowledge.
% A feymr10 euro is ~7.3pt wide, while a normal cmtt10 char is ~5.25pt wide.
% Hmm.
-%
+%
% Also doesn't work in math. Do we need to do math with euro symbols?
% Hope not.
-%
-%
+%
+%
\def\euro{{\eurofont e}}
\def\eurofont{%
% We set the font at each command, rather than predefining it in
% \textfonts and the other font-switching commands, so that
% installations which never need the symbol don't have to have the
% font installed.
- %
+ %
% There is only one designed size (nominal 10pt), so we always scale
% that to the current nominal size.
- %
+ %
% By the way, simply using "at 1em" works for cmr10 and the like, but
% does not work for cmbx10 and other extended/shrunken fonts.
- %
+ %
\def\eurosize{\csname\curfontsize nominalsize\endcsname}%
%
- \ifx\curfontstyle\bfstylename
+ \ifx\curfontstyle\bfstylename
% bold:
\font\thiseurofont = \ifusingit{feybo10}{feybr10} at \eurosize
- \else
+ \else
% regular:
\font\thiseurofont = \ifusingit{feymo10}{feymr10} at \eurosize
\fi
\thiseurofont
}
-% Hacks for glyphs from the EC fonts similar to \euro. We don't
-% use \let for the aliases, because sometimes we redefine the original
-% macro, and the alias should reflect the redefinition.
+% Glyphs from the EC fonts. We don't use \let for the aliases, because
+% sometimes we redefine the original macro, and the alias should reflect
+% the redefinition.
+%
+% Use LaTeX names for the Icelandic letters.
+\def\DH{{\ecfont \char"D0}} % Eth
+\def\dh{{\ecfont \char"F0}} % eth
+\def\TH{{\ecfont \char"DE}} % Thorn
+\def\th{{\ecfont \char"FE}} % thorn
+%
\def\guillemetleft{{\ecfont \char"13}}
\def\guillemotleft{\guillemetleft}
\def\guillemetright{{\ecfont \char"14}}
@@ -2760,7 +2932,7 @@ end
% we have the precomposed glyphs for the most common cases. We put the
% tests to use those glyphs in the single \ogonek macro so we have fewer
% dummy definitions to worry about for index entries, etc.
-%
+%
% ogonek is also used with other letters in Lithuanian (IOU), but using
% the precomposed glyphs for those is not so easy since they aren't in
% the same EC font.
@@ -2783,6 +2955,7 @@ end
\def\Eogonek{{\ecfont \char"86}}\def\macrocharE{E}
\def\eogonek{{\ecfont \char"A6}}\def\macrochare{e}
%
+% Use the ec* fonts (cm-super in outline format) for non-CM glyphs.
\def\ecfont{%
% We can't distinguish serif/sans and italic/slanted, but this
% is used for crude hacks anyway (like adding French and German
@@ -2817,7 +2990,7 @@ end
% Laurent Siebenmann reports \Orb undefined with:
% Textures 1.7.7 (preloaded format=plain 93.10.14) (68K) 16 APR 2004 02:38
% so we'll define it if necessary.
-%
+%
\ifx\Orb\undefined
\def\Orb{\mathhexbox20D}
\fi
@@ -3163,7 +3336,7 @@ end
% cause the example and the item to crash together. So we use this
% bizarre value of 10001 as a signal to \aboveenvbreak to insert
% \parskip glue after all. Section titles are handled this way also.
- %
+ %
\penalty 10001
\endgroup
\itemxneedsnegativevskipfalse
@@ -3257,9 +3430,18 @@ end
\parindent=0pt
\parskip=\smallskipamount
\ifdim\parskip=0pt \parskip=2pt \fi
+ %
+ % Try typesetting the item mark that if the document erroneously says
+ % something like @itemize @samp (intending @table), there's an error
+ % right away at the @itemize. It's not the best error message in the
+ % world, but it's better than leaving it to the @item. This means if
+ % the user wants an empty mark, they have to say @w{} not just @w.
\def\itemcontents{#1}%
+ \setbox0 = \hbox{\itemcontents}%
+ %
% @itemize with no arg is equivalent to @itemize @bullet.
\ifx\itemcontents\empty\def\itemcontents{\bullet}\fi
+ %
\let\item=\itemizeitem
}
@@ -3280,6 +3462,7 @@ end
\ifnum\lastpenalty<10000 \parskip=0in \fi
\noindent
\hbox to 0pt{\hss \itemcontents \kern\itemmargin}%
+ %
\vadjust{\penalty 1200}}% not good to break after first line of item.
\flushcr
}
@@ -3501,12 +3684,19 @@ end
%
% @headitem starts a heading row, which we typeset in bold.
% Assignments have to be global since we are inside the implicit group
-% of an alignment entry. Note that \everycr resets \everytab.
-\def\headitem{\checkenv\multitable \crcr \global\everytab={\bf}\the\everytab}%
+% of an alignment entry. \everycr resets \everytab so we don't have to
+% undo it ourselves.
+\def\headitemfont{\b}% for people to use in the template row; not changeable
+\def\headitem{%
+ \checkenv\multitable
+ \crcr
+ \global\everytab={\bf}% can't use \headitemfont since the parsing differs
+ \the\everytab % for the first item
+}%
%
% A \tab used to include \hskip1sp. But then the space in a template
% line is not enough. That is bad. So let's go back to just `&' until
-% we encounter the problem it was intended to solve again.
+% we again encounter the problem the 1sp was intended to solve.
% --karl, nathan@acm.org, 20apr99.
\def\tab{\checkenv\multitable &\the\everytab}%
@@ -3959,7 +4149,7 @@ end
% processing continues to some further point. On the other hand, it
% seems \endinput does not hurt in the printed index arg, since that
% is still getting written without apparent harm.
- %
+ %
% Sample source (mac-idx3.tex, reported by Graham Percival to
% help-texinfo, 22may06):
% @macro funindex {WORD}
@@ -3967,12 +4157,12 @@ end
% @end macro
% ...
% @funindex commtest
- %
+ %
% The above is not enough to reproduce the bug, but it gives the flavor.
- %
+ %
% Sample whatsit resulting:
% .@write3{\entry{xyz}{@folio }{@code {xyz@endinput }}}
- %
+ %
% So:
\let\endinput = \empty
%
@@ -4024,19 +4214,23 @@ end
% Non-English letters.
\definedummyword\AA
\definedummyword\AE
+ \definedummyword\DH
\definedummyword\L
- \definedummyword\OE
\definedummyword\O
+ \definedummyword\OE
+ \definedummyword\TH
\definedummyword\aa
\definedummyword\ae
+ \definedummyword\dh
+ \definedummyword\exclamdown
\definedummyword\l
- \definedummyword\oe
\definedummyword\o
- \definedummyword\ss
- \definedummyword\exclamdown
- \definedummyword\questiondown
+ \definedummyword\oe
\definedummyword\ordf
\definedummyword\ordm
+ \definedummyword\questiondown
+ \definedummyword\ss
+ \definedummyword\th
%
% Although these internal commands shouldn't show up, sometimes they do.
\definedummyword\bf
@@ -4131,6 +4325,7 @@ end
\definedummyword\code
\definedummyword\command
\definedummyword\dfn
+ \definedummyword\email
\definedummyword\emph
\definedummyword\env
\definedummyword\file
@@ -4179,19 +4374,23 @@ end
% Non-English letters.
\def\AA{AA}%
\def\AE{AE}%
+ \def\DH{DZZ}%
\def\L{L}%
\def\OE{OE}%
\def\O{O}%
+ \def\TH{ZZZ}%
\def\aa{aa}%
\def\ae{ae}%
+ \def\dh{dzz}%
+ \def\exclamdown{!}%
\def\l{l}%
\def\oe{oe}%
- \def\o{o}%
- \def\ss{ss}%
- \def\exclamdown{!}%
- \def\questiondown{?}%
\def\ordf{a}%
\def\ordm{o}%
+ \def\o{o}%
+ \def\questiondown{?}%
+ \def\ss{ss}%
+ \def\th{zzz}%
%
\def\LaTeX{LaTeX}%
\def\TeX{TeX}%
@@ -4201,20 +4400,19 @@ end
\def\bullet{bullet}%
\def\comma{,}%
\def\copyright{copyright}%
- \def\registeredsymbol{R}%
\def\dots{...}%
\def\enddots{...}%
\def\equiv{==}%
\def\error{error}%
\def\euro{euro}%
+ \def\expansion{==>}%
\def\guillemetleft{<<}%
\def\guillemetright{>>}%
\def\guilsinglleft{<}%
\def\guilsinglright{>}%
- \def\expansion{==>}%
\def\minus{-}%
- \def\pounds{pounds}%
\def\point{.}%
+ \def\pounds{pounds}%
\def\print{-|}%
\def\quotedblbase{"}%
\def\quotedblleft{"}%
@@ -4222,19 +4420,20 @@ end
\def\quoteleft{`}%
\def\quoteright{'}%
\def\quotesinglbase{,}%
+ \def\registeredsymbol{R}%
\def\result{=>}%
- \def\textdegree{degrees}%
+ \def\textdegree{o}%
%
% We need to get rid of all macros, leaving only the arguments (if present).
% Of course this is not nearly correct, but it is the best we can do for now.
% makeinfo does not expand macros in the argument to @deffn, which ends up
% writing an index entry, and texindex isn't prepared for an index sort entry
% that starts with \.
- %
+ %
% Since macro invocations are followed by braces, we can just redefine them
% to take a single TeX argument. The case of a macro invocation that
% goes to end-of-line is not handled.
- %
+ %
\macrolist
}
@@ -4362,7 +4561,7 @@ end
% to re-insert the same penalty (values >10000 are used for various
% signals); since we just inserted a non-discardable item, any
% following glue (such as a \parskip) would be a breakpoint. For example:
- %
+ %
% @deffn deffn-whatever
% @vindex index-whatever
% Description.
@@ -4943,7 +5142,9 @@ end
\gdef\chaplevelprefix{\the\chapno.}%
\resetallfloatnos
%
- \message{\putwordChapter\space \the\chapno}%
+ % \putwordChapter can contain complex things in translations.
+ \toks0=\expandafter{\putwordChapter}%
+ \message{\the\toks0 \space \the\chapno}%
%
% Write the actual heading.
\chapmacro{#1}{Ynumbered}{\the\chapno}%
@@ -4954,15 +5155,17 @@ end
\global\let\subsubsection = \numberedsubsubsec
}
-\outer\parseargdef\appendix{\apphead0{#1}} % normally apphead0 calls appendixzzz
+\outer\parseargdef\appendix{\apphead0{#1}} % normally calls appendixzzz
+%
\def\appendixzzz#1{%
\global\secno=0 \global\subsecno=0 \global\subsubsecno=0
\global\advance\appendixno by 1
\gdef\chaplevelprefix{\appendixletter.}%
\resetallfloatnos
%
- \def\appendixnum{\putwordAppendix\space \appendixletter}%
- \message{\appendixnum}%
+ % \putwordAppendix can contain complex things in translations.
+ \toks0=\expandafter{\putwordAppendix}%
+ \message{\the\toks0 \space \appendixletter}%
%
\chapmacro{#1}{Yappendix}{\appendixletter}%
%
@@ -5102,7 +5305,7 @@ end
\def\chapheading{\chapbreak \parsearg\chapheadingzzz}
\def\chapheadingzzz#1{%
{\chapfonts \vbox{\hyphenpenalty=10000\tolerance=5000
- \parindent=0pt\raggedright
+ \parindent=0pt\ptexraggedright
\rmisbold #1\hfill}}%
\bigskip \par\penalty 200\relax
\suppressfirstparagraphindent
@@ -5195,7 +5398,10 @@ end
\xdef\lastchapterdefs{%
\gdef\noexpand\thischaptername{\the\toks0}%
\gdef\noexpand\thischapternum{\appendixletter}%
- \gdef\noexpand\thischapter{\putwordAppendix{} \noexpand\thischapternum:
+ % \noexpand\putwordAppendix avoids expanding indigestible
+ % commands in some of the translations.
+ \gdef\noexpand\thischapter{\noexpand\putwordAppendix{}
+ \noexpand\thischapternum:
\noexpand\thischaptername}%
}%
\else
@@ -5203,7 +5409,10 @@ end
\xdef\lastchapterdefs{%
\gdef\noexpand\thischaptername{\the\toks0}%
\gdef\noexpand\thischapternum{\the\chapno}%
- \gdef\noexpand\thischapter{\putwordChapter{} \noexpand\thischapternum:
+ % \noexpand\putwordChapter avoids expanding indigestible
+ % commands in some of the translations.
+ \gdef\noexpand\thischapter{\noexpand\putwordChapter{}
+ \noexpand\thischapternum:
\noexpand\thischaptername}%
}%
\fi\fi\fi
@@ -5259,7 +5468,7 @@ end
%
% Typeset the actual heading.
\nobreak % Avoid page breaks at the interline glue.
- \vbox{\hyphenpenalty=10000 \tolerance=5000 \parindent=0pt \raggedright
+ \vbox{\hyphenpenalty=10000 \tolerance=5000 \parindent=0pt \ptexraggedright
\hangindent=\wd0 \centerparametersmaybe
\unhbox0 #1\par}%
}%
@@ -5283,7 +5492,7 @@ end
%
\def\unnchfopen #1{%
\chapoddpage {\chapfonts \vbox{\hyphenpenalty=10000\tolerance=5000
- \parindent=0pt\raggedright
+ \parindent=0pt\ptexraggedright
\rmisbold #1\hfill}}\bigskip \par\nobreak
}
\def\chfopen #1#2{\chapoddpage {\chapfonts
@@ -5346,7 +5555,10 @@ end
\xdef\lastsectiondefs{%
\gdef\noexpand\thissectionname{\the\toks0}%
\gdef\noexpand\thissectionnum{#4}%
- \gdef\noexpand\thissection{\putwordSection{} \noexpand\thissectionnum:
+ % \noexpand\putwordSection avoids expanding indigestible
+ % commands in some of the translations.
+ \gdef\noexpand\thissection{\noexpand\putwordSection{}
+ \noexpand\thissectionnum:
\noexpand\thissectionname}%
}%
\fi
@@ -5356,12 +5568,20 @@ end
\xdef\lastsectiondefs{%
\gdef\noexpand\thissectionname{\the\toks0}%
\gdef\noexpand\thissectionnum{#4}%
- \gdef\noexpand\thissection{\putwordSection{} \noexpand\thissectionnum:
+ % \noexpand\putwordSection avoids expanding indigestible
+ % commands in some of the translations.
+ \gdef\noexpand\thissection{\noexpand\putwordSection{}
+ \noexpand\thissectionnum:
\noexpand\thissectionname}%
}%
\fi
\fi\fi\fi
%
+ % Go into vertical mode. Usually we'll already be there, but we
+ % don't want the following whatsit to end up in a preceding paragraph
+ % if the document didn't happen to have a blank line.
+ \par
+ %
% Output the mark. Pass it through \safewhatsit, to take care of
% the preceding space.
\safewhatsit\domark
@@ -5411,7 +5631,7 @@ end
\nobreak
%
% Output the actual section heading.
- \vbox{\hyphenpenalty=10000 \tolerance=5000 \parindent=0pt \raggedright
+ \vbox{\hyphenpenalty=10000 \tolerance=5000 \parindent=0pt \ptexraggedright
\hangindent=\wd0 % zero if no section number
\unhbox0 #1}%
}%
@@ -5427,11 +5647,11 @@ end
% glue accumulate. (Not a breakpoint because it's preceded by a
% discardable item.)
\vskip-\parskip
- %
+ %
% This is purely so the last item on the list is a known \penalty >
% 10000. This is so \startdefun can avoid allowing breakpoints after
% section headings. Otherwise, it would insert a valid breakpoint between:
- %
+ %
% @section sec-whatever
% @deffn def-whatever
\penalty 10001
@@ -5489,7 +5709,7 @@ end
% These characters do not print properly in the Computer Modern roman
% fonts, so we must take special care. This is more or less redundant
% with the Texinfo input format setup at the end of this file.
-%
+%
\def\activecatcodes{%
\catcode`\"=\active
\catcode`\$=\active
@@ -5539,7 +5759,7 @@ end
% redefined for the two-volume lispref. We always output on
% \jobname.toc even if this is redefined.
-%
+%
\def\tocreadfilename{\jobname.toc}
% Normal (long) toc.
@@ -5709,144 +5929,6 @@ end
\message{environments,}
% @foo ... @end foo.
-% Markup style infrastructure. \defmarkupstylesetup\INITMACRO will
-% define and register \INITMACRO to be called on markup style changes.
-% \INITMACRO can check \currentmarkupstyle for the innermost
-% style and the set of \ifmarkupSTYLE switches for all styles
-% currently in effect.
-\newif\ifmarkupvar
-\newif\ifmarkupsamp
-\newif\ifmarkupkey
-%\newif\ifmarkupfile % @file == @samp.
-%\newif\ifmarkupoption % @option == @samp.
-\newif\ifmarkupcode
-\newif\ifmarkupkbd
-%\newif\ifmarkupenv % @env == @code.
-%\newif\ifmarkupcommand % @command == @code.
-\newif\ifmarkuptex % @tex (and part of @math, for now).
-\newif\ifmarkupexample
-\newif\ifmarkupverb
-\newif\ifmarkupverbatim
-
-\let\currentmarkupstyle\empty
-
-\def\setupmarkupstyle#1{%
- \csname markup#1true\endcsname
- \def\currentmarkupstyle{#1}%
- \markupstylesetup
-}
-
-\let\markupstylesetup\empty
-
-\def\defmarkupstylesetup#1{%
- \expandafter\def\expandafter\markupstylesetup
- \expandafter{\markupstylesetup #1}%
- \def#1%
-}
-
-% Markup style setup for left and right quotes.
-\defmarkupstylesetup\markupsetuplq{%
- \expandafter\let\expandafter \temp \csname markupsetuplq\currentmarkupstyle\endcsname
- \ifx\temp\relax \markupsetuplqdefault \else \temp \fi
-}
-
-\defmarkupstylesetup\markupsetuprq{%
- \expandafter\let\expandafter \temp \csname markupsetuprq\currentmarkupstyle\endcsname
- \ifx\temp\relax \markupsetuprqdefault \else \temp \fi
-}
-
-{
-\catcode`\'=\active
-\catcode`\`=\active
-
-\gdef\markupsetuplqdefault{\let`\lq}
-\gdef\markupsetuprqdefault{\let'\rq}
-
-\gdef\markupsetcodequoteleft{\let`\codequoteleft}
-\gdef\markupsetcodequoteright{\let'\codequoteright}
-
-\gdef\markupsetnoligaturesquoteleft{\let`\noligaturesquoteleft}
-}
-
-\let\markupsetuplqcode \markupsetcodequoteleft
-\let\markupsetuprqcode \markupsetcodequoteright
-\let\markupsetuplqexample \markupsetcodequoteleft
-\let\markupsetuprqexample \markupsetcodequoteright
-\let\markupsetuplqverb \markupsetcodequoteleft
-\let\markupsetuprqverb \markupsetcodequoteright
-\let\markupsetuplqverbatim \markupsetcodequoteleft
-\let\markupsetuprqverbatim \markupsetcodequoteright
-
-\let\markupsetuplqsamp \markupsetnoligaturesquoteleft
-\let\markupsetuplqkbd \markupsetnoligaturesquoteleft
-
-% Allow an option to not replace quotes with a regular directed right
-% quote/apostrophe (char 0x27), but instead use the undirected quote
-% from cmtt (char 0x0d). The undirected quote is ugly, so don't make it
-% the default, but it works for pasting with more pdf viewers (at least
-% evince), the lilypond developers report. xpdf does work with the
-% regular 0x27.
-%
-\def\codequoteright{%
- \expandafter\ifx\csname SETtxicodequoteundirected\endcsname\relax
- \expandafter\ifx\csname SETcodequoteundirected\endcsname\relax
- '%
- \else \char'15 \fi
- \else \char'15 \fi
-}
-%
-% and a similar option for the left quote char vs. a grave accent.
-% Modern fonts display ASCII 0x60 as a grave accent, so some people like
-% the code environments to do likewise.
-%
-\def\codequoteleft{%
- \expandafter\ifx\csname SETtxicodequotebacktick\endcsname\relax
- \expandafter\ifx\csname SETcodequotebacktick\endcsname\relax
- % [Knuth] pp. 380,381,391
- % \relax disables Spanish ligatures ?` and !` of \tt font.
- \relax`%
- \else \char'22 \fi
- \else \char'22 \fi
-}
-
-% [Knuth] pp. 380,381,391, disable Spanish ligatures ?` and !` of \tt font.
-\def\noligaturesquoteleft{\relax\lq}
-
-% @point{}, @result{}, @expansion{}, @print{}, @equiv{}.
-%
-% Since these characters are used in examples, they should be an even number of
-% \tt widths. Each \tt character is 1en, so two makes it 1em.
-%
-\def\point{$\star$}
-\def\arrow{\leavevmode\raise.05ex\hbox to 1em{\hfil$\rightarrow$\hfil}}
-\def\result{\leavevmode\raise.05ex\hbox to 1em{\hfil$\Rightarrow$\hfil}}
-\def\expansion{\leavevmode\hbox to 1em{\hfil$\mapsto$\hfil}}
-\def\print{\leavevmode\lower.1ex\hbox to 1em{\hfil$\dashv$\hfil}}
-\def\equiv{\leavevmode\hbox to 1em{\hfil$\ptexequiv$\hfil}}
-
-% The @error{} command.
-% Adapted from the TeXbook's \boxit.
-%
-\newbox\errorbox
-%
-{\tentt \global\dimen0 = 3em}% Width of the box.
-\dimen2 = .55pt % Thickness of rules
-% The text. (`r' is open on the right, `e' somewhat less so on the left.)
-\setbox0 = \hbox{\kern-.75pt \reducedsf error\kern-1.5pt}
-%
-\setbox\errorbox=\hbox to \dimen0{\hfil
- \hsize = \dimen0 \advance\hsize by -5.8pt % Space to left+right.
- \advance\hsize by -2\dimen2 % Rules.
- \vbox{%
- \hrule height\dimen2
- \hbox{\vrule width\dimen2 \kern3pt % Space to left of text.
- \vtop{\kern2.4pt \box0 \kern2.4pt}% Space above/below.
- \kern3pt\vrule width\dimen2}% Space to right.
- \hrule height\dimen2}
- \hfil}
-%
-\def\error{\leavevmode\lower.7ex\copy\errorbox}
-
% @tex ... @end tex escapes into raw Tex temporarily.
% One exception: @ is still an escape character, so that @end tex works.
% But \@ or @@ will get a plain tex @ character.
@@ -5999,6 +6081,7 @@ end
% This macro is called at the beginning of all the @example variants,
% inside a group.
+\newdimen\nonfillparindent
\def\nonfillstart{%
\aboveenvbreak
\hfuzz = 12pt % Don't be fussy
@@ -6006,7 +6089,12 @@ end
\let\par = \lisppar % don't ignore blank lines
\obeylines % each line of input is a line of output
\parskip = 0pt
+ % Turn off paragraph indentation but redefine \indent to emulate
+ % the normal \indent.
+ \nonfillparindent=\parindent
\parindent = 0pt
+ \let\indent\nonfillindent
+ %
\emergencystretch = 0pt % don't try to avoid overfull boxes
\ifx\nonarrowing\relax
\advance \leftskip by \lispnarrowing
@@ -6017,6 +6105,24 @@ end
\let\exdent=\nofillexdent
}
+\begingroup
+\obeyspaces
+% We want to swallow spaces (but not other tokens) after the fake
+% @indent in our nonfill-environments, where spaces are normally
+% active and set to @tie, resulting in them not being ignored after
+% @indent.
+\gdef\nonfillindent{\futurelet\temp\nonfillindentcheck}%
+\gdef\nonfillindentcheck{%
+\ifx\temp %
+\expandafter\nonfillindentgobble%
+\else%
+\leavevmode\nonfillindentbox%
+\fi%
+}%
+\endgroup
+\def\nonfillindentgobble#1{\nonfillindent}
+\def\nonfillindentbox{\hbox to \nonfillparindent{\hss}}
+
% If you want all examples etc. small: @set dispenvsize small.
% If you want even small examples the full size: @set dispenvsize nosmall.
% This affects the following displayed environments:
@@ -6103,6 +6209,30 @@ end
\let\Eflushright = \afterenvbreak
+% @raggedright does more-or-less normal line breaking but no right
+% justification. From plain.tex.
+\envdef\raggedright{%
+ \rightskip0pt plus2em \spaceskip.3333em \xspaceskip.5em\relax
+}
+\let\Eraggedright\par
+
+\envdef\raggedleft{%
+ \parindent=0pt \leftskip0pt plus2em
+ \spaceskip.3333em \xspaceskip.5em \parfillskip=0pt
+ \hbadness=10000 % Last line will usually be underfull, so turn off
+ % badness reporting.
+}
+\let\Eraggedleft\par
+
+\envdef\raggedcenter{%
+ \parindent=0pt \rightskip0pt plus1em \leftskip0pt plus1em
+ \spaceskip.3333em \xspaceskip.5em \parfillskip=0pt
+ \hbadness=10000 % Last line will usually be underfull, so turn off
+ % badness reporting.
+}
+\let\Eraggedcenter\par
+
+
% @quotation does normal linebreaking (hence we can't use \nonfillstart)
% and narrows the margins. We keep \parskip nonzero in general, since
% we're doing normal filling. So, when using \aboveenvbreak and
@@ -6721,7 +6851,7 @@ end
% This does \let #1 = #2, with \csnames; that is,
% \let \csname#1\endcsname = \csname#2\endcsname
% (except of course we have to play expansion games).
-%
+%
\def\cslet#1#2{%
\expandafter\let
\csname#1\expandafter\endcsname
@@ -7881,21 +8011,22 @@ end
\closein 1
\endgroup % end raw TeX
\endgroup}
-}
%
% If they passed de_DE, and txi-de_DE.tex doesn't exist,
% try txi-de.tex.
-%
-\def\documentlanguagetrywithoutunderscore#1_#2\finish{%
+%
+\gdef\documentlanguagetrywithoutunderscore#1_#2\finish{%
\openin 1 txi-#1.tex
\ifeof 1
\errhelp = \nolanghelp
\errmessage{Cannot read language file txi-#1.tex}%
\else
+ \globaldefs = 1 % everything in the txi-LL files needs to persist
\input txi-#1.tex
\fi
\closein 1
}
+}% end of special _ catcode
%
\newhelp\nolanghelp{The given language definition file cannot be found or
is empty. Maybe you need to install it? Putting it in the current
@@ -7904,16 +8035,16 @@ directory should work if nowhere else does.}
% This macro is called from txi-??.tex files; the first argument is the
% \language name to set (without the "\lang@" prefix), the second and
% third args are \{left,right}hyphenmin.
-%
+%
% The language names to pass are determined when the format is built.
% See the etex.log file created at that time, e.g.,
% /usr/local/texlive/2008/texmf-var/web2c/pdftex/etex.log.
-%
+%
% With TeX Live 2008, etex now includes hyphenation patterns for all
% available languages. This means we can support hyphenation in
% Texinfo, at least to some extent. (This still doesn't solve the
% accented characters problem.)
-%
+%
\catcode`@=11
\def\txisetlanguage#1#2#3{%
% do not set the language if the name is undefined in the current TeX.
@@ -7968,7 +8099,7 @@ directory should work if nowhere else does.}
\setnonasciicharscatcode\active
\lattwochardefs
%
- \else \ifx \declaredencoding \latone
+ \else \ifx \declaredencoding \latone
\setnonasciicharscatcode\active
\latonechardefs
%
@@ -7980,7 +8111,7 @@ directory should work if nowhere else does.}
\setnonasciicharscatcode\active
\utfeightchardefs
%
- \else
+ \else
\message{Unknown document encoding #1, ignoring.}%
%
\fi % utfeight
@@ -7992,7 +8123,7 @@ directory should work if nowhere else does.}
% A message to be logged when using a character that isn't available
% the default font encoding (OT1).
-%
+%
\def\missingcharmsg#1{\message{Character missing in OT1 encoding: #1.}}
% Take account of \c (plain) vs. \, (Texinfo) difference.
@@ -8005,21 +8136,21 @@ directory should work if nowhere else does.}
%
% Latin1 (ISO-8859-1) character definitions.
\def\latonechardefs{%
- \gdef^^a0{~}
+ \gdef^^a0{~}
\gdef^^a1{\exclamdown}
- \gdef^^a2{\missingcharmsg{CENT SIGN}}
+ \gdef^^a2{\missingcharmsg{CENT SIGN}}
\gdef^^a3{{\pounds}}
\gdef^^a4{\missingcharmsg{CURRENCY SIGN}}
\gdef^^a5{\missingcharmsg{YEN SIGN}}
- \gdef^^a6{\missingcharmsg{BROKEN BAR}}
+ \gdef^^a6{\missingcharmsg{BROKEN BAR}}
\gdef^^a7{\S}
- \gdef^^a8{\"{}}
- \gdef^^a9{\copyright}
+ \gdef^^a8{\"{}}
+ \gdef^^a9{\copyright}
\gdef^^aa{\ordf}
\gdef^^ab{\guillemetleft}
\gdef^^ac{$\lnot$}
- \gdef^^ad{\-}
- \gdef^^ae{\registeredsymbol}
+ \gdef^^ad{\-}
+ \gdef^^ae{\registeredsymbol}
\gdef^^af{\={}}
%
\gdef^^b0{\textdegree}
@@ -8046,7 +8177,7 @@ directory should work if nowhere else does.}
\gdef^^c2{\^A}
\gdef^^c3{\~A}
\gdef^^c4{\"A}
- \gdef^^c5{\ringaccent A}
+ \gdef^^c5{\ringaccent A}
\gdef^^c6{\AE}
\gdef^^c7{\cedilla C}
\gdef^^c8{\`E}
@@ -8058,7 +8189,7 @@ directory should work if nowhere else does.}
\gdef^^ce{\^I}
\gdef^^cf{\"I}
%
- \gdef^^d0{\missingcharmsg{LATIN CAPITAL LETTER ETH}}
+ \gdef^^d0{\DH}
\gdef^^d1{\~N}
\gdef^^d2{\`O}
\gdef^^d3{\'O}
@@ -8072,7 +8203,7 @@ directory should work if nowhere else does.}
\gdef^^db{\^U}
\gdef^^dc{\"U}
\gdef^^dd{\'Y}
- \gdef^^de{\missingcharmsg{LATIN CAPITAL LETTER THORN}}
+ \gdef^^de{\TH}
\gdef^^df{\ss}
%
\gdef^^e0{\`a}
@@ -8092,7 +8223,7 @@ directory should work if nowhere else does.}
\gdef^^ee{\^{\dotless i}}
\gdef^^ef{\"{\dotless i}}
%
- \gdef^^f0{\missingcharmsg{LATIN SMALL LETTER ETH}}
+ \gdef^^f0{\dh}
\gdef^^f1{\~n}
\gdef^^f2{\`o}
\gdef^^f3{\'o}
@@ -8106,7 +8237,7 @@ directory should work if nowhere else does.}
\gdef^^fb{\^u}
\gdef^^fc{\"u}
\gdef^^fd{\'y}
- \gdef^^fe{\missingcharmsg{LATIN SMALL LETTER THORN}}
+ \gdef^^fe{\th}
\gdef^^ff{\"y}
}
@@ -8178,7 +8309,7 @@ directory should work if nowhere else does.}
\gdef^^ce{\^I}
\gdef^^cf{\v D}
%
- \gdef^^d0{\missingcharmsg{LATIN CAPITAL LETTER D WITH STROKE}}
+ \gdef^^d0{\DH}
\gdef^^d1{\'N}
\gdef^^d2{\v N}
\gdef^^d3{\'O}
@@ -8187,7 +8318,7 @@ directory should work if nowhere else does.}
\gdef^^d6{\"O}
\gdef^^d7{$\times$}
\gdef^^d8{\v R}
- \gdef^^d9{\ringaccent U}
+ \gdef^^d9{\ringaccent U}
\gdef^^da{\'U}
\gdef^^db{\H U}
\gdef^^dc{\"U}
@@ -8212,7 +8343,7 @@ directory should work if nowhere else does.}
\gdef^^ee{\^\i}
\gdef^^ef{\v d}
%
- \gdef^^f0{\missingcharmsg{LATIN SMALL LETTER D WITH STROKE}}
+ \gdef^^f0{\dh}
\gdef^^f1{\'n}
\gdef^^f2{\v n}
\gdef^^f3{\'o}
@@ -8231,11 +8362,11 @@ directory should work if nowhere else does.}
}
% UTF-8 character definitions.
-%
+%
% This code to support UTF-8 is based on LaTeX's utf8.def, with some
% changes for Texinfo conventions. It is included here under the GPL by
% permission from Frank Mittelbach and the LaTeX team.
-%
+%
\newcount\countUTFx
\newcount\countUTFy
\newcount\countUTFz
@@ -8385,6 +8516,7 @@ directory should work if nowhere else does.}
\DeclareUnicodeCharacter{00CE}{\^I}
\DeclareUnicodeCharacter{00CF}{\"I}
+ \DeclareUnicodeCharacter{00D0}{\DH}
\DeclareUnicodeCharacter{00D1}{\~N}
\DeclareUnicodeCharacter{00D2}{\`O}
\DeclareUnicodeCharacter{00D3}{\'O}
@@ -8397,6 +8529,7 @@ directory should work if nowhere else does.}
\DeclareUnicodeCharacter{00DB}{\^U}
\DeclareUnicodeCharacter{00DC}{\"U}
\DeclareUnicodeCharacter{00DD}{\'Y}
+ \DeclareUnicodeCharacter{00DE}{\TH}
\DeclareUnicodeCharacter{00DF}{\ss}
\DeclareUnicodeCharacter{00E0}{\`a}
@@ -8416,6 +8549,7 @@ directory should work if nowhere else does.}
\DeclareUnicodeCharacter{00EE}{\^{\dotless{i}}}
\DeclareUnicodeCharacter{00EF}{\"{\dotless{i}}}
+ \DeclareUnicodeCharacter{00F0}{\dh}
\DeclareUnicodeCharacter{00F1}{\~n}
\DeclareUnicodeCharacter{00F2}{\`o}
\DeclareUnicodeCharacter{00F3}{\'o}
@@ -8428,6 +8562,7 @@ directory should work if nowhere else does.}
\DeclareUnicodeCharacter{00FB}{\^u}
\DeclareUnicodeCharacter{00FC}{\"u}
\DeclareUnicodeCharacter{00FD}{\'y}
+ \DeclareUnicodeCharacter{00FE}{\th}
\DeclareUnicodeCharacter{00FF}{\"y}
\DeclareUnicodeCharacter{0100}{\=A}
@@ -8972,6 +9107,9 @@ directory should work if nowhere else does.}
\message{and turning on texinfo input format.}
+% DEL is a comment character, in case @c does not suffice.
+\catcode`\^^? = 14
+
% Define macros to output various characters with catcode for normal text.
\catcode`\"=\other
\catcode`\~=\other
@@ -9081,7 +9219,7 @@ directory should work if nowhere else does.}
% Same as @turnoffactive except outputs \ as {\tt\char`\\} instead of
% the literal character `\'.
-%
+%
@def@normalturnoffactive{%
@let\=@normalbackslash
@let"=@normaldoublequote
@@ -9137,7 +9275,7 @@ directory should work if nowhere else does.}
@catcode`@`=@active
@markupsetuplqdefault
@markupsetuprqdefault
-
+
@c Local variables:
@c eval: (add-hook 'write-file-hooks 'time-stamp)
@c page-delimiter: "^\\\\message"
diff --git a/libjava/classpath/examples/Makefile.in b/libjava/classpath/examples/Makefile.in
index 19dcf2e24c9..1d5d02fe6b7 100644
--- a/libjava/classpath/examples/Makefile.in
+++ b/libjava/classpath/examples/Makefile.in
@@ -41,6 +41,9 @@ DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/../../config/lead-dot.m4 \
+ $(top_srcdir)/../../config/lib-ld.m4 \
+ $(top_srcdir)/../../config/lib-link.m4 \
+ $(top_srcdir)/../../config/lib-prefix.m4 \
$(top_srcdir)/../../config/multi.m4 \
$(top_srcdir)/../../config/no-executables.m4 \
$(top_srcdir)/../../config/override.m4 \
@@ -59,9 +62,7 @@ am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_func_which_gethostbyname_r.m4 \
$(top_srcdir)/m4/gcc_attribute.m4 $(top_srcdir)/m4/iconv.m4 \
- $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
- $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/../../mkinstalldirs
diff --git a/libjava/classpath/external/Makefile.in b/libjava/classpath/external/Makefile.in
index b2558cd920e..cd03f679553 100644
--- a/libjava/classpath/external/Makefile.in
+++ b/libjava/classpath/external/Makefile.in
@@ -39,6 +39,9 @@ DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/../../config/lead-dot.m4 \
+ $(top_srcdir)/../../config/lib-ld.m4 \
+ $(top_srcdir)/../../config/lib-link.m4 \
+ $(top_srcdir)/../../config/lib-prefix.m4 \
$(top_srcdir)/../../config/multi.m4 \
$(top_srcdir)/../../config/no-executables.m4 \
$(top_srcdir)/../../config/override.m4 \
@@ -57,9 +60,7 @@ am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_func_which_gethostbyname_r.m4 \
$(top_srcdir)/m4/gcc_attribute.m4 $(top_srcdir)/m4/iconv.m4 \
- $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
- $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/../../mkinstalldirs
diff --git a/libjava/classpath/external/jsr166/Makefile.in b/libjava/classpath/external/jsr166/Makefile.in
index a4a08182a56..55f05841eb5 100644
--- a/libjava/classpath/external/jsr166/Makefile.in
+++ b/libjava/classpath/external/jsr166/Makefile.in
@@ -39,6 +39,9 @@ DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/../../config/lead-dot.m4 \
+ $(top_srcdir)/../../config/lib-ld.m4 \
+ $(top_srcdir)/../../config/lib-link.m4 \
+ $(top_srcdir)/../../config/lib-prefix.m4 \
$(top_srcdir)/../../config/multi.m4 \
$(top_srcdir)/../../config/no-executables.m4 \
$(top_srcdir)/../../config/override.m4 \
@@ -57,9 +60,7 @@ am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_func_which_gethostbyname_r.m4 \
$(top_srcdir)/m4/gcc_attribute.m4 $(top_srcdir)/m4/iconv.m4 \
- $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
- $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/../../mkinstalldirs
diff --git a/libjava/classpath/external/relaxngDatatype/Makefile.in b/libjava/classpath/external/relaxngDatatype/Makefile.in
index 70ecad05be3..41430c160b4 100644
--- a/libjava/classpath/external/relaxngDatatype/Makefile.in
+++ b/libjava/classpath/external/relaxngDatatype/Makefile.in
@@ -39,6 +39,9 @@ DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/../../config/lead-dot.m4 \
+ $(top_srcdir)/../../config/lib-ld.m4 \
+ $(top_srcdir)/../../config/lib-link.m4 \
+ $(top_srcdir)/../../config/lib-prefix.m4 \
$(top_srcdir)/../../config/multi.m4 \
$(top_srcdir)/../../config/no-executables.m4 \
$(top_srcdir)/../../config/override.m4 \
@@ -57,9 +60,7 @@ am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_func_which_gethostbyname_r.m4 \
$(top_srcdir)/m4/gcc_attribute.m4 $(top_srcdir)/m4/iconv.m4 \
- $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
- $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/../../mkinstalldirs
diff --git a/libjava/classpath/external/sax/Makefile.in b/libjava/classpath/external/sax/Makefile.in
index 8b09af251c1..774243663c7 100644
--- a/libjava/classpath/external/sax/Makefile.in
+++ b/libjava/classpath/external/sax/Makefile.in
@@ -39,6 +39,9 @@ DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/../../config/lead-dot.m4 \
+ $(top_srcdir)/../../config/lib-ld.m4 \
+ $(top_srcdir)/../../config/lib-link.m4 \
+ $(top_srcdir)/../../config/lib-prefix.m4 \
$(top_srcdir)/../../config/multi.m4 \
$(top_srcdir)/../../config/no-executables.m4 \
$(top_srcdir)/../../config/override.m4 \
@@ -57,9 +60,7 @@ am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_func_which_gethostbyname_r.m4 \
$(top_srcdir)/m4/gcc_attribute.m4 $(top_srcdir)/m4/iconv.m4 \
- $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
- $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/../../mkinstalldirs
diff --git a/libjava/classpath/external/w3c_dom/Makefile.in b/libjava/classpath/external/w3c_dom/Makefile.in
index 15e2f95d9c4..76daadb2c22 100644
--- a/libjava/classpath/external/w3c_dom/Makefile.in
+++ b/libjava/classpath/external/w3c_dom/Makefile.in
@@ -39,6 +39,9 @@ DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/../../config/lead-dot.m4 \
+ $(top_srcdir)/../../config/lib-ld.m4 \
+ $(top_srcdir)/../../config/lib-link.m4 \
+ $(top_srcdir)/../../config/lib-prefix.m4 \
$(top_srcdir)/../../config/multi.m4 \
$(top_srcdir)/../../config/no-executables.m4 \
$(top_srcdir)/../../config/override.m4 \
@@ -57,9 +60,7 @@ am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_func_which_gethostbyname_r.m4 \
$(top_srcdir)/m4/gcc_attribute.m4 $(top_srcdir)/m4/iconv.m4 \
- $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
- $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/../../mkinstalldirs
diff --git a/libjava/classpath/gnu/javax/print/CupsIppOperation.java b/libjava/classpath/gnu/javax/print/CupsIppOperation.java
index e9151691124..96744c1f362 100644
--- a/libjava/classpath/gnu/javax/print/CupsIppOperation.java
+++ b/libjava/classpath/gnu/javax/print/CupsIppOperation.java
@@ -1,4 +1,4 @@
-/* CupsIppOperation.java --
+/* CupsIppOperation.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -45,55 +45,55 @@ package gnu.javax.print;
* See: CUPS Implementation of IPP, chapter 3.2<br>
* http://www.cups.org/doc-1.1/ipp.html
* </p>
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
public final class CupsIppOperation
{
/** Get the default destination - since CUPS 1.0 */
- public static final int CUPS_GET_DEFAULT = 0x4001;
-
+ public static final int CUPS_GET_DEFAULT = 0x4001;
+
/** Get all of the available printers - since CUPS 1.0 */
public static final int CUPS_GET_PRINTERS = 0x4002;
-
+
/** Add or modify a printer - since CUPS 1.0 */
public static final int CUPS_ADD_MODIFY_PRINTER = 0x4003;
-
+
/** Delete a printer - since CUPS 1.0 */
public static final int CUPS_DELETE_PRINTER = 0x4004;
-
+
/** Get all of the available printer classes - since CUPS 1.0 */
public static final int CUPS_GET_CLASSES = 0x4005;
-
+
/** Add or modify a printer class - since CUPS 1.0 */
public static final int CUPS_ADD_MODIFY_CLASS = 0x4006;
-
+
/** Delete a printer class - since CUPS 1.0 */
public static final int CUPS_DELETE_CLASS = 0x4007;
-
+
/** Accept jobs on a printer or printer class - since CUPS 1.0 */
public static final int CUPS_ACCEPT_JOBS = 0x4008;
-
+
/** Reject jobs on a printer or printer class - since CUPS 1.0 */
public static final int CUPS_REJECT_JOBS = 0x4009;
-
+
/** Set the default destination - since CUPS 1.0 */
public static final int CUPS_SET_DEFAULT = 0x400A;
-
+
/** Get all of the available PPDs - since CUPS 1.1 */
public static final int CUPS_GET_DEVICES = 0x400B;
-
+
/** Get all of the available PPDs - since CUPS 1.1 */
public static final int CUPS_GET_PPDS = 0x400C;
-
+
/** Move a job to a different printer - since CUPS 1.1 */
public static final int CUPS_MOVE_JOB = 0x400D;
-
-
+
+
private CupsIppOperation()
- {
+ {
// not to be instantiated
}
-
+
}
diff --git a/libjava/classpath/gnu/javax/print/CupsMediaMapping.java b/libjava/classpath/gnu/javax/print/CupsMediaMapping.java
index eaf2d5e54ae..49bd94d6f3d 100644
--- a/libjava/classpath/gnu/javax/print/CupsMediaMapping.java
+++ b/libjava/classpath/gnu/javax/print/CupsMediaMapping.java
@@ -1,4 +1,4 @@
-/* CupsMediaMapping.java --
+/* CupsMediaMapping.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -52,12 +52,12 @@ import javax.print.attribute.standard.MediaSizeName;
* for use of media attribute translation between Java JPS API and
* CUPS.
* </p>
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
public class CupsMediaMapping
{
- // the mapping map
+ // the mapping map
private static final HashMap ippByCups = new HashMap();
/**
@@ -67,11 +67,11 @@ public class CupsMediaMapping
{
ippByCups.put("Postcard", MediaSizeName.JAPANESE_POSTCARD);
ippByCups.put("Statement", MediaSizeName.INVOICE);
-
+
ippByCups.put("Letter", MediaSizeName.NA_LETTER);
ippByCups.put("Executive", MediaSizeName.EXECUTIVE);
ippByCups.put("Legal", MediaSizeName.NA_LEGAL);
-
+
ippByCups.put("A0", MediaSizeName.ISO_A0);
ippByCups.put("A1", MediaSizeName.ISO_A1);
ippByCups.put("A2", MediaSizeName.ISO_A2);
@@ -83,7 +83,7 @@ public class CupsMediaMapping
ippByCups.put("A8", MediaSizeName.ISO_A8);
ippByCups.put("A9", MediaSizeName.ISO_A9);
ippByCups.put("A10", MediaSizeName.ISO_A10);
-
+
ippByCups.put("B0", MediaSizeName.JIS_B0);
ippByCups.put("B1", MediaSizeName.JIS_B1);
ippByCups.put("B2", MediaSizeName.JIS_B2);
@@ -95,7 +95,7 @@ public class CupsMediaMapping
ippByCups.put("B8", MediaSizeName.JIS_B8);
ippByCups.put("B9", MediaSizeName.JIS_B9);
ippByCups.put("B10", MediaSizeName.JIS_B10);
-
+
ippByCups.put("ISOB0", MediaSizeName.ISO_B0);
ippByCups.put("ISOB1", MediaSizeName.ISO_B1);
ippByCups.put("ISOB2", MediaSizeName.ISO_B2);
@@ -118,7 +118,7 @@ public class CupsMediaMapping
ippByCups.put("EnvISOB8", MediaSizeName.ISO_B8);
ippByCups.put("EnvISOB9", MediaSizeName.ISO_B9);
ippByCups.put("EnvISOB10", MediaSizeName.ISO_B10);
-
+
ippByCups.put("C0", MediaSizeName.ISO_C0);
ippByCups.put("C1", MediaSizeName.ISO_C1);
ippByCups.put("C2", MediaSizeName.ISO_C2);
@@ -136,7 +136,7 @@ public class CupsMediaMapping
ippByCups.put("Env12", MediaSizeName.NA_NUMBER_12_ENVELOPE);
ippByCups.put("Env14", MediaSizeName.NA_NUMBER_14_ENVELOPE);
ippByCups.put("c8x10", MediaSizeName.NA_8X10);
-
+
ippByCups.put("EnvDL", MediaSizeName.ISO_DESIGNATED_LONG);
ippByCups.put("DL", MediaSizeName.ISO_DESIGNATED_LONG);
ippByCups.put("EnvC0", MediaSizeName.ISO_C0);
@@ -145,12 +145,12 @@ public class CupsMediaMapping
ippByCups.put("EnvC3", MediaSizeName.ISO_C3);
ippByCups.put("EnvC4", MediaSizeName.ISO_C4);
ippByCups.put("EnvC5", MediaSizeName.ISO_C5);
- ippByCups.put("EnvC6", MediaSizeName.ISO_C6);
+ ippByCups.put("EnvC6", MediaSizeName.ISO_C6);
}
-
+
/**
* Returns the IPP media name of the given cups name.
- *
+ *
* @param cupsName the name in cups
* @return The IPP name if a mapping is known, <code>null</code> otherwise.
*/
@@ -158,10 +158,10 @@ public class CupsMediaMapping
{
return (String) ippByCups.get(cupsName);
}
-
+
/**
* Returns the mapping map for iteration.
- *
+ *
* @return The mapping map as unmodifiable map.
*/
public static final Map getMappingMap()
@@ -169,7 +169,7 @@ public class CupsMediaMapping
return Collections.unmodifiableMap(ippByCups);
}
- private CupsMediaMapping()
+ private CupsMediaMapping()
{
// not to be instantiated
}
diff --git a/libjava/classpath/gnu/javax/print/CupsPrintService.java b/libjava/classpath/gnu/javax/print/CupsPrintService.java
index 4f77523c530..f3bec996c49 100644
--- a/libjava/classpath/gnu/javax/print/CupsPrintService.java
+++ b/libjava/classpath/gnu/javax/print/CupsPrintService.java
@@ -48,9 +48,9 @@ import javax.print.DocFlavor;
import javax.print.attribute.AttributeSet;
/**
- * Implementation of the PrintService/MultiDocPrintService
+ * Implementation of the PrintService/MultiDocPrintService
* interface for Cups printers (supports Cups 1.1 and up)
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
public final class CupsPrintService extends IppMultiDocPrintService
@@ -58,26 +58,26 @@ public final class CupsPrintService extends IppMultiDocPrintService
/**
* Creates a <code>CupsPrintService</code> object.
- *
+ *
* @param uri the URI of the IPP printer.
* @param username the user of this print service.
* @param password the password of the user.
- *
+ *
* @throws IppException if an error during connection occurs.
*/
public CupsPrintService(URI uri, String username, String password)
throws IppException
{
super(uri, username, password);
- }
-
+ }
+
/**
* Overridden for CUPS specific handling of the media attribute.
*/
- protected Object handleSupportedAttributeValuesResponse(IppResponse response,
+ protected Object handleSupportedAttributeValuesResponse(IppResponse response,
Class category)
{
- // TODO Implement different behaviour of cups here - actually the Media
+ // TODO Implement different behaviour of cups here - actually the Media
// printing attribute stuff. For now just use IPP reference implementation.
return super.handleSupportedAttributeValuesResponse(response, category);
}
@@ -89,7 +89,7 @@ public final class CupsPrintService extends IppMultiDocPrintService
{
// TODO Implement media attribute behaviour for cups here
//if (category.equals(Media.class)
-
+
return super.getDefaultAttributeValue(category);
}
diff --git a/libjava/classpath/gnu/javax/print/CupsPrintServiceLookup.java b/libjava/classpath/gnu/javax/print/CupsPrintServiceLookup.java
index 1aa83218a8d..d537c398fa6 100644
--- a/libjava/classpath/gnu/javax/print/CupsPrintServiceLookup.java
+++ b/libjava/classpath/gnu/javax/print/CupsPrintServiceLookup.java
@@ -51,12 +51,12 @@ import javax.print.attribute.AttributeSet;
/**
* The platform default implementation based on CUPS.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
public class CupsPrintServiceLookup extends PrintServiceLookup
-{
- private CupsServer server;
+{
+ private CupsServer server;
/**
* Default constructor checking security access.
@@ -67,14 +67,14 @@ public class CupsPrintServiceLookup extends PrintServiceLookup
SecurityManager sm = System.getSecurityManager();
if (sm != null)
sm.checkPrintJobAccess();
-
+
// use the localhost cups server
server = new CupsServer(null, null);
}
/**
* This is the printer marked as default in CUPS.
- *
+ *
* @return The default lookup service or
* <code>null</code> if there is no default.
*/
@@ -83,21 +83,21 @@ public class CupsPrintServiceLookup extends PrintServiceLookup
try
{
return server.getDefaultPrinter();
- }
+ }
catch (IppException e)
{
// if discovery fails treat as if there is none
return null;
- }
+ }
}
-
+
/**
* All printers and printer classes of the CUPS server are checked.
* If flavors or attributes are null the constraint is not used.
- *
+ *
* @param flavors the document flavors which have to be supported.
* @param attributes the attributes which have to be supported.
- *
+ *
* @return The multidoc print services of the implementing lookup service
* for the given parameters, or an array of length 0 if none is available.
*/
@@ -105,49 +105,49 @@ public class CupsPrintServiceLookup extends PrintServiceLookup
AttributeSet attributes)
{
ArrayList result = new ArrayList();
- PrintService[] services = getPrintServices();
-
+ PrintService[] services = getPrintServices();
+
for (int i=0; i < services.length; i++)
{
if (checkMultiDocPrintService(flavors, attributes, services[i]))
- result.add(services[i]);
+ result.add(services[i]);
}
-
+
return (MultiDocPrintService[]) result.toArray(
new MultiDocPrintService[result.size()]);
}
/**
* These are all printers and printer classes of the CUPS server.
- *
- * @return All known print services regardless of supported features,
+ *
+ * @return All known print services regardless of supported features,
* or an array of length 0 if none is available.
*/
public PrintService[] getPrintServices()
{
ArrayList result = new ArrayList();
-
+
try
{
result.addAll(server.getAllPrinters());
result.addAll(server.getAllClasses());
}
catch (IppException e)
- {
+ {
// ignore as this method cannot throw exceptions
// if print service discovery fails - bad luck
}
return (PrintService[]) result.toArray(new PrintService[result.size()]);
}
-
-
+
+
/**
* All printers and printer classes of the CUPS server are checked.
* If flavor or attributes are null the constraint is not used.
- *
+ *
* @param flavor the document flavor which has to be supported.
* @param attributes the attributes which have to be supported.
- *
+ *
* @return The print services of the implementing lookup service
* for the given parameters, or an array of length 0 if none is available.
*/
@@ -156,25 +156,25 @@ public class CupsPrintServiceLookup extends PrintServiceLookup
{
ArrayList result = new ArrayList();
PrintService[] services = getPrintServices();
-
+
for (int i=0; i < services.length; i++)
{
if (checkPrintService(flavor, attributes, services[i]))
result.add(services[i]);
}
-
+
return (PrintService[]) result.toArray(new PrintService[result.size()]);
}
-
+
/**
* Checks the given print service - own method so it can be used also
* to check application registered print services from PrintServiceLookup.
- *
+ *
* @param flavor the document flavor which has to be supported.
* @param attributes the attributes which have to be supported.
* @param service the service to check
- *
- * @return <code>true</code> if all constraints match, <code>false</code>
+ *
+ * @return <code>true</code> if all constraints match, <code>false</code>
* otherwise.
*/
public boolean checkPrintService(DocFlavor flavor, AttributeSet attributes,
@@ -185,7 +185,7 @@ public class CupsPrintServiceLookup extends PrintServiceLookup
{
if (attributes == null || attributes.size() == 0)
return allAttributesSupported;
-
+
Attribute[] atts = attributes.toArray();
for (int i = 0; i < atts.length; i++)
{
@@ -197,29 +197,29 @@ public class CupsPrintServiceLookup extends PrintServiceLookup
}
return allAttributesSupported;
}
-
+
return false;
}
-
+
/**
* Checks the given print service - own method so it can be used also
* to check application registered print services from PrintServiceLookup.
- *
+ *
* @param flavors the document flavors which have to be supported.
* @param attributes the attributes which have to be supported.
* @param service the service to check
- *
- * @return <code>true</code> if all constraints match, <code>false</code>
+ *
+ * @return <code>true</code> if all constraints match, <code>false</code>
* otherwise.
*/
- public boolean checkMultiDocPrintService(DocFlavor[] flavors,
+ public boolean checkMultiDocPrintService(DocFlavor[] flavors,
AttributeSet attributes, PrintService service)
- {
+ {
if (service instanceof MultiDocPrintService)
- {
+ {
boolean allFlavorsSupported = true;
boolean allAttributesSupported = true;
-
+
if (flavors == null || flavors.length != 0)
allFlavorsSupported = true;
else
@@ -233,7 +233,7 @@ public class CupsPrintServiceLookup extends PrintServiceLookup
}
}
}
-
+
if (attributes == null || attributes.size() == 0)
allAttributesSupported = true;
else
@@ -249,11 +249,11 @@ public class CupsPrintServiceLookup extends PrintServiceLookup
}
}
}
-
+
if (allAttributesSupported && allFlavorsSupported)
return true;
- }
-
+ }
+
return false;
}
diff --git a/libjava/classpath/gnu/javax/print/CupsServer.java b/libjava/classpath/gnu/javax/print/CupsServer.java
index 0486e69deb0..6dbcfc7325e 100644
--- a/libjava/classpath/gnu/javax/print/CupsServer.java
+++ b/libjava/classpath/gnu/javax/print/CupsServer.java
@@ -1,4 +1,4 @@
-/* CupsServer.java --
+/* CupsServer.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -58,25 +58,25 @@ import java.util.Set;
* compatible server. It mainly consists of its URI and optional
* user and password combination if access is restricted.
* <p>
- * It provides methods for retrival of valid CUPS printer uris
+ * It provides methods for retrival of valid CUPS printer uris
* that are used to construct IppPrintService objects.
* </p>
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
public class CupsServer
{
- /**
+ /**
* The URI of the CUPS server.
* This is something like: http://localhost:631
*/
private transient URI uri;
-
+
/**
* The optional username.
*/
private transient String username;
-
+
/**
* The optional password for the user.
*/
@@ -84,11 +84,11 @@ public class CupsServer
/**
* Creates a <code>CupsServer</code> object which
- * tries to connect to a cups server.
+ * tries to connect to a cups server.
*
* If <code>gnu.javax.print.server</code> is explicitly set, then
* that hostname will be used. Otherwise it will default to localhost.
- *
+ *
* @param username the username
* @param password the password for the username.
*/
@@ -100,13 +100,13 @@ public class CupsServer
this.uri = null;
try
{
- String serv = System.getProperty("gnu.javax.print.server");
- if( serv != null )
- this.uri = new URI("http://"+serv+":631");
+ String serv = System.getProperty("gnu.javax.print.server");
+ if( serv != null )
+ this.uri = new URI("http://"+serv+":631");
}
catch(URISyntaxException use)
{
- throw new RuntimeException("gnu.javax.print.CupsServer value is not a valid hostname.");
+ throw new RuntimeException("gnu.javax.print.CupsServer value is not a valid hostname.");
}
catch(SecurityException se)
{
@@ -114,20 +114,20 @@ public class CupsServer
try
{
- if( this.uri == null )
- this.uri = new URI("http://localhost:631");
+ if( this.uri == null )
+ this.uri = new URI("http://localhost:631");
}
catch (URISyntaxException e)
{
// does not happen
}
}
-
+
/**
* Creates a <code>CupsServer</code> object which
* tries to connect to a running cups server on the
* given URI.
- *
+ *
* @param uri the URI of the server.
* @param username the username
* @param password the password for the username.
@@ -138,75 +138,75 @@ public class CupsServer
this.username = username;
this.password = password;
}
-
+
/**
* Requests the default printer from this CUPS server.
* This is always returned as IppPrintService.
- *
+ *
* @return The default printer.
* @throws IppException if problems during request/response processing occur.
*/
public IppPrintService getDefaultPrinter() throws IppException
- {
+ {
IppResponse response = null;
-
+
try
{
- IppRequest request = new IppRequest(uri, username, password);
- request.setOperationID((short)CupsIppOperation.CUPS_GET_DEFAULT);
- request.setOperationAttributeDefaults();
-
- RequestedAttributes requestedAttrs
+ IppRequest request = new IppRequest(uri, username, password);
+ request.setOperationID((short)CupsIppOperation.CUPS_GET_DEFAULT);
+ request.setOperationAttributeDefaults();
+
+ RequestedAttributes requestedAttrs
= new RequestedAttributes("printer-uri-supported");
request.addOperationAttribute(requestedAttrs);
-
+
response = request.send();
- }
+ }
catch (IOException e)
{
throw new IppException("IOException in IPP request/response.", e);
- }
-
+ }
+
Map printerAttributes = (Map) response.getPrinterAttributes().get(0);
Set uris = (Set) printerAttributes.get(PrinterUriSupported.class);
PrinterUriSupported uri = (PrinterUriSupported) uris.toArray()[0];
-
- IppPrintService service
+
+ IppPrintService service
= new CupsPrintService(uri.getURI(), username, password);
-
+
return service;
}
-
+
/**
* Requests all printers from this CUPS server.
- *
+ *
* @return The list of available printers.
* @throws IppException if problems during request/response processing occur.
*/
public List getAllPrinters() throws IppException
- {
+ {
IppResponse response = null;
-
+
try
{
- IppRequest request = new IppRequest(uri, username, password);
- request.setOperationID((short)CupsIppOperation.CUPS_GET_PRINTERS);
+ IppRequest request = new IppRequest(uri, username, password);
+ request.setOperationID((short)CupsIppOperation.CUPS_GET_PRINTERS);
request.setOperationAttributeDefaults();
-
- RequestedAttributes requestedAttrs
+
+ RequestedAttributes requestedAttrs
= new RequestedAttributes("printer-uri-supported");
request.addOperationAttribute(requestedAttrs);
-
+
response = request.send();
- }
+ }
catch (IOException e)
{
throw new IppException("IOException in IPP request/response.", e);
- }
+ }
List prAttr = response.getPrinterAttributes();
List services = new ArrayList();
-
+
for (int i=0; i < prAttr.size(); i++)
{
Map printerAttributes = (Map) prAttr.get(i);
@@ -224,50 +224,50 @@ public class CupsServer
// do nothing, we only catch the IppException which could be
// thrown during instantiation as single printers may be discovered
// correctly but not usable due to other security restrictions
- }
- }
-
+ }
+ }
+
return services;
}
-
+
/**
* Requests all classes from this CUPS server. Classes in cups are
- * collections of printers. This means jobs directed to a class
+ * collections of printers. This means jobs directed to a class
* are forwarded to the first available printer of the collection.
- *
+ *
* @return The list of available classes.
* @throws IppException if problems during request/response processing occur.
*/
public List getAllClasses() throws IppException
- {
+ {
IppResponse response = null;
-
+
try
{
- IppRequest request = new IppRequest(uri, username, password);
- request.setOperationID((short)CupsIppOperation.CUPS_GET_CLASSES);
+ IppRequest request = new IppRequest(uri, username, password);
+ request.setOperationID((short)CupsIppOperation.CUPS_GET_CLASSES);
request.setOperationAttributeDefaults();
-
- RequestedAttributes requestedAttrs
+
+ RequestedAttributes requestedAttrs
= new RequestedAttributes("printer-uri-supported");
request.addOperationAttribute(requestedAttrs);
-
+
response = request.send();
- }
+ }
catch (IOException e)
{
throw new IppException("IOException in IPP request/response.", e);
- }
-
+ }
+
List prAttr = response.getPrinterAttributes();
- List services = new ArrayList();
-
+ List services = new ArrayList();
+
for (int i=0; i < prAttr.size(); i++)
{
Map printerAttributes = (Map) prAttr.get(i);
Set uris = (Set) printerAttributes.get(PrinterUriSupported.class);
PrinterUriSupported uri = (PrinterUriSupported) uris.toArray()[0];
-
+
try
{
CupsPrintService cups = new CupsPrintService(uri.getURI(),
@@ -279,9 +279,9 @@ public class CupsServer
// do nothing, we only catch the IppException which could be
// thrown during instantiation as single printers may be discovered
// correctly but not usable due to other security restrictions
- }
- }
-
+ }
+ }
+
return services;
}
diff --git a/libjava/classpath/gnu/javax/print/PrintAttributeException.java b/libjava/classpath/gnu/javax/print/PrintAttributeException.java
index 345193d93f7..5bcc59fc97c 100644
--- a/libjava/classpath/gnu/javax/print/PrintAttributeException.java
+++ b/libjava/classpath/gnu/javax/print/PrintAttributeException.java
@@ -1,4 +1,4 @@
-/* PrintAttributeException.java --
+/* PrintAttributeException.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -46,25 +46,25 @@ import javax.print.attribute.Attribute;
* A <code>PrintException</code> further refining the exception
* cause by providing an implementation of the print exception
* interface <code>AttributeException</code>.
- *
+ *
* @see javax.print.PrintException
* @see javax.print.AttributeException
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
-public final class PrintAttributeException extends PrintException
+public final class PrintAttributeException extends PrintException
implements AttributeException
{
private Class[] categories;
private Attribute[] values;
-
+
/**
* Constructs a <code>PrintAttributeException</code>
* with the given unsupported attributes and/or values.
- *
- * @param unsupportedAttributes the unsupported categories,
+ *
+ * @param unsupportedAttributes the unsupported categories,
* may be <code>null</code>.
- * @param unsupportedValues the unsupported attribute values,
+ * @param unsupportedValues the unsupported attribute values,
* may be <code>null</code>.
*/
public PrintAttributeException(Class[] unsupportedAttributes,
@@ -78,11 +78,11 @@ public final class PrintAttributeException extends PrintException
/**
* Constructs a <code>PrintAttributeException</code>
* with the given unsupported attributes and/or values.
- *
+ *
* @param e chained exception
- * @param unsupportedAttributes the unsupported categories,
+ * @param unsupportedAttributes the unsupported categories,
* may be <code>null</code>.
- * @param unsupportedValues the unsupported attribute values,
+ * @param unsupportedValues the unsupported attribute values,
* may be <code>null</code>.
*/
public PrintAttributeException(Exception e,
@@ -96,11 +96,11 @@ public final class PrintAttributeException extends PrintException
/**
* Constructs a <code>PrintAttributeException</code>
* with the given unsupported attributes and/or values.
- *
+ *
* @param s detailed message
- * @param unsupportedAttributes the unsupported categories,
+ * @param unsupportedAttributes the unsupported categories,
* may be <code>null</code>.
- * @param unsupportedValues the unsupported attribute values,
+ * @param unsupportedValues the unsupported attribute values,
* may be <code>null</code>.
*/
public PrintAttributeException(String s,
@@ -114,12 +114,12 @@ public final class PrintAttributeException extends PrintException
/**
* Constructs a <code>PrintAttributeException</code>
* with the given unsupported attributes and/or values.
- *
+ *
* @param s detailed message
* @param e chained exception
- * @param unsupportedAttributes the unsupported categories,
+ * @param unsupportedAttributes the unsupported categories,
* may be <code>null</code>.
- * @param unsupportedValues the unsupported attribute values,
+ * @param unsupportedValues the unsupported attribute values,
* may be <code>null</code>.
*/
public PrintAttributeException(String s, Exception e,
diff --git a/libjava/classpath/gnu/javax/print/PrintFlavorException.java b/libjava/classpath/gnu/javax/print/PrintFlavorException.java
index 1885e9851a1..a9342db961c 100644
--- a/libjava/classpath/gnu/javax/print/PrintFlavorException.java
+++ b/libjava/classpath/gnu/javax/print/PrintFlavorException.java
@@ -1,4 +1,4 @@
-/* PrintFlavorException.java --
+/* PrintFlavorException.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -46,21 +46,21 @@ import javax.print.PrintException;
* A <code>PrintException</code> further refining the exception
* cause by providing an implementation of the print exception
* interface <code>FlavorException</code>.
- *
+ *
* @see javax.print.PrintException
* @see javax.print.FlavorException
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
-public class PrintFlavorException extends PrintException
+public class PrintFlavorException extends PrintException
implements FlavorException
{
private DocFlavor[] flavors;
-
+
/**
* Constructs a <code>PrintFlavorException</code>
* with the given unsupported doc flavor array
- *
+ *
* @param unsupportedFlavors the unsupported document flavors.
*/
public PrintFlavorException(DocFlavor[] unsupportedFlavors)
@@ -72,7 +72,7 @@ public class PrintFlavorException extends PrintException
/**
* Constructs a <code>PrintFlavorException</code>
* with the given unsupported doc flavor array
- *
+ *
* @param e chained exception
* @param unsupportedFlavors the unsupported document flavors.
*/
@@ -85,7 +85,7 @@ public class PrintFlavorException extends PrintException
/**
* Constructs a <code>PrintFlavorException</code>
* with the given unsupported doc flavor array
- *
+ *
* @param s detailed message
* @param unsupportedFlavors the unsupported document flavors.
*/
@@ -98,12 +98,12 @@ public class PrintFlavorException extends PrintException
/**
* Constructs a <code>PrintFlavorException</code>
* with the given unsupported doc flavor array
- *
+ *
* @param s detailed message
* @param e chained exception
* @param unsupportedFlavors the unsupported document flavors.
*/
- public PrintFlavorException(String s, Exception e,
+ public PrintFlavorException(String s, Exception e,
DocFlavor[] unsupportedFlavors)
{
super(s, e);
diff --git a/libjava/classpath/gnu/javax/print/PrintUriException.java b/libjava/classpath/gnu/javax/print/PrintUriException.java
index d031000cadb..9c13c132a50 100644
--- a/libjava/classpath/gnu/javax/print/PrintUriException.java
+++ b/libjava/classpath/gnu/javax/print/PrintUriException.java
@@ -1,4 +1,4 @@
-/* PrintUriException.java --
+/* PrintUriException.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -47,13 +47,13 @@ import javax.print.URIException;
* A <code>PrintException</code> further refining the exception
* cause by providing an implementation of the print exception
* interface <code>URIException</code>.
- *
+ *
* @see javax.print.PrintException
* @see javax.print.URIException
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
-public final class PrintUriException extends PrintException
+public final class PrintUriException extends PrintException
implements URIException
{
private int reason;
@@ -65,20 +65,20 @@ public final class PrintUriException extends PrintException
*
* @param reason the reason for the exception.
* @param unsupportedUri the URI which is unsupported.
- *
+ *
* @see URIException
*/
public PrintUriException(int reason, URI unsupportedUri)
{
super();
this.reason = reason;
- uri = unsupportedUri;
+ uri = unsupportedUri;
}
/**
* Constructs a <code>PrintUriException</code> with the given reason
* and unsupported URI instance.
- *
+ *
* @param e chained exception
* @param reason the reason for the exception.
* @param unsupportedUri the URI which is unsupported.
@@ -87,13 +87,13 @@ public final class PrintUriException extends PrintException
{
super(e);
this.reason = reason;
- uri = unsupportedUri;
+ uri = unsupportedUri;
}
/**
* Constructs a <code>PrintUriException</code> with the given reason
* and unsupported URI instance.
- *
+ *
* @param s detailed message
* @param reason the reason for the exception.
* @param unsupportedUri the URI which is unsupported.
@@ -102,24 +102,24 @@ public final class PrintUriException extends PrintException
{
super(s);
this.reason = reason;
- uri = unsupportedUri;
+ uri = unsupportedUri;
}
/**
* Constructs a <code>PrintUriException</code> with the given reason
* and unsupported URI instance.
- *
+ *
* @param s detailed message
* @param e chained exception
* @param reason the reason for the exception.
* @param unsupportedUri the URI which is unsupported.
*/
- public PrintUriException(String s, Exception e,
+ public PrintUriException(String s, Exception e,
int reason, URI unsupportedUri)
{
super(s, e);
this.reason = reason;
- uri = unsupportedUri;
+ uri = unsupportedUri;
}
/**
diff --git a/libjava/classpath/gnu/javax/print/PrinterDialog.java b/libjava/classpath/gnu/javax/print/PrinterDialog.java
index 54d6b87b47c..6557baf4f81 100644
--- a/libjava/classpath/gnu/javax/print/PrinterDialog.java
+++ b/libjava/classpath/gnu/javax/print/PrinterDialog.java
@@ -98,12 +98,12 @@ import javax.swing.event.ChangeListener;
* Implementation of the PrinterDialog used by
* {@link javax.print.ServiceUI} for visual selection
* of print services and its attributes.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
public final class PrinterDialog extends JDialog implements ActionListener
{
-
+
/**
* The General Panel used in the printing dialog.
* @author Wolfgang Baer (WBaer@gmx.de)
@@ -114,57 +114,57 @@ public final class PrinterDialog extends JDialog implements ActionListener
* Handles the copies attribute.
* @author Wolfgang Baer (WBaer@gmx.de)
*/
- final class CopiesAndSorted extends JPanel
+ final class CopiesAndSorted extends JPanel
implements ChangeListener, ActionListener
- {
- private JCheckBox sort;
+ {
+ private JCheckBox sort;
private JSpinner copies;
private JLabel copies_lb;
private SpinnerNumberModel copiesModel;
-
+
CopiesAndSorted()
{
- copies_lb = new JLabel(getLocalizedString("lb.copies"));
+ copies_lb = new JLabel(getLocalizedString("lb.copies"));
sort = new JCheckBox(getLocalizedString("cb.sort"));
sort.addActionListener(this);
-
+
copiesModel = new SpinnerNumberModel(1, 1, 9999, 1);
copies = new JSpinner(copiesModel);
copies.addChangeListener(this);
-
+
GridBagLayout layout = new GridBagLayout();
GridBagConstraints c = new GridBagConstraints();
c.fill = GridBagConstraints.BOTH;
c.insets = new Insets(5, 5, 5, 5);
-
+
setLayout(layout);
setBorder(new TitledBorder(getLocalizedString("title.copies")));
-
+
c.anchor = GridBagConstraints.WEST;
-
+
c.gridx = 0;
c.gridy = 0;
add(copies_lb, c);
-
+
c.gridx = 1;
c.gridy = 0;
add(copies, c);
-
+
c.gridx = 0;
c.gridy = 1;
add(sort, c);
}
-
+
// copies jspinner state
public void stateChanged(ChangeEvent event)
{
int value = ((Integer) copies.getValue()).intValue();
atts.add(new Copies(value));
-
+
if (value > 1 && categorySupported(SheetCollate.class))
sort.setEnabled(true);
else
- sort.setEnabled(false);
+ sort.setEnabled(false);
}
// sorted checkbox state
@@ -180,30 +180,30 @@ public final class PrinterDialog extends JDialog implements ActionListener
* selected attributes are supported.
*/
void updateForSelectedService()
- {
+ {
if (categorySupported(Copies.class))
{
copies.setEnabled(true);
copies_lb.setEnabled(true);
-
+
Copies copies = (Copies) attribute(Copies.class);
if (copies != null)
copiesModel.setValue(new Integer(copies.getValue()));
-
- if (((Integer)copiesModel.getValue()).intValue() > 1
+
+ if (((Integer)copiesModel.getValue()).intValue() > 1
&& categorySupported(SheetCollate.class))
{
sort.setEnabled(true);
Attribute collate = attribute(SheetCollate.class);
if (collate != null && collate.equals(SheetCollate.COLLATED))
- sort.setSelected(true);
+ sort.setSelected(true);
}
else
sort.setEnabled(false);
}
else
{
- copies.setEnabled(false);
+ copies.setEnabled(false);
copies_lb.setEnabled(false);
}
}
@@ -213,18 +213,18 @@ public final class PrinterDialog extends JDialog implements ActionListener
* Handles the print ranges attribute.
* @author Wolfgang Baer (WBaer@gmx.de)
*/
- final class PrintRange extends JPanel
+ final class PrintRange extends JPanel
implements ActionListener, FocusListener
- {
- private JLabel to;
- private JRadioButton all_rb, pages_rb;
+ {
+ private JLabel to;
+ private JRadioButton all_rb, pages_rb;
private JTextField from_tf, to_tf;
-
+
PrintRange()
- {
+ {
to = new JLabel(getLocalizedString("lb.to"));
to.setEnabled(false);
-
+
all_rb = new JRadioButton(getLocalizedString("rbt.all"));
all_rb.setSelected(true);
all_rb.setActionCommand("ALL");
@@ -233,86 +233,86 @@ public final class PrinterDialog extends JDialog implements ActionListener
pages_rb.setActionCommand("PAGES");
pages_rb.setEnabled(false);
pages_rb.addActionListener(this);
-
+
ButtonGroup group = new ButtonGroup();
group.add(all_rb);
group.add(pages_rb);
-
+
from_tf = new JTextField("1", 4);
from_tf.setEnabled(false);
from_tf.addFocusListener(this);
to_tf = new JTextField("1", 4);
to_tf.setEnabled(false);
to_tf.addFocusListener(this);
-
+
GridBagLayout layout = new GridBagLayout();
GridBagConstraints c = new GridBagConstraints();
c.fill = GridBagConstraints.BOTH;
-
+
setLayout(layout);
setBorder(new TitledBorder(getLocalizedString("title.printrange")));
-
+
c.insets = new Insets(15, 5, 5, 5);
c.gridx = 0;
c.gridy = 0;
add(all_rb, c);
-
+
c.insets = new Insets(5, 5, 15, 5);
c.gridx = 0;
c.gridy = 1;
add(pages_rb, c);
-
+
c.gridx = 1;
c.gridy = 1;
add(from_tf, c);
-
+
c.gridx = 2;
c.gridy = 1;
add(to, c);
-
+
c.insets = new Insets(5, 5, 15, 15);
c.gridx = 3;
c.gridy = 1;
add(to_tf, c);
}
-
+
// focus pagerange
public void focusGained(FocusEvent event)
{
updatePageRanges();
}
-
+
public void focusLost(FocusEvent event)
{
updatePageRanges();
}
-
+
// updates the range after user changed it
private void updatePageRanges()
{
int lower = Integer.parseInt(from_tf.getText());
int upper = Integer.parseInt(to_tf.getText());
-
+
if (lower > upper)
{
upper = lower;
- to_tf.setText("" + lower);
+ to_tf.setText("" + lower);
}
-
+
PageRanges range = new PageRanges(lower, upper);
atts.add(range);
}
// page range change
public void actionPerformed(ActionEvent e)
- {
+ {
// if ALL is selected we must use a full-range object
if (e.getActionCommand().equals("ALL"))
{
from_tf.setEnabled(false);
to.setEnabled(false);
to_tf.setEnabled(false);
-
+
atts.add(new PageRanges(1, Integer.MAX_VALUE));
}
else
@@ -321,9 +321,9 @@ public final class PrinterDialog extends JDialog implements ActionListener
to.setEnabled(true);
to_tf.setEnabled(true);
all_rb.setSelected(false);
- }
+ }
}
-
+
/**
* Called to update for new selected
* print service. Tests if currently
@@ -339,12 +339,12 @@ public final class PrinterDialog extends JDialog implements ActionListener
{
from_tf.setEnabled(true);
to.setEnabled(true);
- to_tf.setEnabled(true);
+ to_tf.setEnabled(true);
all_rb.setSelected(false);
pages_rb.setSelected(true);
-
+
int[][] members = range.getMembers();
- // Although passed in attributes may contain more than one
+ // Although passed in attributes may contain more than one
// range we only take the first one
from_tf.setText("" + members[0][0]);
to_tf.setText("" + members[0][1]);
@@ -365,15 +365,15 @@ public final class PrinterDialog extends JDialog implements ActionListener
* and its location and description attributes.
* @author Wolfgang Baer (WBaer@gmx.de)
*/
- final class PrintServices extends JPanel
+ final class PrintServices extends JPanel
implements ActionListener
- {
+ {
private JLabel name, status, typ, info;
- private JLabel statusValue, typValue, infoValue;
- private JButton attributes;
- private JComboBox services_cob;
+ private JLabel statusValue, typValue, infoValue;
+ private JButton attributes;
+ private JComboBox services_cob;
private JCheckBox fileRedirection_cb;
-
+
PrintServices()
{
name = new JLabel(getLocalizedString("lb.name"));
@@ -383,79 +383,79 @@ public final class PrinterDialog extends JDialog implements ActionListener
typValue = new JLabel();
infoValue = new JLabel();
statusValue = new JLabel();
-
+
attributes = new JButton(getLocalizedString("bt.attributes"));
attributes.setEnabled(false);
attributes.setActionCommand("ATTRIBUTES");
attributes.addActionListener(this);
-
+
services_cob = new JComboBox(getPrintServices());
services_cob.setActionCommand("SERVICE");
services_cob.addActionListener(this);
-
+
fileRedirection_cb = new JCheckBox(getLocalizedString("cb.output"));
fileRedirection_cb.setEnabled(false);
-
+
GridBagLayout layout = new GridBagLayout();
GridBagConstraints c = new GridBagConstraints();
-
+
setLayout(layout);
setBorder(new TitledBorder(getLocalizedString("title.printservice")));
-
+
c.insets = new Insets(5, 5, 5, 5);
c.anchor = GridBagConstraints.LINE_END;
c.gridx = 0;
c.gridy = 0;
add(name, c);
-
+
c.gridx = 0;
c.gridy = 1;
add(status, c);
-
+
c.gridx = 0;
c.gridy = 2;
add(typ, c);
-
+
c.gridx = 0;
c.gridy = 3;
add(info, c);
-
+
c.gridx = 2;
c.gridy = 3;
c.weightx = 1;
add(fileRedirection_cb, c);
-
+
c.anchor = GridBagConstraints.LINE_START;
c.fill = GridBagConstraints.HORIZONTAL;
c.gridx = 1;
c.gridy = 0;
c.weightx = 1.5;
add(services_cob, c);
-
+
c.gridx = 1;
c.gridy = 1;
c.gridwidth = 2;
c.weightx = 1;
add(statusValue, c);
-
+
c.gridx = 1;
c.gridy = 2;
c.gridwidth = 2;
c.weightx = 1;
add(typValue, c);
-
+
c.gridx = 1;
c.gridy = 3;
c.gridwidth = 2;
c.weightx = 1;
add(infoValue, c);
-
+
c.gridx = 2;
c.gridy = 0;
c.weightx = 1.5;
add(attributes, c);
}
-
+
public void actionPerformed(ActionEvent e)
{
if (e.getActionCommand().equals("SERVICE"))
@@ -465,13 +465,13 @@ public final class PrinterDialog extends JDialog implements ActionListener
}
else if (e.getActionCommand().equals("ATTRIBUTES"))
{
- // TODO LowPriority-Enhancement: As tests have shown this button
+ // TODO LowPriority-Enhancement: As tests have shown this button
// is even gray and not enabled under Windows - Its a good place
- // to provide a classpath specific browsing dialog for all
- // attributes not in the default printing dialog.
+ // to provide a classpath specific browsing dialog for all
+ // attributes not in the default printing dialog.
}
- }
-
+ }
+
/**
* Called to update for new selected
* print service. Tests if currently
@@ -482,30 +482,30 @@ public final class PrinterDialog extends JDialog implements ActionListener
PrinterMakeAndModel att1 =
getSelectedPrintService().getAttribute(PrinterMakeAndModel.class);
typValue.setText(att1 == null ? "" : att1.getValue());
-
- PrinterInfo att2 =
+
+ PrinterInfo att2 =
getSelectedPrintService().getAttribute(PrinterInfo.class);
infoValue.setText(att2 == null ? "" : att2.getValue());
-
+
PrinterIsAcceptingJobs att3 =
getSelectedPrintService().getAttribute(PrinterIsAcceptingJobs.class);
PrinterState att4 =
getSelectedPrintService().getAttribute(PrinterState.class);
-
- String status = att4.toString();
+
+ String status = att4.toString();
if (att3 == PrinterIsAcceptingJobs.ACCEPTING_JOBS)
status += " - " + getLocalizedString("lb.acceptingjobs");
else if (att3 == PrinterIsAcceptingJobs.NOT_ACCEPTING_JOBS)
status += " - " + getLocalizedString("lb.notacceptingjobs");
-
+
statusValue.setText(status);
-
+
if (categorySupported(Destination.class))
{
fileRedirection_cb.setEnabled(false);
}
}
-
+
}
private PrintServices printserv_panel;
@@ -516,7 +516,7 @@ public final class PrinterDialog extends JDialog implements ActionListener
* Constructs the General Panel.
*/
public GeneralPanel()
- {
+ {
setBorder(BorderFactory.createEmptyBorder(5, 5, 5, 5));
printserv_panel = new PrintServices();
@@ -534,7 +534,7 @@ public final class PrinterDialog extends JDialog implements ActionListener
add(Box.createRigidArea(new Dimension(0, 12)));
add(layout_panel);
}
-
+
/**
* Calls update on all internal panels to adjust
* for a new selected print service.
@@ -560,7 +560,7 @@ public final class PrinterDialog extends JDialog implements ActionListener
final class Orientation extends JPanel implements ActionListener
{
private JRadioButton portrait, landscape, rev_portrait, rev_landscape;
-
+
Orientation()
{
portrait = new JRadioButton(getLocalizedString("rbt.portrait"));
@@ -571,38 +571,38 @@ public final class PrinterDialog extends JDialog implements ActionListener
rev_portrait.addActionListener(this);
rev_landscape = new JRadioButton(getLocalizedString("rbt.revlandscape"));
rev_landscape.addActionListener(this);
-
+
ButtonGroup group = new ButtonGroup();
group.add(portrait);
group.add(landscape);
group.add(rev_portrait);
group.add(rev_landscape);
-
+
GridBagLayout layout = new GridBagLayout();
GridBagConstraints c = new GridBagConstraints();
c.fill = GridBagConstraints.BOTH;
-
+
setLayout(layout);
setBorder(new TitledBorder(getLocalizedString("title.orientation")));
-
+
c.insets = new Insets(5, 5, 5, 5);
c.gridx = 0;
c.gridy = 0;
add(portrait, c);
-
+
c.gridx = 0;
c.gridy = 1;
add(landscape, c);
-
+
c.gridx = 0;
c.gridy = 2;
add(rev_portrait, c);
-
+
c.gridx = 0;
c.gridy = 3;
add(rev_landscape, c);
}
-
+
// event handling orientation
public void actionPerformed(ActionEvent e)
{
@@ -613,9 +613,9 @@ public final class PrinterDialog extends JDialog implements ActionListener
else if (e.getSource() == rev_portrait)
atts.add(OrientationRequested.REVERSE_PORTRAIT);
else
- atts.add(OrientationRequested.REVERSE_LANDSCAPE);
+ atts.add(OrientationRequested.REVERSE_LANDSCAPE);
}
-
+
/**
* Called to update for new selected
* print service. Tests if currently
@@ -629,7 +629,7 @@ public final class PrinterDialog extends JDialog implements ActionListener
landscape.setEnabled(true);
rev_landscape.setEnabled(true);
rev_portrait.setEnabled(true);
-
+
Attribute orientation = attribute(OrientationRequested.class);
if (orientation != null)
{
@@ -639,7 +639,7 @@ public final class PrinterDialog extends JDialog implements ActionListener
portrait.setSelected(true);
else if (orientation.equals(OrientationRequested.REVERSE_PORTRAIT))
rev_portrait.setSelected(true);
- else
+ else
rev_landscape.setSelected(true);
}
else
@@ -651,7 +651,7 @@ public final class PrinterDialog extends JDialog implements ActionListener
portrait.setSelected(true);
else if (defaultValue.equals(OrientationRequested.REVERSE_PORTRAIT))
rev_portrait.setSelected(true);
- else
+ else
rev_landscape.setSelected(true);
}
}
@@ -661,7 +661,7 @@ public final class PrinterDialog extends JDialog implements ActionListener
landscape.setEnabled(false);
rev_landscape.setEnabled(false);
rev_portrait.setEnabled(false);
- }
+ }
}
}
@@ -673,84 +673,84 @@ public final class PrinterDialog extends JDialog implements ActionListener
{
private JLabel size_lb, source_lb;
private JComboBox size, source;
-
+
MediaTypes()
{
size_lb = new JLabel(getLocalizedString("lb.size"));
source_lb = new JLabel(getLocalizedString("lb.source"));
-
+
size = new JComboBox();
size.setEditable(false);
size.addActionListener(this);
source = new JComboBox();
source.setEditable(false);
size.addActionListener(this);
-
+
GridBagLayout layout = new GridBagLayout();
GridBagConstraints c = new GridBagConstraints();
-
+
setLayout(layout);
setBorder(new TitledBorder(getLocalizedString("title.medias")));
-
+
c.insets = new Insets(5, 5, 5, 5);
c.anchor = GridBagConstraints.LINE_END;
c.gridx = 0;
c.gridy = 0;
add(size_lb, c);
-
+
c.gridx = 0;
c.gridy = 1;
add(source_lb, c);
-
+
c.anchor = GridBagConstraints.LINE_START;
c.fill = GridBagConstraints.HORIZONTAL;
c.gridx = 1;
c.gridy = 0;
c.weightx = 1.5;
add(size, c);
-
+
c.gridx = 1;
c.gridy = 1;
c.weightx = 1.5;
add(source, c);
}
-
+
public void actionPerformed(ActionEvent event)
- {
+ {
if (event.getSource() == size)
{
Object obj = size.getSelectedItem();
if (obj instanceof Media)
- atts.add((Media) obj);
+ atts.add((Media) obj);
}
-
+
// we ignore source events currently
- // as only the automatic selection is used.
+ // as only the automatic selection is used.
}
-
+
/**
* Called to update for new selected
* print service. Tests if currently
* selected attributes are supported.
*/
void updateForSelectedService()
- {
+ {
if (categorySupported(Media.class))
{
Media[] medias = (Media[]) getSelectedPrintService()
.getSupportedAttributeValues(Media.class, flavor, null);
-
+
size.removeAllItems();
if (medias.length == 0)
- size.addItem(getLocalizedString("lb.automatically"));
+ size.addItem(getLocalizedString("lb.automatically"));
else
for (int i=0; i < medias.length; i++)
size.addItem(medias[i]);
-
+
Media media = (Media) attribute(Media.class);
if (media != null)
size.setSelectedItem(media);
-
+
// this is currently ignored
source.removeAllItems();
source.addItem(getLocalizedString("lb.automatically"));
@@ -759,7 +759,7 @@ public final class PrinterDialog extends JDialog implements ActionListener
{
size.removeAllItems();
source.removeAllItems();
-
+
size.addItem(getLocalizedString("lb.automatically"));
source.addItem(getLocalizedString("lb.automatically"));
}
@@ -774,14 +774,14 @@ public final class PrinterDialog extends JDialog implements ActionListener
{
private JLabel left, right, top, bottom;
private JTextField left_tf, right_tf, top_tf, bottom_tf;
-
+
Margins()
{
left = new JLabel(getLocalizedString("lb.left"));
right = new JLabel(getLocalizedString("lb.right"));
top = new JLabel(getLocalizedString("lb.top"));
bottom = new JLabel(getLocalizedString("lb.bottom"));
-
+
left_tf = new JTextField(7);
left_tf.addFocusListener(this);
right_tf = new JTextField(7);
@@ -790,67 +790,67 @@ public final class PrinterDialog extends JDialog implements ActionListener
top_tf.addFocusListener(this);
bottom_tf = new JTextField(7);
bottom_tf.addFocusListener(this);
-
+
GridBagLayout layout = new GridBagLayout();
GridBagConstraints c = new GridBagConstraints();
-
+
setLayout(layout);
setBorder(new TitledBorder(getLocalizedString("title.margins")));
-
+
c.insets = new Insets(5, 5, 5, 5);
c.gridx = 0;
c.gridy = 0;
add(left, c);
-
+
c.gridx = 1;
c.gridy = 0;
add(right, c);
-
+
c.insets = new Insets(5, 5, 5, 5);
c.gridx = 0;
c.gridy = 1;
add(left_tf, c);
-
+
c.gridx = 1;
c.gridy = 1;
add(right_tf, c);
-
+
c.insets = new Insets(10, 5, 5, 5);
c.gridx = 0;
c.gridy = 2;
add(top, c);
-
+
c.gridx = 1;
c.gridy = 2;
add(bottom, c);
-
+
c.insets = new Insets(0, 5, 5, 5);
c.gridx = 0;
c.gridy = 3;
add(top_tf, c);
-
+
c.gridx = 1;
c.gridy = 3;
add(bottom_tf, c);
}
-
+
public void focusGained(FocusEvent event)
{
updateMargins();
}
-
+
public void focusLost(FocusEvent event)
{
updateMargins();
}
-
+
// updates the margins after user changed it
private void updateMargins()
{
// We currently do not support this attribute
// as it is not in the IPP spec and therefore not in CUPS
}
-
+
/**
* Called to update for new selected
* print service. Tests if currently
@@ -867,7 +867,7 @@ public final class PrinterDialog extends JDialog implements ActionListener
left_tf.setEnabled(true);
right_tf.setEnabled(true);
top_tf.setEnabled(true);
- bottom_tf.setEnabled(true);
+ bottom_tf.setEnabled(true);
}
else
{
@@ -878,8 +878,8 @@ public final class PrinterDialog extends JDialog implements ActionListener
left_tf.setEnabled(false);
right_tf.setEnabled(false);
top_tf.setEnabled(false);
- bottom_tf.setEnabled(false);
- }
+ bottom_tf.setEnabled(false);
+ }
}
}
@@ -887,8 +887,8 @@ public final class PrinterDialog extends JDialog implements ActionListener
private Orientation orientation_panel;
private Margins margins_panel;
- /**
- * Constructs the page setup user interface.
+ /**
+ * Constructs the page setup user interface.
*/
public PageSetupPanel()
{
@@ -909,7 +909,7 @@ public final class PrinterDialog extends JDialog implements ActionListener
add(Box.createRigidArea(new Dimension(0, 12)));
add(layout_panel);
}
-
+
/**
* Calls update on all internal panels to adjust
* for a new selected print service.
@@ -936,7 +936,7 @@ public final class PrinterDialog extends JDialog implements ActionListener
{
private JRadioButton low, normal, high;
private ButtonGroup group;
-
+
Quality()
{
low = new JRadioButton(getLocalizedString("rbt.low"));
@@ -945,33 +945,33 @@ public final class PrinterDialog extends JDialog implements ActionListener
normal.addActionListener(this);
high = new JRadioButton(getLocalizedString("rbt.high"));
high.addActionListener(this);
-
+
group = new ButtonGroup();
group.add(low);
group.add(normal);
group.add(high);
-
+
GridBagLayout layout = new GridBagLayout();
GridBagConstraints c = new GridBagConstraints();
-
+
setLayout(layout);
setBorder(new TitledBorder(getLocalizedString("title.quality")));
-
+
c.fill = GridBagConstraints.HORIZONTAL;
c.insets = new Insets(5, 5, 5, 5);
c.gridx = 0;
c.gridy = 0;
add(low, c);
-
+
c.gridx = 0;
c.gridy = 1;
add(normal, c);
-
+
c.gridx = 0;
c.gridy = 2;
add(high, c);
}
-
+
public void actionPerformed(ActionEvent e)
{
if (e.getSource() == low)
@@ -979,9 +979,9 @@ public final class PrinterDialog extends JDialog implements ActionListener
else if (e.getSource() == normal)
atts.add(PrintQuality.NORMAL);
else
- atts.add(PrintQuality.HIGH);
+ atts.add(PrintQuality.HIGH);
}
-
+
/**
* Called to update for new selected
* print service. Tests if currently
@@ -994,17 +994,17 @@ public final class PrinterDialog extends JDialog implements ActionListener
low.setEnabled(true);
normal.setEnabled(true);
high.setEnabled(true);
-
- Object defaultValue = defaultValue(PrintQuality.class);
+
+ Object defaultValue = defaultValue(PrintQuality.class);
Attribute quality = attribute(PrintQuality.class);
-
+
if (quality != null)
{
if (quality.equals(PrintQuality.DRAFT))
low.setSelected(true);
else if (quality.equals(PrintQuality.NORMAL))
normal.setSelected(true);
- else
+ else
high.setSelected(true);
}
else
@@ -1013,81 +1013,81 @@ public final class PrinterDialog extends JDialog implements ActionListener
low.setSelected(true);
else if (defaultValue.equals(PrintQuality.NORMAL))
normal.setSelected(true);
- else
+ else
high.setSelected(true);
- }
+ }
}
else
{
low.setEnabled(false);
normal.setEnabled(false);
high.setEnabled(false);
- }
+ }
}
}
-
+
/**
* Handles the job attributes as requesting username, jobname etc.
* @author Wolfgang Baer (WBaer@gmx.de)
*/
final class JobAttributes extends JPanel
implements ActionListener, ChangeListener, FocusListener
- {
- private JLabel jobname, username, priority_lb;
- private JTextField jobname_tf, username_tf;
- private JCheckBox cover;
+ {
+ private JLabel jobname, username, priority_lb;
+ private JTextField jobname_tf, username_tf;
+ private JCheckBox cover;
private JSpinner priority;
private SpinnerNumberModel model;
-
+
JobAttributes()
{
jobname = new JLabel(getLocalizedString("lb.jobname"));
username = new JLabel(getLocalizedString("lb.username"));
priority_lb = new JLabel(getLocalizedString("lb.priority"));
-
+
cover = new JCheckBox(getLocalizedString("cb.cover"));
cover.addActionListener(this);
-
+
model = new SpinnerNumberModel(1, 1, 100, 1);
priority = new JSpinner(model);
priority.addChangeListener(this);
-
+
jobname_tf = new JTextField();
jobname_tf.addFocusListener(this);
username_tf = new JTextField();
username_tf.addFocusListener(this);
-
+
GridBagLayout layout = new GridBagLayout();
GridBagConstraints c = new GridBagConstraints();
-
+
setLayout(layout);
setBorder(new TitledBorder(getLocalizedString("title.jobattributes")));
-
+
c.insets = new Insets(10, 5, 10, 5);
c.gridx = 0;
c.gridy = 0;
add(cover, c);
-
+
c.anchor = GridBagConstraints.LINE_END;
c.gridx = 1;
c.gridy = 0;
c.weightx = 2;
add(priority_lb, c);
-
+
c.gridx = 2;
c.gridy = 0;
c.weightx = 0.5;
add(priority, c);
-
+
c.anchor = GridBagConstraints.LINE_END;
c.gridx = 0;
c.gridy = 1;
add(jobname, c);
-
+
c.gridx = 0;
c.gridy = 2;
add(username, c);
-
+
c.anchor = GridBagConstraints.CENTER;
c.fill = GridBagConstraints.HORIZONTAL;
c.gridx = 1;
@@ -1095,13 +1095,13 @@ public final class PrinterDialog extends JDialog implements ActionListener
c.gridwidth = 2;
c.weightx = 1.5;
add(jobname_tf, c);
-
+
c.insets = new Insets(10, 5, 15, 5);
c.gridx = 1;
c.gridy = 2;
add(username_tf, c);
}
-
+
public void actionPerformed(ActionEvent event)
{
if (cover.isSelected())
@@ -1109,23 +1109,23 @@ public final class PrinterDialog extends JDialog implements ActionListener
else
atts.add(JobSheets.NONE);
}
-
+
public void stateChanged(ChangeEvent event)
{
int value = ((Integer) priority.getValue()).intValue();
- atts.add(new JobPriority(value));
+ atts.add(new JobPriority(value));
}
-
+
public void focusGained(FocusEvent event)
- {
+ {
updateTextfields(event);
}
-
+
public void focusLost(FocusEvent event)
{
updateTextfields(event);
}
-
+
private void updateTextfields(FocusEvent event)
{
if (event.getSource() == jobname_tf)
@@ -1141,59 +1141,59 @@ public final class PrinterDialog extends JDialog implements ActionListener
*/
void updateForSelectedService()
{
- // JobPriority
+ // JobPriority
if (categorySupported(JobPriority.class))
{
JobPriority prio = (JobPriority) attribute(JobPriority.class);
- JobPriority value = (JobPriority) defaultValue(JobPriority.class);
+ JobPriority value = (JobPriority) defaultValue(JobPriority.class);
priority.setEnabled(true);
if (prio != null)
model.setValue(new Integer(prio.getValue()));
else
model.setValue(new Integer(value.getValue()));
- }
+ }
else
- priority.setEnabled(false);
-
+ priority.setEnabled(false);
+
// Requesting username
if (categorySupported(RequestingUserName.class))
{
Attribute user = attribute(RequestingUserName.class);
Object value = defaultValue(RequestingUserName.class);
- username.setEnabled(true);
+ username.setEnabled(true);
if (user != null)
username_tf.setText(user.toString());
else
username_tf.setText(value.toString());
}
else
- username.setEnabled(false);
-
+ username.setEnabled(false);
+
// Job Name
if (categorySupported(JobName.class))
{
Attribute job = attribute(JobName.class);
Object value = defaultValue(JobName.class);
- jobname.setEnabled(true);
+ jobname.setEnabled(true);
if (job != null)
jobname_tf.setText(job.toString());
else
jobname_tf.setText(value.toString());
}
else
- jobname.setEnabled(false);
-
+ jobname.setEnabled(false);
+
// Job sheets
if (categorySupported(JobSheets.class))
{
Attribute sheet = attribute(JobSheets.class);
Object value = defaultValue(JobSheets.class);
- cover.setEnabled(true);
+ cover.setEnabled(true);
if (sheet != null)
{
if (sheet.equals(JobSheets.NONE))
cover.setSelected(false);
- else
+ else
cover.setSelected(true);
}
else
@@ -1205,53 +1205,53 @@ public final class PrinterDialog extends JDialog implements ActionListener
}
}
else
- cover.setEnabled(false);
+ cover.setEnabled(false);
}
}
-
+
/**
* Handles the sides attributes.
* @author Wolfgang Baer (WBaer@gmx.de)
*/
final class SidesPanel extends JPanel implements ActionListener
- {
+ {
private JRadioButton oneside, calendar, duplex;
-
+
SidesPanel()
- {
+ {
oneside = new JRadioButton(getLocalizedString("rbt.onesided"));
oneside.addActionListener(this);
calendar = new JRadioButton(getLocalizedString("rbt.calendar"));
calendar.addActionListener(this);
duplex = new JRadioButton(getLocalizedString("rbt.duplex"));
duplex.addActionListener(this);
-
+
ButtonGroup group = new ButtonGroup();
group.add(oneside);
group.add(calendar);
group.add(duplex);
-
+
GridBagLayout layout = new GridBagLayout();
GridBagConstraints c = new GridBagConstraints();
c.fill = GridBagConstraints.BOTH;
-
+
setLayout(layout);
setBorder(new TitledBorder(getLocalizedString("title.sides")));
-
+
c.insets = new Insets(5, 5, 5, 5);
c.gridx = 0;
c.gridy = 0;
add(oneside, c);
-
+
c.gridx = 0;
c.gridy = 1;
add(calendar, c);
-
+
c.gridx = 0;
c.gridy = 2;
add(duplex, c);
}
-
+
public void actionPerformed(ActionEvent e)
{
if (e.getSource() == calendar)
@@ -1261,7 +1261,7 @@ public final class PrinterDialog extends JDialog implements ActionListener
else
atts.add(Sides.TWO_SIDED_LONG_EDGE);
}
-
+
/**
* Called to update for new selected
* print service. Tests if currently
@@ -1274,8 +1274,8 @@ public final class PrinterDialog extends JDialog implements ActionListener
oneside.setEnabled(true);
calendar.setEnabled(true);
duplex.setEnabled(true);
-
- Object defaultValue = defaultValue(Sides.class);
+
+ Object defaultValue = defaultValue(Sides.class);
Attribute sides = attribute(Sides.class);
if (sides != null)
{
@@ -1297,14 +1297,14 @@ public final class PrinterDialog extends JDialog implements ActionListener
}
}
else
- {
+ {
oneside.setEnabled(false);
calendar.setEnabled(false);
duplex.setEnabled(false);
- }
+ }
}
}
-
+
/**
* Handles the chromaticity attributes.
* @author Wolfgang Baer (WBaer@gmx.de)
@@ -1312,43 +1312,43 @@ public final class PrinterDialog extends JDialog implements ActionListener
final class Color extends JPanel implements ActionListener
{
private JRadioButton bw, color;
-
+
Color()
{
bw = new JRadioButton(getLocalizedString("rbt.blackwhite"));
bw.addActionListener(this);
color = new JRadioButton(getLocalizedString("rbt.color"));
color.addActionListener(this);
-
+
ButtonGroup group = new ButtonGroup();
group.add(bw);
group.add(color);
-
+
GridBagLayout layout = new GridBagLayout();
GridBagConstraints c = new GridBagConstraints();
-
+
setLayout(layout);
setBorder(new TitledBorder(getLocalizedString("title.color")));
-
+
c.fill = GridBagConstraints.HORIZONTAL;
c.insets = new Insets(5, 5, 5, 5);
c.gridx = 0;
c.gridy = 0;
add(bw, c);
-
+
c.gridx = 0;
c.gridy = 1;
add(color, c);
}
-
+
public void actionPerformed(ActionEvent e)
{
if (e.getSource() == bw)
- atts.add(Chromaticity.MONOCHROME);
+ atts.add(Chromaticity.MONOCHROME);
else
atts.add(Chromaticity.COLOR);
}
-
+
/**
* Called to update for new selected
* print service. Tests if currently
@@ -1359,68 +1359,68 @@ public final class PrinterDialog extends JDialog implements ActionListener
if (categorySupported(Chromaticity.class))
{
bw.setEnabled(true);
- color.setEnabled(true);
-
- Object defaultValue = defaultValue(Chromaticity.class);
+ color.setEnabled(true);
+
+ Object defaultValue = defaultValue(Chromaticity.class);
Attribute chromaticity = attribute(Chromaticity.class);
if (chromaticity != null)
{
if (chromaticity.equals(Chromaticity.MONOCHROME))
bw.setSelected(true);
- else
+ else
color.setSelected(true);
}
else
{
if (defaultValue.equals(Chromaticity.MONOCHROME))
bw.setSelected(true);
- else
+ else
color.setSelected(true);
}
}
else
- {
+ {
bw.setEnabled(false);
color.setEnabled(false);
}
}
}
-
+
private Quality quality_panel;
private JobAttributes jobAttr_panel;
private SidesPanel sides_panel;
private Color chromaticy_panel;
-
+
/**
* Creates the panel for appearance attributes.
*/
public AppearancePanel()
{
setBorder(BorderFactory.createEmptyBorder(5, 5, 5, 5));
-
+
quality_panel = new Quality();
jobAttr_panel = new JobAttributes();
sides_panel = new SidesPanel();
chromaticy_panel = new Color();
-
+
JPanel layout_panel = new JPanel();
layout_panel.setLayout(new BoxLayout(layout_panel, BoxLayout.LINE_AXIS));
layout_panel.add(chromaticy_panel);
layout_panel.add(Box.createRigidArea(new Dimension(10, 0)));
layout_panel.add(quality_panel);
-
+
JPanel layout2_panel = new JPanel();
layout2_panel.setLayout(new BoxLayout(layout2_panel, BoxLayout.LINE_AXIS));
layout2_panel.add(sides_panel);
layout2_panel.add(Box.createRigidArea(new Dimension(10, 0)));
layout2_panel.add(jobAttr_panel);
-
+
setLayout(new BoxLayout(this, BoxLayout.PAGE_AXIS));
add(layout_panel);
add(Box.createRigidArea(new Dimension(0, 12)));
add(layout2_panel);
}
-
+
/**
* Calls update on all internal panels to adjust
* for a new selected print service.
@@ -1442,47 +1442,47 @@ public final class PrinterDialog extends JDialog implements ActionListener
private GeneralPanel general_panel;
private PageSetupPanel pagesetup_panel;
private AppearancePanel appearance_panel;
-
+
private PrintService[] services;
private PrintService defaultService;
private PrintService selectedService;
private DocFlavor flavor;
private PrintRequestAttributeSet attributes;
-
- private boolean onlyPageDialog;
- private PrintRequestAttributeSet atts;
-
+
+ private boolean onlyPageDialog;
+ private PrintRequestAttributeSet atts;
+
private final static ResourceBundle messages;
static
- {
+ {
messages = ResourceBundle.getBundle("gnu/javax/print/PrinterDialog");
}
-
+
// TODO LowPriority: Include checks so that if a specific value formerly
// selected is no more supported by the new service changes to the default.
-
+
/**
* Class private constructs a printer dialog.
- *
+ *
* @param gc the screen to use. <code>null</code> is default screen.
* @param services the print services to browse (not null).
* @param defaultService the default service. If <code>null</code>
* the first of the print services in the services array will be used.
* @param flavor the flavours to be printed.
- * @param attributes the attributes requested. Will be updated
+ * @param attributes the attributes requested. Will be updated
* by selections done by the user in the dialog.
* @param onlyPageDialog if true a page settings only dialog is constructed.
- *
+ *
* @throws HeadlessException if GraphicsEnvironment is headless
*/
- private PrinterDialog(GraphicsConfiguration gc, PrintService[] services,
- PrintService defaultService, DocFlavor flavor,
+ private PrinterDialog(GraphicsConfiguration gc, PrintService[] services,
+ PrintService defaultService, DocFlavor flavor,
PrintRequestAttributeSet attributes, boolean onlyPageDialog, String title)
throws HeadlessException
{
super((Frame)null, title, true, gc);
-
+
setResizable(false);
setDefaultCloseOperation(DISPOSE_ON_CLOSE);
@@ -1493,97 +1493,97 @@ public final class PrinterDialog extends JDialog implements ActionListener
for(int i=0; i < services.length; i++)
if (services[i].isDocFlavorSupported(flavor))
list.add(services[i]);
-
+
if (defaultService != null
&& (! list.contains(defaultService)))
defaultService = (PrintService) list.get(0);
-
+
PrintService[] newServices = new PrintService[list.size()];
this.services = (PrintService[]) list.toArray(newServices);
}
else
this.services = services;
-
+
if (defaultService == null)
this.defaultService = services[0];
else
this.defaultService = defaultService;
-
+
this.selectedService = this.defaultService;
this.flavor = flavor;
-
+
// the attributes given by the user
this.attributes = attributes;
// the one to work with during browsing
this.atts = new HashPrintRequestAttributeSet(attributes);
-
+
this.onlyPageDialog = onlyPageDialog;
-
- initUI(onlyPageDialog);
+
+ initUI(onlyPageDialog);
pack();
updateAll();
}
-
+
/**
* Constructs a page settings only dialog.
- *
+ *
* @param gc the screen to use. <code>null</code> is default screen.
* @param service the print service for the page dialog.
* the first of the print services in the services array will be used.
* @param flavor the flavours to be printed.
- * @param attributes the attributes requested. Will be updated
- * by selections done by the user in the dialog.
- *
+ * @param attributes the attributes requested. Will be updated
+ * by selections done by the user in the dialog.
+ *
* @throws HeadlessException if GraphicsEnvironment is headless
*/
- public PrinterDialog(GraphicsConfiguration gc, PrintService service,
+ public PrinterDialog(GraphicsConfiguration gc, PrintService service,
DocFlavor flavor, PrintRequestAttributeSet attributes)
throws HeadlessException
{
- this(gc, new PrintService[] {service}, service, flavor, attributes,
- true, getLocalizedString("title.pagedialog"));
+ this(gc, new PrintService[] {service}, service, flavor, attributes,
+ true, getLocalizedString("title.pagedialog"));
}
-
+
/**
* Constructs a printer dialog.
- *
+ *
* @param gc the screen to use. <code>null</code> is default screen.
* @param services the print services to browse (not null).
* @param defaultService the default service. If <code>null</code>
* the first of the print services in the services array will be used.
* @param flavor the flavours to be printed.
- * @param attributes the attributes requested. Will be updated
- * by selections done by the user in the dialog.
- *
+ * @param attributes the attributes requested. Will be updated
+ * by selections done by the user in the dialog.
+ *
* @throws HeadlessException if GraphicsEnvironment is headless
*/
- public PrinterDialog(GraphicsConfiguration gc, PrintService[] services,
- PrintService defaultService, DocFlavor flavor,
+ public PrinterDialog(GraphicsConfiguration gc, PrintService[] services,
+ PrintService defaultService, DocFlavor flavor,
PrintRequestAttributeSet attributes)
throws HeadlessException
{
- this(gc, services, defaultService, flavor, attributes,
+ this(gc, services, defaultService, flavor, attributes,
false, getLocalizedString("title.printdialog"));
}
// initializes the gui parts
private void initUI(boolean onlyPageDialog)
- {
+ {
JPanel buttonPane = new JPanel();
-
+
if (onlyPageDialog)
{
JPanel pane = new JPanel();
pane.setLayout(new BorderLayout());
pagesetup_panel = new PageSetupPanel();
pane.add(pagesetup_panel, BorderLayout.CENTER);
-
+
ok_bt = new JButton(getLocalizedString("bt.OK"));
ok_bt.addActionListener(this);
cancel_bt = new JButton(getLocalizedString("bt.cancel"));
- cancel_bt.addActionListener(this);
-
- getContentPane().add(pane, BorderLayout.CENTER);
+ cancel_bt.addActionListener(this);
+
+ getContentPane().add(pane, BorderLayout.CENTER);
}
else
{
@@ -1607,14 +1607,14 @@ public final class PrinterDialog extends JDialog implements ActionListener
// Put everything together
getContentPane().add(pane, BorderLayout.CENTER);
}
-
+
buttonPane.setLayout(new BoxLayout(buttonPane, BoxLayout.LINE_AXIS));
buttonPane.setBorder(BorderFactory.createEmptyBorder(5, 5, 5, 5));
buttonPane.add(Box.createHorizontalGlue());
buttonPane.add(ok_bt);
buttonPane.add(Box.createRigidArea(new Dimension(5, 0)));
buttonPane.add(cancel_bt);
-
+
getContentPane().add(buttonPane, BorderLayout.PAGE_END);
}
@@ -1635,17 +1635,17 @@ public final class PrinterDialog extends JDialog implements ActionListener
{
return selectedService;
}
-
+
/**
* Sets the currently selected print service.
- *
+ *
* @param service the service selected.
*/
protected void setSelectedPrintService(PrintService service)
{
selectedService = service;
}
-
+
/**
* Returns the print service array.
* @return The print services.
@@ -1654,7 +1654,7 @@ public final class PrinterDialog extends JDialog implements ActionListener
{
return services;
}
-
+
/**
* Calls update on all panels to adjust
* for a new selected print service.
@@ -1662,57 +1662,57 @@ public final class PrinterDialog extends JDialog implements ActionListener
void updateAll()
{
pagesetup_panel.update();
-
+
if (! onlyPageDialog)
{
general_panel.update();
appearance_panel.update();
- }
+ }
}
-
+
boolean categorySupported(Class category)
{
return getSelectedPrintService().
isAttributeCategorySupported(category);
}
-
+
Object defaultValue(Class category)
{
return getSelectedPrintService().
getDefaultAttributeValue(category);
}
-
+
Attribute attribute(Class category)
{
return atts.get(category);
}
-
- /**
+
+ /**
* Action handler for Print/Cancel buttons.
* If cancel is pressed we reset the attributes
* and the selected service.
- *
+ *
* @param e the ActionEvent
*/
public void actionPerformed(ActionEvent e)
{
if (e.getSource() == ok_bt)
{
- setVisible(false);
+ setVisible(false);
attributes.addAll(atts);
dispose();
}
else
{
- setVisible(false);
+ setVisible(false);
selectedService = null;
dispose();
}
}
-
+
/**
* Retrieves localized messages from the resource bundle.
- *
+ *
* @param key the key
* @return The localized value for the key.
*/
diff --git a/libjava/classpath/gnu/javax/print/ipp/DocPrintJobImpl.java b/libjava/classpath/gnu/javax/print/ipp/DocPrintJobImpl.java
index d391afc7e1a..8cfd6880d50 100644
--- a/libjava/classpath/gnu/javax/print/ipp/DocPrintJobImpl.java
+++ b/libjava/classpath/gnu/javax/print/ipp/DocPrintJobImpl.java
@@ -76,52 +76,52 @@ import javax.print.event.PrintJobEvent;
import javax.print.event.PrintJobListener;
/**
- * Implementation of the DocPrintJob interface. Implementation is
+ * Implementation of the DocPrintJob interface. Implementation is
* specific to the <code>IppPrintService</code> implementation.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
public class DocPrintJobImpl implements CancelablePrintJob
{
/** The print service this job is bound to. */
private IppPrintService service;
-
+
/** The set of print job listeners. */
private HashSet printJobListener = new HashSet();
-
+
/** The print job attributes listeners. */
private ArrayList attributesListener = new ArrayList();
/** The print job attributes listeners associated attribute set. */
private ArrayList attributesListenerAttributes = new ArrayList();
-
+
/** The username. */
private String username;
/** The password of the user. */
private String password;
-
+
/** Returned job uri. */
private JobUri jobUri = null;
/** Returned job id. */
private JobId jobId = null;
-
+
/** The requesting-username for later canceling */
private RequestingUserName requestingUser;
-
+
/** The print job sets. */
private PrintJobAttributeSet oldSet = new HashPrintJobAttributeSet();
private PrintJobAttributeSet currentSet = new HashPrintJobAttributeSet();
-
- /**
+
+ /**
* State variable if we already started printing.
*/
private boolean printing = false;
-
+
// TODO Implement complete PrintJobListener notification
// TODO Implement PrintJobAttributeListener notification
/**
* Constructs a DocPrintJobImpl instance bound to the given print service.
- *
+ *
* @param service the print service instance.
* @param user the user of this print service.
* @param passwd the password of the user.
@@ -141,7 +141,7 @@ public class DocPrintJobImpl implements CancelablePrintJob
{
if (listener == null)
return;
-
+
attributesListener.add(listener);
attributesListenerAttributes.add(attributes);
}
@@ -153,7 +153,7 @@ public class DocPrintJobImpl implements CancelablePrintJob
{
if (listener == null)
return;
-
+
printJobListener.add(listener);
}
@@ -181,30 +181,30 @@ public class DocPrintJobImpl implements CancelablePrintJob
{
if (printing)
throw new PrintException("already printing");
-
+
printing = true;
-
+
DocAttributeSet docAtts = doc.getAttributes();
DocFlavor flavor = doc.getDocFlavor();
-
+
if (flavor == null || (!service.isDocFlavorSupported(flavor)))
{
notifyPrintJobListeners(new PrintJobEvent(this, PrintJobEvent.JOB_FAILED));
throw new PrintFlavorException("Invalid flavor", new DocFlavor[] {flavor});
}
-
- // merge attributes as doc attributes take precendence
+
+ // merge attributes as doc attributes take precendence
// over the print request attributes
HashAttributeSet mergedAtts = new HashAttributeSet();
-
+
if (attributes != null)
mergedAtts.addAll(attributes);
if (docAtts != null)
mergedAtts.addAll(docAtts);
-
+
// check for requesting-user-name -add the
// executing username if no other is specified
- // save user name so we can make a cancel operation under same user
+ // save user name so we can make a cancel operation under same user
if (! mergedAtts.containsKey(RequestingUserName.class))
{
mergedAtts.add(IppPrintService.REQUESTING_USER_NAME);
@@ -212,53 +212,53 @@ public class DocPrintJobImpl implements CancelablePrintJob
}
else
{
- requestingUser = (RequestingUserName)
+ requestingUser = (RequestingUserName)
mergedAtts.get(RequestingUserName.class);
}
-
+
// same for job-name
if (! mergedAtts.containsKey(JobName.class))
mergedAtts.add(IppPrintService.JOB_NAME);
-
+
IppResponse response = null;
-
+
try
{
PrinterURI printerUri = service.getPrinterURI();
String printerUriStr = "http" + printerUri.toString().substring(3);
-
+
URI uri = null;
try
{
uri = new URI(printerUriStr);
}
- catch (URISyntaxException e)
+ catch (URISyntaxException e)
{
- // does not happen
+ // does not happen
}
-
- IppRequest request =
- new IppRequest(uri, username, password);
-
+
+ IppRequest request =
+ new IppRequest(uri, username, password);
+
request.setOperationID( (short) OperationsSupported.PRINT_JOB.getValue());
request.setOperationAttributeDefaults();
request.addOperationAttribute(printerUri);
-
+
if (mergedAtts != null)
{
request.addAndFilterJobOperationAttributes(mergedAtts);
request.addAndFilterJobTemplateAttributes(mergedAtts);
- }
-
+ }
+
// DocFlavor getMimeType returns charset quoted
DocumentFormat format = DocumentFormat.createDocumentFormat(flavor);
request.addOperationAttribute(format);
-
- // Get and set the printdata based on the
+
+ // Get and set the printdata based on the
// representation classname
- String className = flavor.getRepresentationClassName();
-
- if (className.equals("[B"))
+ String className = flavor.getRepresentationClassName();
+
+ if (className.equals("[B"))
{
request.setData((byte[]) doc.getPrintData());
response = request.send();
@@ -275,7 +275,7 @@ public class DocPrintJobImpl implements CancelablePrintJob
try
{
// CUPS only supports UTF-8 currently so we convert
- // We also assume that char[] is always utf-16 - correct ?
+ // We also assume that char[] is always utf-16 - correct ?
String str = new String((char[]) doc.getPrintData());
request.setData(str.getBytes("utf-16"));
response = request.send();
@@ -285,7 +285,7 @@ public class DocPrintJobImpl implements CancelablePrintJob
notifyPrintJobListeners(new PrintJobEvent(this, PrintJobEvent.JOB_FAILED));
throw new PrintFlavorException("Invalid charset of flavor", e, new DocFlavor[] {flavor});
}
- }
+ }
else if (className.equals("java.io.Reader"))
{
try
@@ -300,13 +300,13 @@ public class DocPrintJobImpl implements CancelablePrintJob
notifyPrintJobListeners(new PrintJobEvent(this, PrintJobEvent.JOB_FAILED));
throw new PrintFlavorException("Invalid charset of flavor", e, new DocFlavor[] {flavor});
}
- }
+ }
else if (className.equals("java.lang.String"))
{
try
{
// CUPS only supports UTF-8 currently so we convert
- // We also assume that String is always utf-16 - correct ?
+ // We also assume that String is always utf-16 - correct ?
String str = (String) doc.getPrintData();
request.setData(str.getBytes("utf-16"));
response = request.send();
@@ -316,7 +316,7 @@ public class DocPrintJobImpl implements CancelablePrintJob
notifyPrintJobListeners(new PrintJobEvent(this, PrintJobEvent.JOB_FAILED));
throw new PrintFlavorException("Invalid charset of flavor", e, new DocFlavor[] {flavor});
}
- }
+ }
else if (className.equals("java.net.URL"))
{
URL url = (URL) doc.getPrintData();
@@ -332,22 +332,22 @@ public class DocPrintJobImpl implements CancelablePrintJob
// For the future :-)
throw new PrintException("Not yet supported.");
}
- else
+ else
{
// should not happen - however
notifyPrintJobListeners(new PrintJobEvent(this, PrintJobEvent.JOB_FAILED));
throw new PrintFlavorException("Invalid flavor", new DocFlavor[] {flavor});
- }
-
+ }
+
// at this point the data is transfered
notifyPrintJobListeners(new PrintJobEvent(
this, PrintJobEvent.DATA_TRANSFER_COMPLETE));
- }
+ }
catch (IOException e)
{
throw new PrintException("IOException occured.", e);
- }
-
+ }
+
int status = response.getStatusCode();
if (! (status == IppStatusCode.SUCCESSFUL_OK
|| status == IppStatusCode.SUCCESSFUL_OK_IGNORED_OR_SUBSTITUED_ATTRIBUTES
@@ -356,7 +356,7 @@ public class DocPrintJobImpl implements CancelablePrintJob
notifyPrintJobListeners(new PrintJobEvent(
this, PrintJobEvent.JOB_FAILED));
throw new PrintException("Printing failed - received statuscode " + Integer.toHexString(status));
-
+
// TODO maybe specific status codes may require to throw a specific
// detailed attribute exception
}
@@ -364,18 +364,18 @@ public class DocPrintJobImpl implements CancelablePrintJob
{
// start print job progress monitoring thread
// FIXME Implement
-
+
// for now we just notify as finished
notifyPrintJobListeners(
new PrintJobEvent(this, PrintJobEvent.JOB_COMPLETE));
}
-
+
List jobAtts = response.getJobAttributes();
-
+
// extract the uri and id of job for canceling and further monitoring
Map jobAttributes = (Map) jobAtts.get(0);
jobUri = (JobUri) ((HashSet)jobAttributes.get(JobUri.class)).toArray()[0];
- jobId = (JobId) ((HashSet)jobAttributes.get(JobId.class)).toArray()[0];
+ jobId = (JobId) ((HashSet)jobAttributes.get(JobId.class)).toArray()[0];
}
/**
@@ -385,7 +385,7 @@ public class DocPrintJobImpl implements CancelablePrintJob
{
if (listener == null)
return;
-
+
int index = attributesListener.indexOf(listener);
if (index != -1)
{
@@ -401,10 +401,10 @@ public class DocPrintJobImpl implements CancelablePrintJob
{
if (listener == null)
return;
-
+
printJobListener.remove(listener);
}
-
+
/**
* @see CancelablePrintJob#cancel()
*/
@@ -414,23 +414,23 @@ public class DocPrintJobImpl implements CancelablePrintJob
{
throw new PrintException("print job is not yet send");
}
-
+
IppResponse response = null;
-
+
try
{
- IppRequest request = new IppRequest(jobUri.getURI(), username, password);
+ IppRequest request = new IppRequest(jobUri.getURI(), username, password);
request.setOperationID( (short) OperationsSupported.CANCEL_JOB.getValue());
request.setOperationAttributeDefaults();
request.addOperationAttribute(jobUri);
request.addOperationAttribute(requestingUser);
- response = request.send();
- }
+ response = request.send();
+ }
catch (IOException e)
- {
+ {
throw new IppException("IOException occured during cancel request.", e);
- }
-
+ }
+
int status = response.getStatusCode();
if (! (status == IppStatusCode.SUCCESSFUL_OK
|| status == IppStatusCode.SUCCESSFUL_OK_IGNORED_OR_SUBSTITUED_ATTRIBUTES
@@ -438,15 +438,15 @@ public class DocPrintJobImpl implements CancelablePrintJob
{
notifyPrintJobListeners(new PrintJobEvent(
this, PrintJobEvent.JOB_FAILED));
- throw new PrintException("Canceling failed - received statuscode " + Integer.toHexString(status));
+ throw new PrintException("Canceling failed - received statuscode " + Integer.toHexString(status));
}
- else
+ else
{
notifyPrintJobListeners(new PrintJobEvent(
this, PrintJobEvent.JOB_CANCELED));
}
}
-
+
private void notifyPrintJobListeners(PrintJobEvent e)
{
Iterator it = printJobListener.iterator();
@@ -463,9 +463,9 @@ public class DocPrintJobImpl implements CancelablePrintJob
l.printJobFailed(e);
else if (e.getPrintEventType() == PrintJobEvent.NO_MORE_EVENTS)
l.printJobNoMoreEvents(e);
- else
+ else
l.printJobRequiresAttention(e);
- }
+ }
}
-
+
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/IppDelimiterTag.java b/libjava/classpath/gnu/javax/print/ipp/IppDelimiterTag.java
index ce6bb4f7e64..1c074a8dd62 100644
--- a/libjava/classpath/gnu/javax/print/ipp/IppDelimiterTag.java
+++ b/libjava/classpath/gnu/javax/print/ipp/IppDelimiterTag.java
@@ -1,4 +1,4 @@
-/* IppDelimiterTag.java --
+/* IppDelimiterTag.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -42,57 +42,57 @@ package gnu.javax.print.ipp;
/**
* IPP Delimiter Tags as described in RFC 2910 section 3.5.1.
* <p>
- * Every delimiter tag value can occur in the protocol field
+ * Every delimiter tag value can occur in the protocol field
* begin-attribute-group-tag and indicates that the following
* attributes will be part of the named group.<br>
* The end-of-attributes-tag signals the end of the attributes
* section in the IPP request/response and therefore the beginning
- * of the data section (if any).
+ * of the data section (if any).
* </p>
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
public final class IppDelimiterTag
{
/** Start of the operation attributes group section. */
public static final byte OPERATION_ATTRIBUTES_TAG = 0x01;
-
+
/** Start of the job attributes group section. */
public static final byte JOB_ATTRIBUTES_TAG = 0x02;
-
+
/** End of the attributes section and begin of data section. */
public static final byte END_OF_ATTRIBUTES_TAG = 0x03;
-
+
/** Start of the printer attributes group section. */
public static final byte PRINTER_ATTRIBUTES_TAG = 0x04;
-
+
/** Start of the unsupported attributes group section. */
public static final byte UNSUPPORTED_ATTRIBUTES_TAG = 0x05;
-
-
+
+
// 0x00 reserved for definition in a future IETF
// standards track document
-
+
// 0x06-0x0f reserved for future delimiters in IETF
// standards track documents
-
+
private IppDelimiterTag()
{
// not to be instantiated
}
-
+
/**
- * Tests if given value corresponds to a
+ * Tests if given value corresponds to a
* delimiter tag value.
- *
+ *
* @param value the value to test for
* @return <code>true</code> if, <code>false</code> otherwise.
*/
- public static boolean isDelimiterTag(byte value)
+ public static boolean isDelimiterTag(byte value)
{
if (value >= 0x01 && value <= 0x05)
return true;
-
+
return false;
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/IppException.java b/libjava/classpath/gnu/javax/print/ipp/IppException.java
index 27b156fd857..c34a8f22740 100644
--- a/libjava/classpath/gnu/javax/print/ipp/IppException.java
+++ b/libjava/classpath/gnu/javax/print/ipp/IppException.java
@@ -1,4 +1,4 @@
-/* IppException.java --
+/* IppException.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -44,7 +44,7 @@ import javax.print.PrintException;
* <code>IppException</code> signals exception thrown by
* the IPP implementation for various things like a failed
* ipp request or a wrapped io exception.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
public class IppException extends PrintException
@@ -65,7 +65,7 @@ public class IppException extends PrintException
{
super(s);
}
-
+
/**
* Creates an <code>IppException</code>.
* @param e the exception cause this one.
diff --git a/libjava/classpath/gnu/javax/print/ipp/IppMultiDocPrintService.java b/libjava/classpath/gnu/javax/print/ipp/IppMultiDocPrintService.java
index df2a4793c72..59c3408d5ec 100644
--- a/libjava/classpath/gnu/javax/print/ipp/IppMultiDocPrintService.java
+++ b/libjava/classpath/gnu/javax/print/ipp/IppMultiDocPrintService.java
@@ -1,4 +1,4 @@
-/* IppMultiDocPrintService.java --
+/* IppMultiDocPrintService.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -47,25 +47,25 @@ import javax.print.MultiDocPrintService;
/**
* Implementation of the MultiDocPrintService interface
* for IPP based printers.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
-public class IppMultiDocPrintService extends IppPrintService
+public class IppMultiDocPrintService extends IppPrintService
implements MultiDocPrintService
{
/** The username. */
private transient String user;
-
+
/** The password of the user. */
private transient String passwd;
/**
* Creates a <code>IppMultiDocPrintService</code> object.
- *
+ *
* @param uri the URI of the IPP printer.
* @param username the user of this print service.
* @param password the password of the user.
- *
+ *
* @throws IppException if an error during connection occurs.
*/
public IppMultiDocPrintService(URI uri, String username, String password)
@@ -74,12 +74,12 @@ public class IppMultiDocPrintService extends IppPrintService
super(uri, username, password);
user = username;
passwd = password;
- }
+ }
/**
* @see MultiDocPrintService#createMultiDocPrintJob()
*/
- public MultiDocPrintJob createMultiDocPrintJob()
+ public MultiDocPrintJob createMultiDocPrintJob()
{
return new MultiDocPrintJobImpl(this, user, passwd);
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/IppPrintService.java b/libjava/classpath/gnu/javax/print/ipp/IppPrintService.java
index 56a41381fb6..9ce41c774c9 100644
--- a/libjava/classpath/gnu/javax/print/ipp/IppPrintService.java
+++ b/libjava/classpath/gnu/javax/print/ipp/IppPrintService.java
@@ -1,4 +1,4 @@
-/* IppPrintService.java --
+/* IppPrintService.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -130,175 +130,180 @@ import javax.print.event.PrintServiceAttributeListener;
/**
* Implementation of the PrintService interface
* for IPP based printers.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
public class IppPrintService implements PrintService
{
- /**
+ /**
* A Map with sets of attributes.
* key: A attribute category
* value: A set with values
- *
+ *
* IPP may return sets of attributes e.g. for supported
* compression methods so we need to map to sets here.
*/
- private Map printerAttr;
-
+ private Map<Class<? extends Attribute>, Set<Attribute>> printerAttr;
+
/** The set of listeners.*/
- private HashSet printServiceAttributeListener;
-
+ private HashSet<PrintServiceAttributeListener> printServiceAttributeListener;
+
/** The username. */
private transient String user;
-
+
/** The password of the user. */
private transient String passwd;
-
+
/** The name of this print service. */
private String name;
-
+
/** The list of supported document flavors. */
- private List flavors;
-
+ private List<DocFlavor> flavors;
+
/** The standard printer URI. */
private PrinterURI printerUri;
-
+
/** The list of all supported printer URIs. */
- private ArrayList printerUris;
-
+ private ArrayList<PrinterURI> printerUris;
+
/**
* Logger for tracing - enable by passing
* -Dgnu.classpath.debug.components=ipp to the vm.
*/
static final Logger logger = SystemLogger.SYSTEM;
-
- /**
+
+ /**
* requesting-user-name defaults to the executing user.
*/
public static final RequestingUserName REQUESTING_USER_NAME;
-
- /**
+
+ /**
* job-name defaults to "Java Printing".
*/
public static final JobName JOB_NAME;
-
+
static
{
JOB_NAME = new JobName("Java Printing", null);
REQUESTING_USER_NAME = new RequestingUserName(
- SystemProperties.getProperty("user.name", ""), null);
+ SystemProperties.getProperty("user.name", ""), null);
}
-
+
// TODO Implement service listener notification and change detection.
-
+
/**
* Creates a <code>IppPrintService</code> object.
- *
+ *
* @param uri the URI of the IPP printer.
* @param username the user of this print service.
* @param password the password of the user.
- *
+ *
* @throws IppException if an error during connection occurs.
*/
- public IppPrintService(URI uri, String username, String password)
+ public IppPrintService(URI uri, String username, String password)
throws IppException
{
printerUri = new PrinterURI(uri);
user = username;
passwd = password;
-
- printServiceAttributeListener = new HashSet();
-
+
+ printServiceAttributeListener =
+ new HashSet<PrintServiceAttributeListener>();
+
printerAttr = getPrinterAttributes();
processResponse();
}
-
+
/**
* Fetches all printer attributes from the IPP printer.
- *
+ *
* @return The Map with the printer attributes.
* @throws IppException if an error occurs.
*/
- private Map getPrinterAttributes() throws IppException
+ private Map<Class<? extends Attribute>, Set<Attribute>> getPrinterAttributes()
+ throws IppException
{
IppResponse response = null;
-
+
try
{
- IppRequest request = new IppRequest(printerUri.getURI(), user, passwd);
-
+ IppRequest request = new IppRequest(printerUri.getURI(), user, passwd);
+
int operation = OperationsSupported.GET_PRINTER_ATTRIBUTES.getValue();
- request.setOperationID((short) operation);
- request.setOperationAttributeDefaults();
+ request.setOperationID((short) operation);
+ request.setOperationAttributeDefaults();
request.addOperationAttribute(printerUri);
-
+
response = request.send();
- }
+ }
catch (IOException e)
{
throw new IppException("IOException in IPP request/response.", e);
- }
-
- return (Map) response.getPrinterAttributes().get(0);
+ }
+
+ return response.getPrinterAttributes().get(0);
}
-
+
/**
- * Extracts the set of attribute values for a given
+ * Extracts the set of attribute values for a given
* attribute category from the printer attributes map.
- *
+ *
* @param attributeClass the category
* @return The set of attributes of the category.
*/
- private Set getPrinterAttributeSet(Class attributeClass)
+ private <T extends Attribute> Set<T> getPrinterAttributeSet(Class<T> attributeClass)
{
- return (Set) printerAttr.get(attributeClass);
+ Set<Attribute> set = printerAttr.get(attributeClass);
+ Set<T> attSet = new HashSet<T>();
+ for (Attribute att : set)
+ attSet.add(attributeClass.cast(att));
+ return attSet;
}
-
+
/**
- * Extracts the default attribute value for the given
+ * Extracts the default attribute value for the given
* default attribute category from the printer attributes map.
- *
+ *
* @param attributeClass the category
* @return The default attribute.
- *
+ *
* @throws ClassCastException if attributClass is not an
* instance of <code>DefaultValueAttribute</code>.
*/
- private Attribute getPrinterDefaultAttribute(Class attributeClass)
+ private Attribute getPrinterDefaultAttribute(Class<? extends Attribute> attributeClass)
{
- Set set = (Set) printerAttr.get(attributeClass);
+ Set<Attribute> set = printerAttr.get(attributeClass);
return ((DefaultValueAttribute) set.toArray()[0]).getAssociatedAttribute();
}
-
+
/**
* Processes the response, sorts and splits the attributes.
*/
private void processResponse()
{
// printer name
- PrinterName[] tmp = (PrinterName[]) getPrinterAttributeSet(
- PrinterName.class).toArray(new PrinterName[1]);
+ PrinterName[] tmp = getPrinterAttributeSet(PrinterName.class).toArray(new PrinterName[1]);
name = tmp[0].getValue();
-
+
// supported flavors
// TODO Check if charsets-supported are charsets that are actually supported
// for text doc flavors as cups doesn't send charset parameters
-
+
// utf-8 is supported at least - so we go with this only for now
- flavors = new ArrayList();
- Set flavorAttributes = getPrinterAttributeSet(DocumentFormatSupported.class);
+ flavors = new ArrayList<DocFlavor>();
+ Set<DocumentFormatSupported> flavorAttributes = getPrinterAttributeSet(DocumentFormatSupported.class);
if (flavorAttributes != null)
{
- for (Iterator it = flavorAttributes.iterator(); it.hasNext();)
+ for (DocumentFormatSupported dfs : flavorAttributes)
{
- String mimeType = ((DocumentFormatSupported) it.next()).getValue();
-
+ String mimeType = dfs.getValue();
+
if (mimeType.equals("text/plain"))
{
flavors.add(DocFlavor.CHAR_ARRAY.TEXT_PLAIN);
flavors.add(DocFlavor.READER.TEXT_PLAIN);
flavors.add(DocFlavor.STRING.TEXT_PLAIN);
-
+
// add utf-8
mimeType = mimeType + "; charset=utf-8";
}
@@ -307,21 +312,22 @@ public class IppPrintService implements PrintService
flavors.add(DocFlavor.CHAR_ARRAY.TEXT_HTML);
flavors.add(DocFlavor.READER.TEXT_HTML);
flavors.add(DocFlavor.STRING.TEXT_HTML);
-
+
// add utf-8
mimeType = mimeType + "; charset=utf-8";
}
-
+
// Process the predefined DocFlavors and if mimetype is
// equal put them into the flavors array - otherwise
// just build them as binarie class representation.
boolean changed = false;
try
{
- Class[] clazzes = new Class[] { DocFlavor.BYTE_ARRAY.class,
- DocFlavor.INPUT_STREAM.class,
- DocFlavor.URL.class };
-
+ Class<?>[] clazzes = new Class<?>[] { DocFlavor.BYTE_ARRAY.class,
+ DocFlavor.INPUT_STREAM.class,
+ DocFlavor.URL.class
+ };
+
for (int j = 0; j < clazzes.length; j++)
{
Field[] fields = clazzes[j].getDeclaredFields();
@@ -336,7 +342,7 @@ public class IppPrintService implements PrintService
}
}
if (!changed) // not in predefined constants of DocFlavor
- {
+ {
// everything should be supported as binary stuff
flavors.add(new DocFlavor(mimeType, "[B"));
flavors.add(new DocFlavor(mimeType, "java.io.InputStream"));
@@ -357,54 +363,52 @@ public class IppPrintService implements PrintService
}
}
- if (this.getClass()
- .isAssignableFrom(gnu.javax.print.CupsPrintService.class))
- {
-// CUPS always provides filters to convert from Postscript.
-// This logic looks odd, but it's what OpenJDK does.
- flavors.add(DocFlavor.SERVICE_FORMATTED.PAGEABLE);
- flavors.add(DocFlavor.SERVICE_FORMATTED.PRINTABLE);
- }
+ if (this.getClass()
+ .isAssignableFrom(gnu.javax.print.CupsPrintService.class))
+ {
+// CUPS always provides filters to convert from Postscript.
+// This logic looks odd, but it's what OpenJDK does.
+ flavors.add(DocFlavor.SERVICE_FORMATTED.PAGEABLE);
+ flavors.add(DocFlavor.SERVICE_FORMATTED.PRINTABLE);
+ }
}
// printer uris
- Set uris = getPrinterAttributeSet(PrinterUriSupported.class);
- printerUris = new ArrayList(uris.size());
- Iterator it = uris.iterator();
- while (it.hasNext())
+ Set<PrinterUriSupported> uris = getPrinterAttributeSet(PrinterUriSupported.class);
+ printerUris = new ArrayList<PrinterURI>(uris.size());
+ for (PrinterUriSupported uri : uris)
{
- PrinterUriSupported uri = (PrinterUriSupported) it.next();
printerUris.add( new PrinterURI(uri.getURI()));
}
}
/**
* We always return a implementation implementing CancelablePrintJob.
- *
+ *
* @see javax.print.PrintService#createPrintJob()
*/
public DocPrintJob createPrintJob()
{
return new DocPrintJobImpl(this, user, passwd);
}
-
+
/**
* @see javax.print.PrintService#getAttribute(java.lang.Class)
*/
- public PrintServiceAttribute getAttribute(Class category)
+ public <T extends PrintServiceAttribute> T getAttribute(Class<T> category)
{
if (category == null)
throw new NullPointerException("category may not be null");
-
+
if (! PrintServiceAttribute.class.isAssignableFrom(category))
throw new IllegalArgumentException(
"category must be of type PrintServiceAttribute");
-
- Set set = getPrinterAttributeSet(category);
- if (set != null && set.size() > 0)
- return (PrintServiceAttribute) set.toArray()[0];
-
+
+ Set<T> set = getPrinterAttributeSet(category);
+ if (set != null && set.size() > 0)
+ return set.iterator().next();
+
return null;
}
@@ -414,81 +418,78 @@ public class IppPrintService implements PrintService
public PrintServiceAttributeSet getAttributes()
{
PrintServiceAttributeSet set = new HashPrintServiceAttributeSet();
-
- Iterator it = printerAttr.values().iterator();
- while (it.hasNext())
- {
- Iterator it2 = ((Set) it.next()).iterator();
- while (it2.hasNext())
+
+ for (Set<Attribute> attrSet : printerAttr.values())
+ {
+ for (Attribute attr : attrSet)
{
- Attribute attr = (Attribute) it2.next();
if (attr instanceof PrintServiceAttribute)
set.add(attr);
}
}
-
+
return AttributeSetUtilities.unmodifiableView(set);
}
/**
* @see javax.print.PrintService#getDefaultAttributeValue(java.lang.Class)
*/
- public Object getDefaultAttributeValue(Class category)
- {
+ public Object getDefaultAttributeValue(Class<? extends Attribute> category)
+ {
// required attributes
if (category.equals(Fidelity.class))
- return Fidelity.FIDELITY_FALSE;
+ return Fidelity.FIDELITY_FALSE;
if (category.equals(JobName.class))
return JOB_NAME;
if (category.equals(RequestingUserName.class))
return REQUESTING_USER_NAME;
-
+
// optional attributes
- if (category.equals(JobPriority.class)
+ if (category.equals(JobPriority.class)
&& printerAttr.containsKey(JobPriorityDefault.class))
return getPrinterDefaultAttribute(JobPriorityDefault.class);
- if (category.equals(JobHoldUntil.class)
+ if (category.equals(JobHoldUntil.class)
&& printerAttr.containsKey(JobHoldUntilDefault.class))
return getPrinterDefaultAttribute(JobHoldUntilDefault.class);
- if (category.equals(JobSheets.class)
+ if (category.equals(JobSheets.class)
&& printerAttr.containsKey(JobSheetsDefault.class))
return getPrinterDefaultAttribute(JobSheetsDefault .class);
- if (category.equals(MultipleDocumentHandling.class)
+ if (category.equals(MultipleDocumentHandling.class)
&& printerAttr.containsKey(MultipleDocumentHandlingDefault.class))
return getPrinterDefaultAttribute(MultipleDocumentHandlingDefault.class);
- if (category.equals(Copies.class)
+ if (category.equals(Copies.class)
&& printerAttr.containsKey(CopiesDefault.class))
return getPrinterDefaultAttribute(CopiesDefault.class);
- if (category.equals(Finishings.class)
+ if (category.equals(Finishings.class)
&& printerAttr.containsKey(FinishingsDefault.class))
return getPrinterDefaultAttribute(FinishingsDefault.class);
- if (category.equals(Sides.class)
+ if (category.equals(Sides.class)
&& printerAttr.containsKey(SidesDefault.class))
return getPrinterDefaultAttribute(SidesDefault.class);
- if (category.equals(NumberUp.class)
+ if (category.equals(NumberUp.class)
&& printerAttr.containsKey(NumberUpDefault.class))
return getPrinterDefaultAttribute(NumberUpDefault.class);
- if (category.equals(OrientationRequested.class)
+ if (category.equals(OrientationRequested.class)
&& printerAttr.containsKey(OrientationRequestedDefault.class))
return getPrinterDefaultAttribute(OrientationRequestedDefault.class);
- if (category.equals(Media.class)
+ if (category.equals(Media.class)
&& printerAttr.containsKey(MediaDefault.class))
return getPrinterDefaultAttribute(MediaDefault.class);
- if (category.equals(PrinterResolution.class)
+ if (category.equals(PrinterResolution.class)
&& printerAttr.containsKey(PrinterResolutionDefault.class))
return getPrinterDefaultAttribute(PrinterResolutionDefault.class);
- if (category.equals(PrintQuality.class)
+ if (category.equals(PrintQuality.class)
&& printerAttr.containsKey(PrintQualityDefault.class))
return getPrinterDefaultAttribute(PrintQualityDefault.class);
- if (category.equals(Compression.class)
+ if (category.equals(Compression.class)
&& printerAttr.containsKey(CompressionSupported.class))
return Compression.NONE;
if (category.equals(PageRanges.class))
return new PageRanges(1, Integer.MAX_VALUE);
- return null;
+ return null;
}
-
+
/**
* We return the value of <code>PrinterName</code> here.
* @see javax.print.PrintService#getName()
@@ -506,7 +507,7 @@ public class IppPrintService implements PrintService
{
// SUN does not provide any service factory for
// print services (tested on linux/windows)
-
+
// for the moment we do the same - just return null
// later on we could provide at least the about UI dialog
return null;
@@ -515,11 +516,12 @@ public class IppPrintService implements PrintService
/**
* @see javax.print.PrintService#getSupportedAttributeCategories()
*/
- public Class[] getSupportedAttributeCategories()
+ public Class<?>[] getSupportedAttributeCategories()
{
- Set categories = new HashSet();
-
- // Should only be job template attributes as of section 4.2
+ Set<Class<? extends Attribute>> categories =
+ new HashSet<Class<? extends Attribute>>();
+
+ // Should only be job template attributes as of section 4.2
if (printerAttr.containsKey(JobPrioritySupported.class))
categories.add(JobPriority.class);
if (printerAttr.containsKey(JobHoldUntilSupported.class))
@@ -527,14 +529,14 @@ public class IppPrintService implements PrintService
if (printerAttr.containsKey(JobSheetsSupported.class))
categories.add(JobSheets.class);
if (printerAttr.containsKey(MultipleDocumentHandlingSupported.class))
- categories.add(MultipleDocumentHandling.class);
+ categories.add(MultipleDocumentHandling.class);
if (printerAttr.containsKey(CopiesSupported.class))
categories.add(Copies.class);
if (printerAttr.containsKey(FinishingsSupported.class))
{
// if only none finishing is supported - it does not count as supported
- Set set = getPrinterAttributeSet(FinishingsSupported.class);
- if (! (set.size() == 1 && set.contains(FinishingsSupported.NONE)))
+ Set<FinishingsSupported> set = getPrinterAttributeSet(FinishingsSupported.class);
+ if (! (set.size() == 1 && set.contains(FinishingsSupported.NONE)))
categories.add(Finishings.class);
}
if (printerAttr.containsKey(PageRangesSupported.class))
@@ -551,11 +553,11 @@ public class IppPrintService implements PrintService
categories.add(PrinterResolution.class);
if (printerAttr.containsKey(PrintQualitySupported.class))
categories.add(PrintQuality.class);
-
- // Chromaticity, Destination, MediaPrintableArea,
+
+ // Chromaticity, Destination, MediaPrintableArea,
// SheetCollate, PresentationDirection - not IPP attributes
-
- // attributes outside section 4.2
+
+ // attributes outside section 4.2
if (printerAttr.containsKey(CompressionSupported.class))
categories.add(Compression.class);
if (printerAttr.containsKey(JobImpressionsSupported.class))
@@ -564,13 +566,13 @@ public class IppPrintService implements PrintService
categories.add(JobKOctets.class);
if (printerAttr.containsKey(JobMediaSheetsSupported.class))
categories.add(JobMediaSheets.class);
-
+
// always supported as required by IPP specification
categories.add(Fidelity.class);
categories.add(JobName.class);
categories.add(RequestingUserName.class);
- return (Class[]) categories.toArray(new Class[categories.size()]);
+ return categories.toArray(new Class[categories.size()]);
}
/**
@@ -578,12 +580,12 @@ public class IppPrintService implements PrintService
* attribute values totally different may override this methods. Subclass only in
* need of handling the response differently may override the method
* <code>handleSupportedAttributeValuesResponse(IppResponse, Class)</code> only.
- *
+ *
* @see PrintService#getSupportedAttributeValues(Class, DocFlavor, AttributeSet)
* @see #handleSupportedAttributeValuesResponse(IppResponse, Class)
*/
- public Object getSupportedAttributeValues(Class category, DocFlavor flavor,
- AttributeSet attributes)
+ public Object getSupportedAttributeValues(Class<? extends Attribute> category,
+ DocFlavor flavor, AttributeSet attributes)
{
// We currently ignore the attribute set - there is nothing in the IPP
// specification which would come closer to what we do here.
@@ -620,7 +622,7 @@ public class IppPrintService implements PrintService
request.setOperationAttributeDefaults();
request.addOperationAttribute(new RequestedAttributes(categoryName));
request.addOperationAttribute(printerUri);
-
+
if (flavor != null)
{
DocumentFormat f = DocumentFormat.createDocumentFormat(flavor);
@@ -628,7 +630,7 @@ public class IppPrintService implements PrintService
}
response = request.send();
-
+
int status = response.getStatusCode();
if (! (status == IppStatusCode.SUCCESSFUL_OK
|| status == IppStatusCode.SUCCESSFUL_OK_IGNORED_OR_SUBSTITUED_ATTRIBUTES
@@ -647,41 +649,42 @@ public class IppPrintService implements PrintService
// method cannot throw exception - just log
logger.log(Component.IPP, "IPPException", e);
}
-
+
return handleSupportedAttributeValuesResponse(response, category);
}
-
+
/**
* Called to handle the supported attribute values response for the given
* category. This might be overridden by subclasses with different requirements
* for parsing/handling the response from the GetPrinterAttributes.
- *
+ *
* @param response the response of the GetPrinterAttributes IPP request
* @param category the category for which the supported values are requested
- * @return A object indicating the supported values for the given attribute
- * category, or <code>null</code> if this print service doesn't support the
+ * @return A object indicating the supported values for the given attribute
+ * category, or <code>null</code> if this print service doesn't support the
* given attribute category at all.
- *
+ *
* @see #getSupportedAttributeValues(Class, DocFlavor, AttributeSet)
*/
- protected Object handleSupportedAttributeValuesResponse(IppResponse response,
- Class category)
+ protected Object handleSupportedAttributeValuesResponse(IppResponse response,
+ Class<? extends Attribute> category)
{
- List printerAtts = response.getPrinterAttributes();
-
+ List<Map<Class<? extends Attribute>, Set<Attribute>>> printerAtts =
+ response.getPrinterAttributes();
+
// only one will be returned
- Map printerAttribute = (Map) printerAtts.get(0);
- Class suppCategory = IppUtilities.getSupportedCategory(category);
- Set attr = (Set) printerAttribute.get(suppCategory);
-
- // We sometime assume its a single instance with arbritrary value just indicating
+ Map<Class<? extends Attribute>, Set<Attribute>> printerAttribute = printerAtts.get(0);
+ Class<? extends Attribute> suppCategory = IppUtilities.getSupportedCategory(category);
+ Set<Attribute> attr = printerAttribute.get(suppCategory);
+
+ // We sometime assume its a single instance with arbritrary value just indicating
// support or an array which is returned. This is because I sometimes just choosed
- // what sounds right to me - as I have yet to find a printer which supports every
+ // what sounds right to me - as I have yet to find a printer which supports every
// special category in the SUN implementation to see what they return :-)
-
+
// Map whats in the JSP API
if (suppCategory.equals(JobPrioritySupported.class))
- return (JobPrioritySupported) attr.toArray(new JobPrioritySupported[1])[0];
+ return (JobPrioritySupported) attr.iterator().next();
if (suppCategory.equals(JobHoldUntilSupported.class))
return new JobHoldUntil(new Date());
if (suppCategory.equals(JobSheetsSupported.class))
@@ -689,11 +692,11 @@ public class IppPrintService implements PrintService
if (suppCategory.equals(MultipleDocumentHandlingSupported.class))
return MultipleDocumentHandlingSupported.getAssociatedAttributeArray(attr);
if (suppCategory.equals(CopiesSupported.class))
- return (CopiesSupported) attr.toArray(new CopiesSupported[1])[0];
+ return (CopiesSupported) attr.iterator().next();
if (suppCategory.equals(FinishingsSupported.class))
return FinishingsSupported.getAssociatedAttributeArray(attr);
if (suppCategory.equals(PageRangesSupported.class))
- return new PageRanges[] { new PageRanges(1, Integer.MAX_VALUE) };
+ return new PageRanges[] { new PageRanges(1, Integer.MAX_VALUE) };
if (suppCategory.equals(OrientationRequestedSupported.class))
return OrientationRequestedSupported.getAssociatedAttributeArray(attr);
if (suppCategory.equals(MediaSupported.class))
@@ -707,36 +710,34 @@ public class IppPrintService implements PrintService
// Special handling as it might also be in range of integers
if (suppCategory.equals(NumberUpSupported.class))
{
- NumberUpSupported[] tmp = (NumberUpSupported[])
- attr.toArray(new NumberUpSupported[attr.size()]);
-
if (attr.size() == 1) // number-up maybe in rangeofintegers
- return tmp[0];
+ return attr.iterator().next();
int[][] members = new int[attr.size()][2];
+ Iterator<Attribute> it = attr.iterator();
for (int j = 0; j < attr.size(); j++)
{
- int value = tmp[j].getMembers()[0][0];
+ int value = ((NumberUpSupported) it.next()).getMembers()[0][0];
members[j] = new int[] { value, value };
}
NumberUpSupported supported = new NumberUpSupported(members);
return supported;
}
-
+
return null;
- }
-
+ }
+
/**
* @see javax.print.PrintService#getSupportedDocFlavors()
*/
public DocFlavor[] getSupportedDocFlavors()
{
- return (DocFlavor[]) flavors.toArray(new DocFlavor[flavors.size()]);
+ return flavors.toArray(new DocFlavor[flavors.size()]);
}
/**
- * This is done by a validate-job operation and actually implemented in
+ * This is done by a validate-job operation and actually implemented in
* this generic IPP reference implementation. Subclasses which does
* not correctly support Validate-Job operation might want to override this.
*
@@ -744,7 +745,7 @@ public class IppPrintService implements PrintService
*/
public AttributeSet getUnsupportedAttributes(DocFlavor flavor,
AttributeSet attributes)
- {
+ {
if (flavor != null && !isDocFlavorSupported(flavor))
throw new IllegalArgumentException("flavor is not supported");
@@ -757,21 +758,21 @@ public class IppPrintService implements PrintService
request.setOperationAttributeDefaults();
request.addOperationAttribute(printerUri);
request.addOperationAttribute(Fidelity.FIDELITY_TRUE);
-
+
if (attributes != null && attributes.size() > 0)
{
request.addAndFilterJobOperationAttributes(attributes);
request.addAndFilterJobTemplateAttributes(attributes);
}
-
+
if (flavor != null)
{
DocumentFormat f = DocumentFormat.createDocumentFormat(flavor);
request.addOperationAttribute(f);
}
-
+
response = request.send();
-
+
int status = response.getStatusCode();
if (! (status == IppStatusCode.SUCCESSFUL_OK
|| status == IppStatusCode.SUCCESSFUL_OK_IGNORED_OR_SUBSTITUED_ATTRIBUTES
@@ -791,41 +792,39 @@ public class IppPrintService implements PrintService
logger.log(Component.IPP, "IPPException", e);
}
- // Validate Jobs returns only Unsupported and Operation
- List unsupportedMaps = response.getUnsupportedAttributes();
+ // Validate Jobs returns only Unsupported and Operation
+ List<Map<Class<? extends Attribute>, Set<Attribute>>> unsupportedMaps =
+ response.getUnsupportedAttributes();
if (unsupportedMaps.size() == 0)
- return null;
-
- Map unsupportedAttr = (Map) unsupportedMaps.get(0);
+ return null;
+
+ Map<Class<? extends Attribute>, Set<Attribute>> unsupportedAttr = unsupportedMaps.get(0);
if (unsupportedAttr.size() == 0)
return null;
-
- // Convert the return map with unsupported attributes
+
+ // Convert the return map with unsupported attributes
// into an AttribueSet instance
HashAttributeSet set = new HashAttributeSet();
- Iterator it = unsupportedAttr.values().iterator();
- while (it.hasNext())
+ for (Set<Attribute> unsupported : unsupportedAttr.values())
{
- Set unsupported = (Set) it.next();
- Iterator it2 = unsupported.iterator();
- while (it2.hasNext())
- set.add((Attribute) it2.next());
+ for (Attribute att : unsupported)
+ set.add(att);
}
-
+
return set;
}
/**
* @see PrintService#isAttributeCategorySupported(Class)
*/
- public boolean isAttributeCategorySupported(Class category)
+ public boolean isAttributeCategorySupported(Class<? extends Attribute> category)
{
if (category == null)
throw new NullPointerException("category may not be null");
-
+
if (! Attribute.class.isAssignableFrom(category))
throw new IllegalArgumentException("category must be of type Attribute");
-
+
return Arrays.asList(getSupportedAttributeCategories()).contains(category);
}
@@ -835,28 +834,28 @@ public class IppPrintService implements PrintService
public boolean isAttributeValueSupported(Attribute attrval, DocFlavor flavor,
AttributeSet attributes)
{
- // just redirect to getSupportedAttributeValues
- Object values = getSupportedAttributeValues(attrval.getCategory(),
- flavor, attributes);
+ // just redirect to getSupportedAttributeValues
+ Object values = getSupportedAttributeValues(attrval.getCategory(),
+ flavor, attributes);
// null means none supported
if (values == null)
return false;
-
+
// object may be an array
if (values.getClass().isArray())
return Arrays.asList((Object[]) values).contains(attrval);
-
+
// may be a single instance of the category (value is irrelevant)
if (values.getClass().equals(attrval.getCategory()))
return true;
-
- // a single instance of another class to give the bounds
+
+ // a single instance of another class to give the bounds
// copies
if (values.getClass().equals(CopiesSupported.class))
- return ((CopiesSupported) values).contains((IntegerSyntax) attrval);
+ return ((CopiesSupported) values).contains((IntegerSyntax) attrval);
// number up
if (values.getClass().equals(NumberUpSupported.class))
- return ((NumberUpSupported) values).contains((IntegerSyntax) attrval);
+ return ((NumberUpSupported) values).contains((IntegerSyntax) attrval);
// job priority
if (values.getClass().equals(JobPrioritySupported.class))
{
@@ -865,15 +864,15 @@ public class IppPrintService implements PrintService
if (priority.getValue() < maxSupported.getValue())
return true;
}
-
- // I am unsure if these might also show up - not yet found a printer where
- // Suns implementation supports them:
+
+ // I am unsure if these might also show up - not yet found a printer where
+ // Suns implementation supports them:
// JobImpressionsSupported, JobKOctetsSupported, JobMediaSheetsSupported
-
+
return false;
}
-
+
/**
* @see javax.print.PrintService#isDocFlavorSupported(DocFlavor)
*/
@@ -881,11 +880,11 @@ public class IppPrintService implements PrintService
{
if (flavor == null)
throw new NullPointerException("DocFlavor may not be null.");
-
+
return flavors.contains(flavor);
}
-
+
/**
* @see PrintService#addPrintServiceAttributeListener(PrintServiceAttributeListener)
*/
@@ -894,7 +893,7 @@ public class IppPrintService implements PrintService
{
printServiceAttributeListener.add(listener);
}
-
+
/**
* @see PrintService#removePrintServiceAttributeListener(PrintServiceAttributeListener)
*/
@@ -903,7 +902,7 @@ public class IppPrintService implements PrintService
{
printServiceAttributeListener.remove(listener);
}
-
+
/**
* Returns "IppPrinter: " + <code>getName()</code>
* @return The string representation.
@@ -911,15 +910,15 @@ public class IppPrintService implements PrintService
public String toString()
{
return "IppPrinter: " + getName();
- }
-
+ }
+
/**
* Returns the printer-uri of this print service.
- *
+ *
* @return The printer-uri attribute.
*/
public PrinterURI getPrinterURI()
{
return printerUri;
- }
+ }
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/IppRequest.java b/libjava/classpath/gnu/javax/print/ipp/IppRequest.java
index 869f8224be9..a0de6592fea 100644
--- a/libjava/classpath/gnu/javax/print/ipp/IppRequest.java
+++ b/libjava/classpath/gnu/javax/print/ipp/IppRequest.java
@@ -1,4 +1,4 @@
-/* IppRequest.java --
+/* IppRequest.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -112,37 +112,37 @@ import javax.print.attribute.standard.Sides;
* <li>data - q bytes - optional</li>
* </ul>
* </p>
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
public class IppRequest
{
/**
- * The printer-poll timeout.
+ * The printer-poll timeout.
*/
private static final int timeout = 1000;
/**
* Helper class used to write the attributes of a request
* into the supplied data output stream in the correct way.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
class RequestWriter
- {
+ {
private DataOutputStream out;
-
+
/**
* Creates a RequestWriter.
- *
+ *
* @param stream the stream to write to.
*/
RequestWriter(DataOutputStream stream)
{
out = stream;
}
-
+
/**
* Writes an attribute in IntegerSyntax into the stream.
* @param attribute the attribute
@@ -218,7 +218,7 @@ public class IppRequest
out.write(name.getBytes());
}
else
- out.writeShort(0x0000); // only name-length
+ out.writeShort(0x0000); // only name-length
out.writeShort(8); // range is 8 bytes
out.writeInt(ranges[i][0]);
@@ -283,7 +283,7 @@ public class IppRequest
}
out.writeByte(directionFromUTC);
- out.writeByte(offsetInMillis / 3600000); // hours
+ out.writeByte(offsetInMillis / 3600000); // hours
out.writeByte((offsetInMillis % 3600000) / 60000); // minutes
}
@@ -295,7 +295,7 @@ public class IppRequest
* of NAME value-tag in IPP this method checks for these attributes and
* writes them as NAME_WITHOUT_LANGUAGE value-tag into the stream.
* </p>
- *
+ *
* @param attribute the attribute
* @param out the stream to write to
* @throws IOException if thrown by the stream
@@ -314,11 +314,11 @@ public class IppRequest
out.writeByte(IppValueTag.MIME_MEDIA_TYPE);
else
out.writeByte(IppValueTag.TEXT_WITHOUT_LANGUAGE);
-
+
out.writeShort(name.length());
out.write(name.getBytes());
out.writeShort(attribute.getValue().length());
- out.write(attribute.getValue().getBytes());
+ out.write(attribute.getValue().getBytes());
}
/**
@@ -347,8 +347,8 @@ public class IppRequest
* @throws IOException if thrown by the stream
*/
private void write(CharsetSyntax attribute) throws IOException
- {
- String name = ((Attribute) attribute).getName();
+ {
+ String name = ((Attribute) attribute).getName();
out.writeByte(IppValueTag.CHARSET);
out.writeShort(name.length());
out.write(name.getBytes());
@@ -371,7 +371,7 @@ public class IppRequest
out.writeShort(attribute.getValue().length());
out.write(attribute.getValue().getBytes());
}
-
+
/**
* Writes an attribute in RequestedAttributes into the stream.
* @param attribute the attribute
@@ -380,32 +380,32 @@ public class IppRequest
*/
private void write(RequestedAttributes attribute) throws IOException
{
- List values = attribute.getValues();
-
+ String[] values = attribute.getValues();
+
String name = ((Attribute) attribute).getName();
out.writeByte(IppValueTag.KEYWORD);
out.writeShort(name.length());
- out.write(name.getBytes());
- out.writeShort(((String) values.get(0)).length());
- out.write(((String) values.get(0)).getBytes());
-
- for (int i=1; i < values.size(); i++)
+ out.write(name.getBytes());
+ out.writeShort(values[0].length());
+ out.write(values[0].getBytes());
+
+ for (int i=1; i < values.length; i++)
{
out.writeByte(IppValueTag.KEYWORD);
out.writeShort(0x0000); // length for additional value
- out.writeShort(((String) values.get(i)).length());
- out.write(((String) values.get(i)).getBytes());
+ out.writeShort(values[i].length());
+ out.write(values[i].getBytes());
}
- }
+ }
+
-
/**
* Writes the given operation attribute group of the given map instance
* (key=group, values=set of attributes) into the supplied data
* output stream.
- *
+ *
* @param attributes the set with the attributes.
- *
+ *
* @throws IOException if thrown by the used DataOutputStream.
* @throws IppException if unknown attributes occur.
*/
@@ -413,23 +413,23 @@ public class IppRequest
throws IOException, IppException
{
out.write(IppDelimiterTag.OPERATION_ATTRIBUTES_TAG);
-
+
// its essential to write these two in this order and as first ones
Attribute att = attributes.get(AttributesCharset.class);
write((CharsetSyntax) att);
-
- logger.log(Component.IPP, "Attribute: Name: <"
- + att.getCategory().getName() + "> Value: <" + att.toString() + ">");
-
+
+ logger.log(Component.IPP, "Attribute: Name: <"
+ + att.getCategory().getName() + "> Value: <" + att.toString() + ">");
+
attributes.remove(AttributesCharset.class);
-
+
att = attributes.get(AttributesNaturalLanguage.class);
write((NaturalLanguageSyntax) att);
attributes.remove(AttributesNaturalLanguage.class);
-
- logger.log(Component.IPP, "Attribute: Name: <"
+
+ logger.log(Component.IPP, "Attribute: Name: <"
+ att.getCategory().getName() + "> Value: <" + att.toString() + ">");
-
+
// furthermore its essential to now write out the target attribute
PrinterURI printerUri = (PrinterURI) attributes.get(PrinterURI.class);
JobUri jobUri = (JobUri) attributes.get(JobUri.class);
@@ -470,26 +470,26 @@ public class IppRequest
.getName() + "> Value: <" + jobUri.toString() + ">");
}
else if (reqAttrs != null)
- {
- write(reqAttrs);
- attributes.remove(RequestedAttributes.class);
- logger.log(Component.IPP, "RequestedAttributes: <" + reqAttrs + ">");
- }
+ {
+ write(reqAttrs);
+ attributes.remove(RequestedAttributes.class);
+ logger.log(Component.IPP, "RequestedAttributes: <" + reqAttrs + ">");
+ }
else
{
throw new IppException("Unknown target operation attribute combination.");
- }
-
+ }
+
writeAttributes(attributes);
}
-
+
/**
* Writes the given attribute groups of the given map instance
* (key=group, values=set of attributes) into the supplied data
* output stream.
- *
+ *
* @param attributes the set with the attributes.
- *
+ *
* @throws IOException if thrown by the used DataOutputStream.
* @throws IppException if unknown attributes occur.
*/
@@ -500,9 +500,9 @@ public class IppRequest
for (int i = 0; i < attributeArray.length; i++)
{
logger.log(Component.IPP, "Attribute: Name: <" + attributeArray[i]
- .getCategory().getName() + "> Value: <"
- + attributeArray[i].toString() + ">");
-
+ .getCategory().getName() + "> Value: <"
+ + attributeArray[i].toString() + ">");
+
if (attributeArray[i] instanceof IntegerSyntax)
write((IntegerSyntax) attributeArray[i]);
else if (attributeArray[i] instanceof TextSyntax)
@@ -551,8 +551,8 @@ public class IppRequest
/** The operation type of this request. */
private short operation_id;
- /**
- * The request id of this request. This is
+ /**
+ * The request id of this request. This is
* assigned automatically by the constructor.
*/
private final int request_id;
@@ -564,48 +564,48 @@ public class IppRequest
private AttributeSet jobAttributes;
private Object data;
-
+
private URI requestUri;
/** The underlying connection - IPP is http based */
private HttpURLConnection connection;
-
+
/**
* Creates an IPPRequest instance.
- *
+ *
* @param uri the URI of the request
* @param user the user if any
* @param password the password of the supplied user
*/
public IppRequest(URI uri, String user, String password)
- {
+ {
request_id = incrementRequestIdCounter();
requestUri = uri;
-
+
try
{
- URL url = new URL("http",
- user == null
- ? uri.getHost() : user + ":"
- + password + "@" + uri.getHost(),
+ URL url = new URL("http",
+ user == null
+ ? uri.getHost() : user + ":"
+ + password + "@" + uri.getHost(),
uri.getPort(), uri.getPath());
-
+
connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("POST");
connection.setDoOutput(true);
-
+
connection.setRequestProperty("Content-type", "application/ipp");
- connection.setRequestProperty("Accept", "text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2");
- }
+ connection.setRequestProperty("Accept", "text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2");
+ }
catch (IOException e)
{
// MalformedURLException - uri is already checked
// ProtocolException - POST is correct method type
- // IOException -HTTPURLConnection constructor actually
+ // IOException -HTTPURLConnection constructor actually
// does never throw this exception.
logger.log(Component.IPP, "Unexpected IOException", e);
}
-
+
logger.log(Component.IPP, "[IppConnection] Host: " + uri.getHost()
+ " Port: " + uri.getPort() + " Path: "
+ uri.getPath());
@@ -614,7 +614,7 @@ public class IppRequest
/**
* Synchronized method to be called by the constructor
* to assign a unique request id to this request.
- *
+ *
* @return The unique request id.
*/
private synchronized int incrementRequestIdCounter()
@@ -624,7 +624,7 @@ public class IppRequest
/**
* Returns the id of this request.
- *
+ *
* @return The request ID.
*/
public int getRequestID()
@@ -632,11 +632,11 @@ public class IppRequest
return request_id;
}
- /**
- * Sets the data of the request. The data used in this
+ /**
+ * Sets the data of the request. The data used in this
* request will be the one of the supplied inputstream
* instead of the alternative byte array possibility.
- *
+ *
* @param stream the input stream to use for the data.
*/
public void setData(InputStream stream)
@@ -644,11 +644,11 @@ public class IppRequest
data = stream;
}
- /**
- * Sets the data of the request. The data used in this
+ /**
+ * Sets the data of the request. The data used in this
* request will be the one of the supplied byte[]
* instead of the alternative input stream possibility.
- *
+ *
* @param bytes the byte[] to use for the data.
*/
public void setData(byte[] bytes)
@@ -658,7 +658,7 @@ public class IppRequest
/**
* Sets the operation id for this request.
- *
+ *
* @param id the operation id.
*/
public void setOperationID(short id)
@@ -668,7 +668,7 @@ public class IppRequest
/**
* Adds the default values for the operation
- * attributes "attributes-charset" and
+ * attributes "attributes-charset" and
* "attributes-natural-language"
*/
public void setOperationAttributeDefaults()
@@ -679,64 +679,64 @@ public class IppRequest
operationAttributes.add(AttributesCharset.UTF8);
operationAttributes.add(AttributesNaturalLanguage.EN);
}
-
+
/**
* Add the job attribute of this request to the given
* attribute set.
- *
+ *
* @param attribute the job attribute.
*/
public void addJobAttribute(Attribute attribute)
{
if (jobAttributes == null)
jobAttributes = new HashAttributeSet();
-
+
jobAttributes.add(attribute);
}
-
+
/**
* Sets the printer attribute of this request to the given
* attribute set.
- *
+ *
* @param attribute the printer attribute.
*/
public void addPrinterAttributes(Attribute attribute)
{
if (printerAttributes == null)
printerAttributes = new HashAttributeSet();
-
+
printerAttributes.add(attribute);
}
/**
* Adds the given attribute to the operation attributes set.
- *
+ *
* @param attribute the operation attribute to add.
*/
public void addOperationAttribute(Attribute attribute)
{
if (operationAttributes == null)
operationAttributes = new HashAttributeSet();
-
+
operationAttributes.add(attribute);
}
-
+
/**
* Filters from the given attribute set the job operation out
* and adds them to the operation attributes set.
- *
+ *
* @param set the attributes to filter, may not be <code>null</code>.
*/
public void addAndFilterJobOperationAttributes(AttributeSet set)
{
if (operationAttributes == null)
operationAttributes = new HashAttributeSet();
-
+
// document-natural-language - not defined in JPS attributes
// document-format - specified outside, special treatment
Attribute[] tmp = set.toArray();
- for (int i = 0; i < tmp.length; i++)
- {
+ for (int i = 0; i < tmp.length; i++)
+ {
if (tmp[i].getCategory().equals(JobName.class)
|| tmp[i].getCategory().equals(Fidelity.class)
|| tmp[i].getCategory().equals(JobImpressions.class)
@@ -745,27 +745,27 @@ public class IppRequest
|| tmp[i].getCategory().equals(Compression.class)
|| tmp[i].getCategory().equals(DocumentName.class)
|| tmp[i].getCategory().equals(RequestingUserName.class))
-
- operationAttributes.add(tmp[i]);
- }
+
+ operationAttributes.add(tmp[i]);
+ }
}
-
+
/**
* Filters from the given attribute set the job template attributes
* out and adds them to the job attributes set.
- *
+ *
* @param set the attributes to filter, may not be <code>null</code>.
*/
public void addAndFilterJobTemplateAttributes(AttributeSet set)
{
if (jobAttributes == null)
jobAttributes = new HashAttributeSet();
-
+
// document-natural-language - not defined in JPS attributes
// document-format - specified outside, special treatment
Attribute[] tmp = set.toArray();
- for (int i = 0; i < tmp.length; i++)
- {
+ for (int i = 0; i < tmp.length; i++)
+ {
if (tmp[i].getCategory().equals(JobPriority.class)
|| tmp[i].getCategory().equals(JobHoldUntil.class)
|| tmp[i].getCategory().equals(JobSheets.class)
@@ -780,67 +780,67 @@ public class IppRequest
|| tmp[i].getCategory().equals(PrintQuality.class)
|| tmp[i].getCategory().equals(SheetCollate.class)
|| tmp[i].getCategory().equals(Sides.class))
-
- jobAttributes.add(tmp[i]);
- }
+
+ jobAttributes.add(tmp[i]);
+ }
}
/**
* Does some validation of the supplied parameters and then
* sends the request to the ipp server or service.
- *
+ *
* @return The response if any.
- *
+ *
* @throws IllegalStateException if request is already sent
* @throws IppException if connection or request failed.
- * @throws IOException if writing of the header, attributes or footer fails.
+ * @throws IOException if writing of the header, attributes or footer fails.
*/
public IppResponse send() throws IppException, IOException
{
if (alreadySent)
throw new IllegalStateException("Request is already sent");
-
+
alreadySent = true;
-
- OutputStream stream = connection.getOutputStream();
+
+ OutputStream stream = connection.getOutputStream();
DataOutputStream out = new DataOutputStream(stream);
-
+
// the header 8 bytes long
out.writeShort(VERSION);
out.writeShort(operation_id);
out.writeInt(request_id);
-
- logger.log(Component.IPP, "OperationID: " + Integer.toHexString(operation_id)
- + " RequestID: " + request_id);
-
+
+ logger.log(Component.IPP, "OperationID: " + Integer.toHexString(operation_id)
+ + " RequestID: " + request_id);
+
// Pass stuff the the attribute writer which knows how to
// write the attributes in correct order
logger.log(Component.IPP, "Operation Attributes");
-
+
RequestWriter writer = new RequestWriter(out);
- writer.writeOperationAttributes(operationAttributes);
-
+ writer.writeOperationAttributes(operationAttributes);
+
if (jobAttributes != null)
{
logger.log(Component.IPP, "Job Attributes");
out.write(IppDelimiterTag.JOB_ATTRIBUTES_TAG);
writer.writeAttributes(jobAttributes);
- }
+ }
if (printerAttributes != null)
{
logger.log(Component.IPP, "Printer Attributes");
out.write(IppDelimiterTag.PRINTER_ATTRIBUTES_TAG);
writer.writeAttributes(printerAttributes);
- }
+ }
// write the delimiter to the data
- out.write(IppDelimiterTag.END_OF_ATTRIBUTES_TAG);
+ out.write(IppDelimiterTag.END_OF_ATTRIBUTES_TAG);
// check if data is byte[] or inputstream
if (data instanceof InputStream)
{
byte[] readbuf = new byte[2048];
- int len = 0;
+ int len = 0;
while( (len = ((InputStream) data).read(readbuf)) > 0)
out.write(readbuf, 0, len);
}
@@ -848,27 +848,27 @@ public class IppRequest
{
out.write((byte[]) data);
}
-
+
out.flush();
- stream.flush();
-
+ stream.flush();
+
// Set the connection timeout, for if the printer is offline.
// FIXME: The print services polling should probably be done in its
// own thread.
connection.setConnectTimeout( timeout );
int responseCode = connection.getResponseCode();
-
+
if (responseCode == HttpURLConnection.HTTP_OK)
- {
- IppResponse response = new IppResponse(requestUri, operation_id);
- response.setResponseData(connection.getInputStream());
+ {
+ IppResponse response = new IppResponse(requestUri, operation_id);
+ response.setResponseData(connection.getInputStream());
return response;
}
logger.log(Component.IPP, "HTTP-Statuscode: " + responseCode);
- throw new IppException("Request failed got HTTP status code "
+ throw new IppException("Request failed got HTTP status code "
+ responseCode);
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/IppResponse.java b/libjava/classpath/gnu/javax/print/ipp/IppResponse.java
index 81a1eb47b03..703bdc1eb90 100644
--- a/libjava/classpath/gnu/javax/print/ipp/IppResponse.java
+++ b/libjava/classpath/gnu/javax/print/ipp/IppResponse.java
@@ -1,4 +1,4 @@
-/* IppResponse.java --
+/* IppResponse.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -99,9 +99,9 @@ import javax.print.attribute.standard.PrinterStateReasons;
import javax.print.attribute.standard.Severity;
/**
- * <code>IppResponse</code> models a response received from an IPP
+ * <code>IppResponse</code> models a response received from an IPP
* compatible server as described in RFC 2910 IPP 1.1 Encoding and Transport.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
public class IppResponse
@@ -112,7 +112,7 @@ public class IppResponse
* response stream. It provides access to the attribute groups after parsing
* via getter methods.
* <p>
- * The enconding of a response is structured as follows (for an official
+ * The enconding of a response is structured as follows (for an official
* description please have a look at the RFC document mentioned above):
* <ul>
* <li>version-number - 2 bytes - required</li>
@@ -122,19 +122,19 @@ public class IppResponse
* <li>end-of-attributes-tag - 1 byte - required</li>
* <li>data - q bytes - optional</li>
* </ul>
- * </p><p>
+ * </p><p>
* Where each attribute-group (if any) is encoded as follows:
* <ul>
* <li>begin-attribute-group-tag - 1 byte</li>
* <li>attribute - p bytes - 0 or more</li>
* </ul>
- * </p><p>
+ * </p><p>
* Encoding of attributes:
* <ul>
* <li>attribute-with-one-value - q bytes</li>
* <li>additional-value - r bytes - 0 or more</li>
* </ul>
- * </p><p>
+ * </p><p>
* Encoding of attribute-with-one-value:
* <ul>
* <li>value-tag - 1 byte</li>
@@ -143,7 +143,7 @@ public class IppResponse
* <li>value-length (value is v) - 2 bytes</li>
* <li>value - v bytes</li>
* </ul>
- * </p><p>
+ * </p><p>
* Encoding of additional value:
* <ul>
* <li>value-tag - 1 byte</li>
@@ -152,21 +152,21 @@ public class IppResponse
* <li>value - w bytes</li>
* </ul>
* </p>
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
class ResponseReader
{
/** The IPP version defaults to 1.1 */
private static final short VERSION = 0x0101;
-
+
/**
* Parses the inputstream containing the response of the IPP request.
* @param input the inputstream
* @throws IppException if unexpected exceptions occur.
* @throws IOException if IO problems with the underlying inputstream occur.
*/
- public void parseResponse(InputStream input)
+ public void parseResponse(InputStream input)
throws IppException, IOException
{
DataInputStream stream = new DataInputStream(input);
@@ -179,12 +179,12 @@ public class IppResponse
throw new IppException("Version mismatch - "
+ "implementation does not support other versions than IPP 1.1");
- logger.log(Component.IPP, "Statuscode: "
+ logger.log(Component.IPP, "Statuscode: "
+ Integer.toHexString(status_code) + " Request-ID: " + request_id);
byte tag = 0;
boolean proceed = true;
- HashMap tmp;
+ HashMap<Class<? extends Attribute>, Set<Attribute>> tmp;
// iterate over attribute-groups until end-of-attributes-tag is found
while (proceed)
{
@@ -200,23 +200,23 @@ public class IppResponse
proceed = false;
break;
case IppDelimiterTag.OPERATION_ATTRIBUTES_TAG:
- tmp = new HashMap();
+ tmp = new HashMap<Class<? extends Attribute>, Set<Attribute>>();
tag = parseAttributes(tmp, stream);
operationAttributes.add(tmp);
break;
case IppDelimiterTag.JOB_ATTRIBUTES_TAG:
- tmp = new HashMap();
+ tmp = new HashMap<Class<? extends Attribute>, Set<Attribute>>();
tag = parseAttributes(tmp, stream);
jobAttributes.add(tmp);
break;
case IppDelimiterTag.PRINTER_ATTRIBUTES_TAG:
- tmp = new HashMap();
+ tmp = new HashMap<Class<? extends Attribute>, Set<Attribute>>();
tag = parseAttributes(tmp, stream);
printerAttributes.add(tmp);
break;
case IppDelimiterTag.UNSUPPORTED_ATTRIBUTES_TAG:
System.out.println("Called");
- tmp = new HashMap();
+ tmp = new HashMap<Class<? extends Attribute>, Set<Attribute>>();
tag = parseAttributes(tmp, stream);
unsupportedAttributes.add(tmp);
break;
@@ -247,7 +247,8 @@ public class IppResponse
* @throws IppException if unexpected exceptions occur.
* @throws IOException if IO problems with the underlying inputstream occur.
*/
- private byte parseAttributes(Map attributes, DataInputStream stream)
+ private byte parseAttributes(Map<Class<? extends Attribute>, Set<Attribute>> attributes,
+ DataInputStream stream)
throws IppException, IOException
{
Attribute lastAttribute = null;
@@ -294,7 +295,7 @@ public class IppResponse
// (4) The value itself
value = new byte[valueLength];
- stream.read(value);
+ stream.read(value);
// the value itself
switch (tag)
@@ -304,12 +305,12 @@ public class IppResponse
case IppValueTag.UNKNOWN:
// TODO implement out-of-band handling
// We currently throw an exception to see when it occurs - not yet :-)
- throw new IppException(
+ throw new IppException(
"Unexpected name value for out-of-band value tag " + tag);
case IppValueTag.NO_VALUE:
- attribute = null;
+ attribute = null;
- break;
+ break;
case IppValueTag.INTEGER:
int intValue = IppUtilities.convertToInt(value);
attribute = IppUtilities.getIntegerAttribute(name, intValue);
@@ -319,11 +320,11 @@ public class IppResponse
// JPS API models boolean syntax type as enums
// 0x01 = true, 0x00 = false - all are enums
attribute = IppUtilities.getEnumAttribute(name, new Integer(value[0]));
-
+
break;
case IppValueTag.ENUM:
- int intVal = IppUtilities.convertToInt(value);
- attribute = IppUtilities.getEnumAttribute(name, new Integer(intVal));
+ int intVal = IppUtilities.convertToInt(value);
+ attribute = IppUtilities.getEnumAttribute(name, new Integer(intVal));
break;
case IppValueTag.OCTECTSTRING_UNSPECIFIED:
@@ -347,7 +348,7 @@ public class IppResponse
int crossFeed = IppUtilities.convertToInt(value[0], value[1], value[2], value[3]);
int feed = IppUtilities.convertToInt(value[4], value[5], value[6], value[7]);
int units = value[8];
-
+
if (name.equals("printer-resolution-default"))
attribute = new PrinterResolutionDefault(crossFeed, feed, units);
else if (name.equals("printer-resolution-supported")) // may be here also
@@ -362,7 +363,7 @@ public class IppResponse
attribute = new CopiesSupported(lower, upper);
else if (name.equals("number-up-supported"))
attribute = new NumberUpSupported(lower, upper);
- else if (name.equals("job-k-octets-supported"))
+ else if (name.equals("job-k-octets-supported"))
attribute = new JobKOctetsSupported(lower, upper);
else if (name.equals("job-impressions-supported"))
attribute = new JobImpressionsSupported(lower, upper);
@@ -375,19 +376,19 @@ public class IppResponse
case IppValueTag.NAME_WITH_LANGUAGE:
case IppValueTag.NAME_WITHOUT_LANGUAGE:
attribute = IppUtilities.getTextAttribute(name, tag, value);
-
+
break;
case IppValueTag.KEYWORD:
str = new String(value);
if (name.equals("job-hold-until-supported")) // may also be name type
attribute = new JobHoldUntilSupported(str, null);
else if (name.equals("job-hold-until-default"))
- attribute = new JobHoldUntilDefault(str, null);
+ attribute = new JobHoldUntilDefault(str, null);
else if (name.equals("media-supported"))
attribute = new MediaSupported(str, null);
else if (name.equals("media-default"))
- attribute = new MediaDefault(str, null);
- else if (name.equals("job-sheets-default"))
+ attribute = new MediaDefault(str, null);
+ else if (name.equals("job-sheets-default"))
attribute = new JobSheetsDefault(str, null);
else if (name.equals("job-sheets-supported"))
attribute = new JobSheetsSupported(str, null);
@@ -397,13 +398,13 @@ public class IppResponse
attribute = parsePrinterStateReasons(value, lastAttribute);
else
attribute = IppUtilities.getEnumAttribute(name, str);
-
- // all other stuff is either an enum or needs to be mapped to an
- // UnknownAttribute instance. Enums catched here are:
+
+ // all other stuff is either an enum or needs to be mapped to an
+ // UnknownAttribute instance. Enums catched here are:
// ipp-versions-supported, pdl-override-supported, compression-supported
// uri-authentication-supported, uri-security-supported, sides-supported
// sides-default, multiple-document-handling-supported, multiple-document-handling-default
-
+
break;
case IppValueTag.URI:
try
@@ -429,13 +430,13 @@ public class IppResponse
attribute = new PrinterDriverInstaller(uri);
else if (name.equals("printer-more-info-manufacturer"))
attribute = new PrinterMoreInfoManufacturer(uri);
-
+
break;
case IppValueTag.URI_SCHEME:
// only one uri-scheme exists - and its an enum
if (name.equals("reference-uri-schemes-supported"))
attribute = IppUtilities.getEnumAttribute(name, new String(value));
-
+
break;
case IppValueTag.CHARSET:
str = new String(value);
@@ -445,7 +446,7 @@ public class IppResponse
attribute = new CharsetConfigured(str);
else if (name.equals("charset-supported")) // setOf
attribute = new CharsetSupported(str);
-
+
break;
case IppValueTag.NATURAL_LANGUAGE:
str = new String(value);
@@ -455,7 +456,7 @@ public class IppResponse
attribute = new NaturalLanguageConfigured(str);
else if (name.equals("generated-natural-language-supported")) // setOf
attribute = new GeneratedNaturalLanguageSupported(str);
-
+
break;
case IppValueTag.MIME_MEDIA_TYPE:
str = new String(value);
@@ -465,7 +466,7 @@ public class IppResponse
attribute = new DocumentFormatSupported(str, null);
else if (name.equals("document-format")) // setOf
attribute = new DocumentFormat(str, null);
-
+
break;
default:
throw new IppException("Unknown tag with value "
@@ -473,11 +474,11 @@ public class IppResponse
}
if (attribute == null)
- attribute = new UnknownAttribute(tag, name, value);
-
+ attribute = new UnknownAttribute(tag, name, value);
+
addAttribute(attributes, attribute);
lastAttribute = attribute;
-
+
logger.log(Component.IPP, "Attribute: " + name
+ " Value: " + attribute.toString());
}
@@ -492,20 +493,21 @@ public class IppResponse
* @param attribute
* the attribute to add
*/
- private void addAttribute(Map attributeGroup, Attribute attribute)
+ private void addAttribute(Map<Class<? extends Attribute>, Set<Attribute>> attributeGroup,
+ Attribute attribute)
{
- Class clazz = attribute.getCategory();
- Set attributeValues = (Set) attributeGroup.get(clazz);
+ Class<? extends Attribute> clazz = attribute.getCategory();
+ Set<Attribute> attributeValues = attributeGroup.get(clazz);
if (attributeValues == null) // first attribute of this category
{
- attributeValues = new HashSet();
+ attributeValues = new HashSet<Attribute>();
attributeGroup.put(clazz, attributeValues);
}
attributeValues.add(attribute);
}
-
+
/**
* Parses a name with or without language attribute value from the byte[]
* and returns the result as an object[].
@@ -516,39 +518,39 @@ public class IppResponse
private PrinterStateReasons parsePrinterStateReasons(byte[] value, Attribute lastAttr)
{
String str = new String(value);
- PrinterStateReasons attribute;
-
+ PrinterStateReasons attribute;
+
if (lastAttr instanceof PrinterStateReasons)
attribute = (PrinterStateReasons) lastAttr;
else
attribute = new PrinterStateReasons();
-
+
// special case indicating no reasons
- if (str.equals("none"))
+ if (str.equals("none"))
return attribute;
-
+
Severity severity = null;
PrinterStateReason reason = null;
-
+
if (str.endsWith(Severity.WARNING.toString()))
severity = Severity.WARNING;
else if (str.endsWith(Severity.REPORT.toString()))
severity = Severity.REPORT;
else if (str.endsWith(Severity.ERROR.toString()))
severity = Severity.ERROR;
-
+
if (severity != null)
- str = str.substring(0, str.lastIndexOf('-'));
- else // we must associate a severity
+ str = str.substring(0, str.lastIndexOf('-'));
+ else // we must associate a severity
severity = Severity.REPORT;
-
- reason = (PrinterStateReason)
+
+ reason = (PrinterStateReason)
IppUtilities.getEnumAttribute("printer-state-reason", str);
-
+
attribute.put(reason , severity);
return attribute;
}
-
+
/**
* Parses a name with or without language attribute value from the byte[]
* and returns the result as an object[].
@@ -559,24 +561,24 @@ public class IppResponse
private JobStateReasons parseJobStateReasons(byte[] value, Attribute lastAttr)
{
String str = new String(value);
- JobStateReasons attribute;
-
+ JobStateReasons attribute;
+
if (lastAttr instanceof JobStateReasons)
attribute = (JobStateReasons) lastAttr;
else
attribute = new JobStateReasons();
-
+
// special case indicating no reasons
- if (str.equals("none"))
+ if (str.equals("none"))
return attribute;
-
- JobStateReason reason = (JobStateReason)
+
+ JobStateReason reason = (JobStateReason)
IppUtilities.getEnumAttribute("job-state-reason", str);
-
+
attribute.add(reason);
return attribute;
}
-
+
/**
* Parses a DateTime syntax attribute and returns the constructed Date
* object.
@@ -597,7 +599,7 @@ public class IppResponse
* <li>10 | 11 | minutes from UTC | 0..59</li>
* </ul>
* </p>
- *
+ *
* @param value the byte[]
* @return The date object.
*/
@@ -625,28 +627,28 @@ public class IppResponse
return cal.getTime();
}
}
-
+
/**
* Logger for tracing - enable by passing
* -Dgnu.classpath.debug.components=ipp to the vm.
*/
static final Logger logger = SystemLogger.SYSTEM;
-
+
URI uri;
short operation_id;
short status_code;
int request_id;
- List operationAttributes;
- List printerAttributes;
- List jobAttributes;
- List unsupportedAttributes;
+ List<Map<Class<? extends Attribute>, Set<Attribute>>> operationAttributes;
+ List<Map<Class<? extends Attribute>, Set<Attribute>>> printerAttributes;
+ List<Map<Class<? extends Attribute>, Set<Attribute>>> jobAttributes;
+ List<Map<Class<? extends Attribute>, Set<Attribute>>> unsupportedAttributes;
byte[] data;
/**
* Creates an <code>IppResponse</code> instance.
- *
+ *
* @param uri the uri the request was directy to.
* @param operation_id the operation id of the request.
*/
@@ -654,15 +656,19 @@ public class IppResponse
{
this.uri = uri;
this.operation_id = operation_id;
- operationAttributes = new ArrayList();
- jobAttributes = new ArrayList();
- printerAttributes = new ArrayList();
- unsupportedAttributes = new ArrayList();
+ operationAttributes =
+ new ArrayList<Map<Class<? extends Attribute>, Set<Attribute>>>();
+ jobAttributes =
+ new ArrayList<Map<Class<? extends Attribute>, Set<Attribute>>>();
+ printerAttributes =
+ new ArrayList<Map<Class<? extends Attribute>, Set<Attribute>>>();
+ unsupportedAttributes =
+ new ArrayList<Map<Class<? extends Attribute>, Set<Attribute>>>();
}
/**
* Sets the data received from the request sent.
- *
+ *
* @param input the input stream received.
* @throws IppException if parsing fails.
*/
@@ -703,10 +709,10 @@ public class IppResponse
* Returns the set of job attributes group maps.
* There may occur more than one group of type job attribute in a response
* because of e.g. multiple job or print service informations requested.
- *
- * @return The list of job attribute grou maps.
+ *
+ * @return The list of job attribute group maps.
*/
- public List getJobAttributes()
+ public List<Map<Class<? extends Attribute>, Set<Attribute>>> getJobAttributes()
{
return jobAttributes;
}
@@ -715,10 +721,10 @@ public class IppResponse
* Returns the set of operation attributes group maps.
* There may occur more than one group of type job attribute in a response
* because of e.g. multiple job or print service informations requested.
- *
- * @return The list of operation attribute grou maps.
+ *
+ * @return The list of operation attribute group maps.
*/
- public List getOperationAttributes()
+ public List<Map<Class<? extends Attribute>, Set<Attribute>>> getOperationAttributes()
{
return operationAttributes;
}
@@ -727,17 +733,17 @@ public class IppResponse
* Returns the set of printer attributes group maps.
* There may occur more than one group of type job attribute in a response
* because of e.g. multiple job or print service informations requested.
- *
- * @return The list of printer attribute grou maps.
+ *
+ * @return The list of printer attribute group maps.
*/
- public List getPrinterAttributes()
+ public List<Map<Class<? extends Attribute>, Set<Attribute>>> getPrinterAttributes()
{
return printerAttributes;
}
/**
* Returns the ID of the initial request.
- *
+ *
* @return The request ID.
*/
public int getRequestID()
@@ -748,7 +754,7 @@ public class IppResponse
/**
* Returns the status code of the response.
* Defined in {@link IppStatusCode}.
- *
+ *
* @return The status code.
*/
public short getStatusCode()
@@ -760,17 +766,17 @@ public class IppResponse
* Returns the set of unsupported attributes group maps.
* There may occur more than one group of type job attribute in a response
* because of e.g. multiple job or print service informations requested.
- *
- * @return The list of unsupported attribute grou maps.
+ *
+ * @return The list of unsupported attribute group maps.
*/
- public List getUnsupportedAttributes()
+ public List<Map<Class<? extends Attribute>, Set<Attribute>>> getUnsupportedAttributes()
{
return unsupportedAttributes;
}
/**
* Returns the data of the response.
- *
+ *
* @return The data as byte[].
*/
public byte[] getData()
diff --git a/libjava/classpath/gnu/javax/print/ipp/IppStatusCode.java b/libjava/classpath/gnu/javax/print/ipp/IppStatusCode.java
index d2cb8391f45..a3b245c43b8 100644
--- a/libjava/classpath/gnu/javax/print/ipp/IppStatusCode.java
+++ b/libjava/classpath/gnu/javax/print/ipp/IppStatusCode.java
@@ -1,4 +1,4 @@
-/* IppStatusCode.java --
+/* IppStatusCode.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -39,20 +39,20 @@
package gnu.javax.print.ipp;
/**
- * IPP Status codes as described in RFC 2911 APPENDIX B
+ * IPP Status codes as described in RFC 2911 APPENDIX B
* (Status Codes and Suggested Status Code Messages)
*
* @author Wolfgang Baer (WBaer@gmx.de)
*/
public final class IppStatusCode
-{
- /**
- * Indicates a successful request with no attributes being
- * ignored or substituted.
+{
+ /**
+ * Indicates a successful request with no attributes being
+ * ignored or substituted.
*/
public static final int SUCCESSFUL_OK = 0x0000;
- /**
+ /**
* Indicates a successful request, however some of the supplied
* attributes are ignored or substituted.
*/
@@ -67,7 +67,7 @@ public final class IppStatusCode
// Client Error Status Codes
// Indicates that the client has done something wrong in its
// requests send to the IPP server object
-
+
/** Indicates a bad request e.g. malformed syntax. */
public static final int CLIENT_ERROR_BAD_REQUEST = 0x0400;
@@ -80,9 +80,9 @@ public final class IppStatusCode
/** Indicates that the client is not authorized. */
public static final int CLIENT_ERROR_NOT_AUTHORIZED = 0x0403;
- /**
+ /**
* Indicates a request which is not possible to process.
- * For example if the request is directed at a job already finished.
+ * For example if the request is directed at a job already finished.
*/
public static final int CLIENT_ERROR_NOT_POSSIBLE = 0x0404;
@@ -106,16 +106,16 @@ public final class IppStatusCode
/**
* Indicates that the supplied attributes or values of attributes are not
- * supported by the printer object. Returning this code depends on the
+ * supported by the printer object. Returning this code depends on the
* given "ipp-attribute-fidelity" operation attribute value.
*/
- public static final int CLIENT_ERROR_ATTRIBUTES_OR_VALUES_NOT_SUPPORTED
+ public static final int CLIENT_ERROR_ATTRIBUTES_OR_VALUES_NOT_SUPPORTED
= 0x040B;
- /**
+ /**
* Indicates the the URI scheme in a supplied print-uri or send-uri attribute
* is not supported.
- */
+ */
public static final int CLIENT_ERROR_URI_SCHEME_NOT_SUPPORTED = 0x040C;
/** Indicates that a supplied attributes-charset is not supported. */
@@ -127,8 +127,8 @@ public final class IppStatusCode
/** Indicates that the specified algorithm is not supported. */
public static final int CLIENT_ERROR_COMPRESSION_NOT_SUPPORTED = 0x040F;
- /**
- * Indicates that the document cannot be decompressed with the client
+ /**
+ * Indicates that the document cannot be decompressed with the client
* compression algorithm specified by the client.
*/
public static final int CLIENT_ERROR_COMPRESSION_ERROR = 0x0410;
@@ -136,13 +136,13 @@ public final class IppStatusCode
/** Indicates an error in the document format of the document. */
public static final int CLIENT_ERROR_DOCUMENT_FORMAT_ERROR = 0x0411;
- /**
- * Indicates that the document supplied via print-uri or send-uri cannot be
+ /**
+ * Indicates that the document supplied via print-uri or send-uri cannot be
* accessed by the printer object.
*/
public static final int CLIENT_ERROR_DOCUMENT_ACCESS_ERROR = 0x0412;
-
+
/** Indicates an internal server error. */
public static final int SERVER_ERROR_INTERNAL_ERROR = 0x0500;
@@ -164,7 +164,7 @@ public final class IppStatusCode
/** Indicates that the server is currently not accepting jobs. */
public static final int SERVER_ERROR_NOT_ACCEPTING_JOBS = 0x0506;
- /**
+ /**
* Indicates that the server is currently busy with processing.
* Requests may be tried later again.
*/
@@ -174,11 +174,11 @@ public final class IppStatusCode
public static final int SERVER_ERROR_JOB_CANCELED = 0x0508;
/** Indicates that the server does not support multidocument jobs. */
- public static final int SERVER_ERROR_MULTIPLE_DOCUMENT_JOBS_NOT_SUPPORTED
+ public static final int SERVER_ERROR_MULTIPLE_DOCUMENT_JOBS_NOT_SUPPORTED
= 0x0509;
private IppStatusCode()
- {
+ {
// not to be instantiated
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/IppUtilities.java b/libjava/classpath/gnu/javax/print/ipp/IppUtilities.java
index 3038998879c..fa987ec3f43 100644
--- a/libjava/classpath/gnu/javax/print/ipp/IppUtilities.java
+++ b/libjava/classpath/gnu/javax/print/ipp/IppUtilities.java
@@ -1,4 +1,4 @@
-/* IppUtilities.java --
+/* IppUtilities.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -140,28 +140,30 @@ import javax.print.attribute.standard.Sides;
* Also provides mapping from the attribute name values to
* the actual class object. Used to construct objects via reflection.
* </p>
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
public final class IppUtilities
{
// These are reused in the reflection code to not instantiate an array everytime
private static Object[] INTEGER_ATT_VALUE = new Object[1];
- private static Class[] INTEGER_CLASS_ARRAY = new Class[] {int.class};
+ private static Class<?>[] INTEGER_CLASS_ARRAY = new Class[] {int.class};
private static Object[] TEXT_ATT_VALUE = new Object[2];
- private static Class[] TEXT_CLASS_ARRAY = new Class[] {String.class, Locale.class};
-
+ private static Class<?>[] TEXT_CLASS_ARRAY = new Class[] {String.class, Locale.class};
+
// The map -> Attribute name to Attribute class
- private static HashMap classesByName = new HashMap();
+ private static HashMap<String,Class<? extends Attribute>> classesByName =
+ new HashMap<String,Class<? extends Attribute>>();
// The map -> StandardAttribute class to SupportedAttribute category name
- private static HashMap instanceByClass = new HashMap();
+ private static HashMap<Class<? extends Attribute>,SupportedValuesAttribute> instanceByClass =
+ new HashMap<Class<? extends Attribute>,SupportedValuesAttribute>();
/**
* All the currently needed attributes
*/
static
{
- // enums
+ // enums
classesByName.put(JobState.ABORTED.getName(), JobState.class);
classesByName.put(Sides.DUPLEX.getName(), Sides.class);
classesByName.put(SheetCollate.COLLATED.getName(), SheetCollate.class);
@@ -174,113 +176,113 @@ public final class IppUtilities
classesByName.put(PrintQuality.DRAFT.getName(), PrintQuality.class);
classesByName.put(PrinterState.IDLE.getName(), PrinterState.class);
classesByName.put(SidesDefault.ONE_SIDED.getName(), SidesDefault.class);
- classesByName.put(ReferenceUriSchemesSupported.FILE.getName(),
- ReferenceUriSchemesSupported.class);
+ classesByName.put(ReferenceUriSchemesSupported.FILE.getName(),
+ ReferenceUriSchemesSupported.class);
classesByName.put(PrinterStateReason.DOOR_OPEN.getName(),
- PrinterStateReason.class);
- classesByName.put(PresentationDirection.TOLEFT_TOTOP.getName(),
+ PrinterStateReason.class);
+ classesByName.put(PresentationDirection.TOLEFT_TOTOP.getName(),
PresentationDirection.class);
- classesByName.put(PDLOverrideSupported.ATTEMPTED.getName(),
+ classesByName.put(PDLOverrideSupported.ATTEMPTED.getName(),
PDLOverrideSupported.class);
- classesByName.put(OrientationRequested.PORTRAIT.getName(),
+ classesByName.put(OrientationRequested.PORTRAIT.getName(),
OrientationRequested.class);
- classesByName.put(MultipleDocumentHandling.SINGLE_DOCUMENT.getName(),
+ classesByName.put(MultipleDocumentHandling.SINGLE_DOCUMENT.getName(),
MultipleDocumentHandling.class);
- classesByName.put(JobStateReason.JOB_QUEUED.getName(),
+ classesByName.put(JobStateReason.JOB_QUEUED.getName(),
JobStateReason.class);
- classesByName.put(UriAuthenticationSupported.NONE.getName(),
- UriAuthenticationSupported.class);
- classesByName.put(OperationsSupported.GET_JOBS.getName(),
- OperationsSupported.class);
- classesByName.put(UriSecuritySupported.NONE.getName(),
- UriSecuritySupported.class);
- classesByName.put(FinishingsSupported.NONE.getName(),
- FinishingsSupported.class);
- classesByName.put(FinishingsDefault.NONE.getName(),
- FinishingsDefault.class);
- classesByName.put(IppVersionsSupported.V_1_0.getName(),
- IppVersionsSupported.class);
- classesByName.put(MultipleDocumentHandlingSupported.SINGLE_DOCUMENT.getName(),
- MultipleDocumentHandlingSupported.class);
- classesByName.put(MultipleDocumentHandlingDefault.SINGLE_DOCUMENT.getName(),
- MultipleDocumentHandlingDefault.class);
- classesByName.put(CompressionSupported.NONE.getName(),
- CompressionSupported.class);
- classesByName.put(OrientationRequestedSupported.PORTRAIT.getName(),
- OrientationRequestedSupported.class);
- classesByName.put(OrientationRequestedDefault.PORTRAIT.getName(),
- OrientationRequestedDefault.class);
- classesByName.put(SidesSupported.ONE_SIDED.getName(),
- SidesSupported.class);
- classesByName.put(PrintQualityDefault.DRAFT.getName(),
- PrintQualityDefault.class);
- classesByName.put(PrintQualitySupported.DRAFT.getName(),
- PrintQualitySupported.class);
- classesByName.put(ReferenceUriSchemesSupported.FTP.getName(),
+ classesByName.put(UriAuthenticationSupported.NONE.getName(),
+ UriAuthenticationSupported.class);
+ classesByName.put(OperationsSupported.GET_JOBS.getName(),
+ OperationsSupported.class);
+ classesByName.put(UriSecuritySupported.NONE.getName(),
+ UriSecuritySupported.class);
+ classesByName.put(FinishingsSupported.NONE.getName(),
+ FinishingsSupported.class);
+ classesByName.put(FinishingsDefault.NONE.getName(),
+ FinishingsDefault.class);
+ classesByName.put(IppVersionsSupported.V_1_0.getName(),
+ IppVersionsSupported.class);
+ classesByName.put(MultipleDocumentHandlingSupported.SINGLE_DOCUMENT.getName(),
+ MultipleDocumentHandlingSupported.class);
+ classesByName.put(MultipleDocumentHandlingDefault.SINGLE_DOCUMENT.getName(),
+ MultipleDocumentHandlingDefault.class);
+ classesByName.put(CompressionSupported.NONE.getName(),
+ CompressionSupported.class);
+ classesByName.put(OrientationRequestedSupported.PORTRAIT.getName(),
+ OrientationRequestedSupported.class);
+ classesByName.put(OrientationRequestedDefault.PORTRAIT.getName(),
+ OrientationRequestedDefault.class);
+ classesByName.put(SidesSupported.ONE_SIDED.getName(),
+ SidesSupported.class);
+ classesByName.put(PrintQualityDefault.DRAFT.getName(),
+ PrintQualityDefault.class);
+ classesByName.put(PrintQualitySupported.DRAFT.getName(),
+ PrintQualitySupported.class);
+ classesByName.put(ReferenceUriSchemesSupported.FTP.getName(),
ReferenceUriSchemesSupported.class);
-
- // the boolean types
- classesByName.put(ColorSupported.SUPPORTED.getName(), ColorSupported.class);
- classesByName.put(PrinterIsAcceptingJobs.ACCEPTING_JOBS.getName(),
+
+ // the boolean types
+ classesByName.put(ColorSupported.SUPPORTED.getName(), ColorSupported.class);
+ classesByName.put(PrinterIsAcceptingJobs.ACCEPTING_JOBS.getName(),
PrinterIsAcceptingJobs.class);
- classesByName.put(MultipleDocumentJobsSupported.SUPPORTED.getName(),
+ classesByName.put(MultipleDocumentJobsSupported.SUPPORTED.getName(),
MultipleDocumentJobsSupported.class);
- classesByName.put(PageRangesSupported.SUPPORTED.getName(),
+ classesByName.put(PageRangesSupported.SUPPORTED.getName(),
PageRangesSupported.class);
-
+
// TextSyntax derived attributes
- classesByName.put("media-default", MediaDefault.class);
+ classesByName.put("media-default", MediaDefault.class);
classesByName.put("media-supported", MediaSupported.class);
- classesByName.put("media", MediaSizeName.class);
- classesByName.put("printer-location", PrinterLocation.class);
- classesByName.put("printer-info", PrinterInfo.class);
- classesByName.put("printer-make-and-model", PrinterMakeAndModel.class);
+ classesByName.put("media", MediaSizeName.class);
+ classesByName.put("printer-location", PrinterLocation.class);
+ classesByName.put("printer-info", PrinterInfo.class);
+ classesByName.put("printer-make-and-model", PrinterMakeAndModel.class);
classesByName.put("printer-state-message", PrinterStateMessage.class);
- classesByName.put("job-state-message", JobStateMessage.class);
- classesByName.put("job-sheets-default", JobSheetsDefault.class);
- classesByName.put("job-sheets-supported", JobSheetsSupported.class);
- classesByName.put("job-name", JobName.class);
- classesByName.put("printer-name", PrinterName.class);
- classesByName.put("status-message", StatusMessage.class);
- classesByName.put("detailed-status-message", DetailedStatusMessage.class);
- classesByName.put("document-access-error", DocumentAccessError.class);
- classesByName.put("output-device-assigned", OutputDeviceAssigned.class);
- classesByName.put("job-hold-until-default", JobHoldUntilDefault.class);
- classesByName.put("job-originating-user-name",
- JobOriginatingUserName.class);
- classesByName.put("job-hold-until-supported",
+ classesByName.put("job-state-message", JobStateMessage.class);
+ classesByName.put("job-sheets-default", JobSheetsDefault.class);
+ classesByName.put("job-sheets-supported", JobSheetsSupported.class);
+ classesByName.put("job-name", JobName.class);
+ classesByName.put("printer-name", PrinterName.class);
+ classesByName.put("status-message", StatusMessage.class);
+ classesByName.put("detailed-status-message", DetailedStatusMessage.class);
+ classesByName.put("document-access-error", DocumentAccessError.class);
+ classesByName.put("output-device-assigned", OutputDeviceAssigned.class);
+ classesByName.put("job-hold-until-default", JobHoldUntilDefault.class);
+ classesByName.put("job-originating-user-name",
+ JobOriginatingUserName.class);
+ classesByName.put("job-hold-until-supported",
JobHoldUntilSupported.class);
- classesByName.put("job-message-from-operator",
- JobMessageFromOperator.class);
- classesByName.put("printer-message-from-operator",
- PrinterMessageFromOperator.class);
- classesByName.put("job-detailed-status-messages",
+ classesByName.put("job-message-from-operator",
+ JobMessageFromOperator.class);
+ classesByName.put("printer-message-from-operator",
+ PrinterMessageFromOperator.class);
+ classesByName.put("job-detailed-status-messages",
JobDetailedStatusMessages.class);
- classesByName.put("job-document-access-errors",
- JobDocumentAccessErrors.class);
-
+ classesByName.put("job-document-access-errors",
+ JobDocumentAccessErrors.class);
+
// IntegerSyntax derived Attributes
- classesByName.put("copies-default", CopiesDefault.class);
- classesByName.put("job-id", JobId.class);
+ classesByName.put("copies-default", CopiesDefault.class);
+ classesByName.put("job-id", JobId.class);
classesByName.put("job-priority-supported", JobPrioritySupported.class);
classesByName.put("job-priority-default", JobPriorityDefault.class);
classesByName.put("number-up-supported", NumberUpSupported.class);
classesByName.put("number-up-default", NumberUpDefault.class);
classesByName.put("queued-job-count", QueuedJobCount.class);
- classesByName.put("printer-up-time", PrinterUpTime.class);
+ classesByName.put("printer-up-time", PrinterUpTime.class);
classesByName.put("pages-per-minute", PagesPerMinute.class);
- classesByName.put("pages-per-minute-color", PagesPerMinuteColor.class);
+ classesByName.put("pages-per-minute-color", PagesPerMinuteColor.class);
classesByName.put("job-k-octets-processed", JobKOctetsProcessed.class);
- classesByName.put("number-of-intervening-jobs",
+ classesByName.put("number-of-intervening-jobs",
NumberOfInterveningJobs.class);
- classesByName.put("job-impressions-completed",
- JobImpressionsCompleted.class);
- classesByName.put("job-media-sheets-completed",
+ classesByName.put("job-impressions-completed",
+ JobImpressionsCompleted.class);
+ classesByName.put("job-media-sheets-completed",
JobMediaSheetsCompleted.class);
- classesByName.put("multiple-operation-time-out",
+ classesByName.put("multiple-operation-time-out",
MultipleOperationTimeOut.class);
-
-
+
+
// 4.2 job template attributes
instanceByClass.put(JobPriority.class, new JobPrioritySupported(1));
instanceByClass.put(JobHoldUntil.class, new JobHoldUntilSupported("", null));
@@ -299,7 +301,7 @@ public final class IppUtilities
// 4.4 printer attributes
instanceByClass.put(Compression.class, CompressionSupported.COMPRESS);
}
-
+
private IppUtilities()
{
// not to be instantiated
@@ -308,38 +310,38 @@ public final class IppUtilities
/**
* Returns the implementing class object for given
* attribute name objects.
- *
+ *
* @param name the attribute name
* @return The <code>Class</code> object.
*/
- public static Class getClass(String name)
+ public static Class<? extends Attribute> getClass(String name)
{
- return (Class) classesByName.get(name);
+ return classesByName.get(name);
}
-
+
/**
- * Returns the name of the supported attribute
+ * Returns the name of the supported attribute
* based on the given standard attribute category.
- *
+ *
* @param clazz the standard attribute category
* @return The name of the supported attribute category.
*/
- public static String getSupportedAttrName(Class clazz)
+ public static String getSupportedAttrName(Class<? extends Attribute> clazz)
{
- return ((SupportedValuesAttribute) instanceByClass.get(clazz)).getName();
+ return instanceByClass.get(clazz).getName();
}
-
+
/**
- * Returns the category of the supported attribute
+ * Returns the category of the supported attribute
* based on the given standard attribute category.
- *
+ *
* @param clazz the standard attribute category
* @return The supported attribute category.
*/
- public static Class getSupportedCategory(Class clazz)
+ public static Class<? extends Attribute> getSupportedCategory(Class<? extends Attribute> clazz)
{
- return ((SupportedValuesAttribute) instanceByClass.get(clazz)).getCategory();
- }
+ return instanceByClass.get(clazz).getCategory();
+ }
/**
* Helper method to convert to an int.
@@ -351,7 +353,7 @@ public final class IppUtilities
return (((b[0] & 0xff) << 24) | ((b[1] & 0xff) << 16)
| ((b[2] & 0xff) << 8) | (b[3] & 0xff));
}
-
+
/**
* Helper method to convert to an int.
* @param b1 the 1th byte
@@ -376,22 +378,22 @@ public final class IppUtilities
{
return (short) ((b1 << 8) | (b2 & 0xff));
}
-
+
/**
* Instantiates an <code>EnumSyntax</code> based attribute with the given IPP
* name and the given value (Enums maybe int or String based).
- *
+ *
* @param name the attribute name of the subclass.
* @param value the integer value of the specific enum.
* @return The Attribute (a subclass of EnumSyntax)
*/
public static Attribute getEnumAttribute(String name, Object value)
{
- Class attrClass = getClass(name);
-
+ Class<?> attrClass = getClass(name);
+
// There might be unknown enums we have no mapped class for
if (attrClass == null)
- return null;
+ return null;
try
{
@@ -423,33 +425,33 @@ public final class IppUtilities
{
// should not happen, all fields are public
}
-
+
return null;
}
-
-
-
+
+
+
/**
- * Instantiates an <code>IntegerSyntax</code> based attribute with the
+ * Instantiates an <code>IntegerSyntax</code> based attribute with the
* given IPP name for the given int value.
- *
+ *
* @param name the attribute name of the subclass.
* @param value the integer value
* @return The Attribute (a subclass of IntegerSyntax)
*/
public static Attribute getIntegerAttribute(String name, int value)
- {
- Class attrClass = getClass(name);
-
+ {
+ Class<?> attrClass = getClass(name);
+
// There might be unknown attributes we have no mapped class for
if (attrClass == null)
return null;
try
{
- INTEGER_ATT_VALUE[0] = new Integer(value);
- Constructor c = attrClass.getDeclaredConstructor(INTEGER_CLASS_ARRAY);
- return (Attribute) c.newInstance(INTEGER_ATT_VALUE);
+ INTEGER_ATT_VALUE[0] = Integer.valueOf(value);
+ Constructor<?> c = attrClass.getDeclaredConstructor(INTEGER_CLASS_ARRAY);
+ return (Attribute) c.newInstance(INTEGER_ATT_VALUE);
}
catch (SecurityException e)
{
@@ -471,21 +473,21 @@ public final class IppUtilities
{
// should not happen, all fields are public
}
-
+
return null;
- }
-
+ }
+
/**
* Instantiates an <code>TextSyntax</code> based attribute with the given
* IPP name for the given text value (will be decoded).
- *
+ *
* @param name the attribute name of the subclass.
* @param tag the tag defined in {@link IppValueTag}
* @param value the byte[] value to be decoded based on the tag value.
* @return The Attribute (a subclass of TextSyntax)
*/
public static Attribute getTextAttribute(String name, byte tag, byte[] value)
- {
+ {
// without language tag is rather easy - default locale
if (tag == IppValueTag.NAME_WITHOUT_LANGUAGE
|| tag == IppValueTag.TEXT_WITHOUT_LANGUAGE)
@@ -504,7 +506,7 @@ public final class IppUtilities
String language = new String(tmp);
String text = new String(tmp2);
Locale locale = null;
-
+
if (language.length() > 2)
locale = new Locale(language.substring(0, 2), language.substring(3));
else
@@ -512,18 +514,18 @@ public final class IppUtilities
TEXT_ATT_VALUE[0] = text;
TEXT_ATT_VALUE[1] = locale;
- }
-
- Class attrClass = getClass(name);
-
+ }
+
+ Class<?> attrClass = getClass(name);
+
// There might be unknown attributes we have no mapped class for
if (attrClass == null)
return null;
try
{
- Constructor c = attrClass.getDeclaredConstructor(TEXT_CLASS_ARRAY);
- return (Attribute) c.newInstance(TEXT_ATT_VALUE);
+ Constructor<?> c = attrClass.getDeclaredConstructor(TEXT_CLASS_ARRAY);
+ return (Attribute) c.newInstance(TEXT_ATT_VALUE);
}
catch (SecurityException e)
{
@@ -545,7 +547,7 @@ public final class IppUtilities
{
// should not happen, all fields are public
}
-
+
return null;
}
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/IppValueTag.java b/libjava/classpath/gnu/javax/print/ipp/IppValueTag.java
index 0c81befca08..def9545a38b 100644
--- a/libjava/classpath/gnu/javax/print/ipp/IppValueTag.java
+++ b/libjava/classpath/gnu/javax/print/ipp/IppValueTag.java
@@ -1,4 +1,4 @@
-/* IppValueTag.java --
+/* IppValueTag.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -44,96 +44,96 @@ package gnu.javax.print.ipp;
* Attributes are always of a special type syntax (e.g. boolean or
* interger attribute). These value types are specified by the tag
* constants provided in this class. Beside the syntax types some
- * out of band values for reporting requested attributes as
+ * out of band values for reporting requested attributes as
* unsupported, unknown etc. back to the client.
* </p>
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
public final class IppValueTag
-{
-
+{
+
/** Out of band value for unsupported attributes. */
public static final byte UNSUPPORTED = 0x10;
-
+
// 0x11 reserved for 'default' for definition in a future
- // IETF standards track document
-
+ // IETF standards track document
+
/** Out of band value for unknown attributes. */
public static final byte UNKNOWN = 0x12;
-
+
/** Out of band value for attribute without a value. */
public static final byte NO_VALUE = 0x13;
-
+
// 0x14-0x1F reserved for "out-of-band" values in future IETF
// standards track documents.
-
+
// 0x20 reserved for definition in a future IETF
// standards track document
-
+
/** Indicates a value of syntax type integer. */
public static final byte INTEGER = 0x21;
-
+
/** Indicates a value of syntax type boolean. */
public static final byte BOOLEAN = 0x22;
-
+
/** Indicates a value of syntax type enum (enumeration). */
public static final byte ENUM = 0x23;
-
+
// 0x24-0x2F reserved for integer types for definition in
// future IETF standards track documents
/** Indicates a value of syntax type octect string. */
public static final byte OCTECTSTRING_UNSPECIFIED = 0x30;
-
+
/** Indicates a value of syntax type datetime. */
public static final byte DATETIME = 0x31;
-
+
/** Indicates a value of syntax type resolution. */
public static final byte RESOLUTION = 0x32;
-
+
/** Indicates a value of syntax type range of integers. */
public static final byte RANGEOFINTEGER = 0x33;
-
+
// 0x34 reserved for definition in a future IETF
// standards track document
-
+
/** Indicates a value of syntax type text with language. */
public static final byte TEXT_WITH_LANGUAGE = 0x35;
-
+
/** Indicates a value of syntax type name with language. */
public static final byte NAME_WITH_LANGUAGE = 0x36;
-
+
// 0x37-0x3F reserved for octetString type definitions in
// future IETF standards track documents
// 0x40 reserved for definition in a future IETF
// standards track document
-
+
/** Indicates a value of syntax type text without language. */
public static final byte TEXT_WITHOUT_LANGUAGE = 0x41;
-
+
/** Indicates a value of syntax type name without language. */
public static final byte NAME_WITHOUT_LANGUAGE = 0x42;
-
+
// 0x43 reserved for definition in a future IETF
// standards track document
-
+
/** Indicates a value of syntax type keyword. */
- public static final byte KEYWORD = 0x44;
-
+ public static final byte KEYWORD = 0x44;
+
/** Indicates a value of syntax type URI. */
- public static final byte URI = 0x45;
-
+ public static final byte URI = 0x45;
+
/** Indicates a value of syntax type URI scheme. */
public static final byte URI_SCHEME = 0x46;
-
+
/** Indicates a value of syntax type charset. */
- public static final byte CHARSET = 0x47;
-
+ public static final byte CHARSET = 0x47;
+
/** Indicates a value of syntax type language. */
- public static final byte NATURAL_LANGUAGE =0x48;
-
+ public static final byte NATURAL_LANGUAGE =0x48;
+
/** Indicates a value of syntax type mime media. */
public static final byte MIME_MEDIA_TYPE = 0x49;
@@ -145,15 +145,15 @@ public final class IppValueTag
{
// not to be instantiated;
}
-
+
/**
- * Tests if given value corresponds to a
+ * Tests if given value corresponds to a
* value tag value.
- *
+ *
* @param value the value to test for
* @return <code>true</code> if, <code>false</code> otherwise.
*/
- public static boolean isValueTag(byte value)
+ public static boolean isValueTag(byte value)
{
if(value == 0x10 || value == 0x12 || value == 0x13
|| value == 0x21 || value == 0x22 || value == 0x23
@@ -163,8 +163,8 @@ public final class IppValueTag
|| value == 0x45 || value == 0x46 || value == 0x47
|| value == 0x48 || value == 0x49 )
return true;
-
+
return false;
}
-
+
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/MultiDocPrintJobImpl.java b/libjava/classpath/gnu/javax/print/ipp/MultiDocPrintJobImpl.java
index 1167f52c3b7..89163dc9933 100644
--- a/libjava/classpath/gnu/javax/print/ipp/MultiDocPrintJobImpl.java
+++ b/libjava/classpath/gnu/javax/print/ipp/MultiDocPrintJobImpl.java
@@ -45,18 +45,18 @@ import javax.print.PrintException;
import javax.print.attribute.PrintRequestAttributeSet;
/**
- * Implementation of the MultiDocPrintJob interface. Implementation
+ * Implementation of the MultiDocPrintJob interface. Implementation
* is specific to the <code>IppPrintService</code> implementation.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
-public class MultiDocPrintJobImpl extends DocPrintJobImpl
+public class MultiDocPrintJobImpl extends DocPrintJobImpl
implements MultiDocPrintJob
{
/**
* Constructor forwarding arguments to the super constructor.
- *
+ *
* @param service the print service instance.
* @param user the user of this print service.
* @param passwd the password of the user.
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/CharsetSyntax.java b/libjava/classpath/gnu/javax/print/ipp/attribute/CharsetSyntax.java
index 0db846cbab9..cd112f4594f 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/CharsetSyntax.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/CharsetSyntax.java
@@ -1,4 +1,4 @@
-/* CharsetSyntax.java --
+/* CharsetSyntax.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -41,7 +41,7 @@ package gnu.javax.print.ipp.attribute;
import java.io.Serializable;
/**
- * <code>CharsetSyntax</code> is the abstract base class of all attribute
+ * <code>CharsetSyntax</code> is the abstract base class of all attribute
* classes which provide a charset (US-ASCII) string as value.
*
* @author Wolfgang Baer (WBaer@gmx.de)
@@ -62,7 +62,7 @@ public abstract class CharsetSyntax implements Cloneable, Serializable
{
if (value == null)
throw new NullPointerException("value may not be null");
-
+
this.value = value;
}
@@ -98,14 +98,14 @@ public abstract class CharsetSyntax implements Cloneable, Serializable
if (! (obj instanceof CharsetSyntax))
return false;
- CharsetSyntax tmp = (CharsetSyntax) obj;
+ CharsetSyntax tmp = (CharsetSyntax) obj;
return value.equals(tmp.getValue());
}
/**
* Returns a string representing the object. The returned
* string is the underlying text value of this object.
- *
+ *
* @return The string representation.
*/
public String toString()
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/DefaultValueAttribute.java b/libjava/classpath/gnu/javax/print/ipp/attribute/DefaultValueAttribute.java
index 0f1084f4958..cc40db22ef7 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/DefaultValueAttribute.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/DefaultValueAttribute.java
@@ -1,4 +1,4 @@
-/* DefaultValueAttribute.java --
+/* DefaultValueAttribute.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -41,18 +41,18 @@ package gnu.javax.print.ipp.attribute;
import javax.print.attribute.Attribute;
/**
- * Marker interface for all attribute classes describing attributes
+ * Marker interface for all attribute classes describing attributes
* providing default values. Often there exist a sequence of an
* attribute name like: Name - &gt; Name-default -&gt; Name-supported.
*
* @author Wolfgang Baer (WBaer@gmx.de)
*/
public interface DefaultValueAttribute extends Attribute
-{
+{
/**
* Returns the equally enum of the standard attribute class
* of this SupportedValuesAttribute enum.
- *
+ *
* @return The enum of the standard attribute class.
*/
public Attribute getAssociatedAttribute();
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/DetailedStatusMessage.java b/libjava/classpath/gnu/javax/print/ipp/attribute/DetailedStatusMessage.java
index 433b6f35a38..2d005a82ec9 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/DetailedStatusMessage.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/DetailedStatusMessage.java
@@ -1,4 +1,4 @@
-/* DetailedStatusMessage.java --
+/* DetailedStatusMessage.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -45,12 +45,12 @@ import javax.print.attribute.TextSyntax;
/**
* DetailedStatusMessage attribute as described in RFC 2911 section
- * 3.1.6 Operation Response Status Codes and Status Message
+ * 3.1.6 Operation Response Status Codes and Status Message
* provides a short description of the status of the operation.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
-public final class DetailedStatusMessage extends TextSyntax
+public final class DetailedStatusMessage extends TextSyntax
implements Attribute
{
@@ -74,7 +74,7 @@ public final class DetailedStatusMessage extends TextSyntax
*
* @return The class <code>DetailedStatusMessage</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return DetailedStatusMessage.class;
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/DocumentAccessError.java b/libjava/classpath/gnu/javax/print/ipp/attribute/DocumentAccessError.java
index 3433e3ed731..56b55ba760f 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/DocumentAccessError.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/DocumentAccessError.java
@@ -1,4 +1,4 @@
-/* DocumentAccessError.java --
+/* DocumentAccessError.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -45,12 +45,12 @@ import javax.print.attribute.TextSyntax;
/**
* DocumentAccessError attribute as described in RFC 2911 section
- * 3.1.6 Operation Response Status Codes and Status Message
+ * 3.1.6 Operation Response Status Codes and Status Message
* provides additional information for document access errors.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
-public final class DocumentAccessError extends TextSyntax
+public final class DocumentAccessError extends TextSyntax
implements Attribute
{
@@ -74,7 +74,7 @@ public final class DocumentAccessError extends TextSyntax
*
* @return The class <code>DocumentAccessError</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return DocumentAccessError.class;
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/NaturalLanguageSyntax.java b/libjava/classpath/gnu/javax/print/ipp/attribute/NaturalLanguageSyntax.java
index c90af3eb8e5..a648c8cece7 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/NaturalLanguageSyntax.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/NaturalLanguageSyntax.java
@@ -1,4 +1,4 @@
-/* NaturalLanguageSyntax.java --
+/* NaturalLanguageSyntax.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -41,13 +41,13 @@ package gnu.javax.print.ipp.attribute;
import java.io.Serializable;
/**
- * <code>NaturalLanguageSyntax</code> is the abstract base class of all
- * attribute classes which provide a natural language (US-ASCII)
+ * <code>NaturalLanguageSyntax</code> is the abstract base class of all
+ * attribute classes which provide a natural language (US-ASCII)
* string as value.
*
* @author Wolfgang Baer (WBaer@gmx.de)
*/
-public abstract class NaturalLanguageSyntax
+public abstract class NaturalLanguageSyntax
implements Cloneable, Serializable
{
private final String value;
@@ -64,7 +64,7 @@ public abstract class NaturalLanguageSyntax
{
if (value == null)
throw new NullPointerException("value may not be null");
-
+
this.value = value;
}
@@ -100,14 +100,14 @@ public abstract class NaturalLanguageSyntax
if (! (obj instanceof NaturalLanguageSyntax))
return false;
- NaturalLanguageSyntax tmp = (NaturalLanguageSyntax) obj;
+ NaturalLanguageSyntax tmp = (NaturalLanguageSyntax) obj;
return value.equals(tmp.getValue());
}
/**
* Returns a string representing the object. The returned
* string is the underlying text value of this object.
- *
+ *
* @return The string representation.
*/
public String toString()
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/RequestedAttributes.java b/libjava/classpath/gnu/javax/print/ipp/attribute/RequestedAttributes.java
index 814fe2d0a74..4c129f6d574 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/RequestedAttributes.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/RequestedAttributes.java
@@ -1,4 +1,4 @@
-/* RequestedAttributes.java --
+/* RequestedAttributes.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -48,15 +48,15 @@ import javax.print.attribute.Attribute;
/**
* <code>RequestedAttributes</code> specifies the requested
* attributes in an IPP request operation.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
public final class RequestedAttributes implements Attribute
{
- private ArrayList attributes;
+ private ArrayList<String> attributes;
/**
- * Creates a <code>RequestedAttributes</code> object with
+ * Creates a <code>RequestedAttributes</code> object with
* the initial value.
*
* @param value the string for the ipp name
@@ -67,29 +67,29 @@ public final class RequestedAttributes implements Attribute
{
if (value == null)
throw new NullPointerException();
-
- attributes = new ArrayList();
+
+ attributes = new ArrayList<String>();
attributes.add(value);
}
-
+
/**
* Adds the IPP name value to the set.
- *
+ *
* @param value the string for the ipp name
*/
public void addValue(String value)
{
attributes.add(value);
}
-
+
/**
* Returns the values.
- *
+ *
* @return The values as list.
*/
- public List getValues()
+ public String[] getValues()
{
- return attributes;
+ return attributes.toArray(new String[attributes.size()]);
}
/**
@@ -97,7 +97,7 @@ public final class RequestedAttributes implements Attribute
*
* @return The class <code>DocumentFormat</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return RequestedAttributes.class;
}
@@ -120,13 +120,13 @@ public final class RequestedAttributes implements Attribute
public String toString()
{
CPStringBuilder b = new CPStringBuilder();
-
+
if (attributes.size() > 0)
b.append(attributes.get(0));
-
+
for (int i=1; i < attributes.size(); i++)
b.append(", " + attributes.get(i));
-
+
return b.toString();
- }
+ }
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/StatusMessage.java b/libjava/classpath/gnu/javax/print/ipp/attribute/StatusMessage.java
index 692b26ed562..0701008ef33 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/StatusMessage.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/StatusMessage.java
@@ -1,4 +1,4 @@
-/* StatusMessage.java --
+/* StatusMessage.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -45,9 +45,9 @@ import javax.print.attribute.TextSyntax;
/**
* StatusMessage attribute as described in RFC 2911 section
- * 3.1.6 Operation Response Status Codes and Status Message
+ * 3.1.6 Operation Response Status Codes and Status Message
* provides a short description of the status of the operation.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
public final class StatusMessage extends TextSyntax implements Attribute
@@ -73,7 +73,7 @@ public final class StatusMessage extends TextSyntax implements Attribute
*
* @return The class <code>StatusMessage</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return StatusMessage.class;
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/UnknownAttribute.java b/libjava/classpath/gnu/javax/print/ipp/attribute/UnknownAttribute.java
index 233431ad39c..a03beccbe3b 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/UnknownAttribute.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/UnknownAttribute.java
@@ -1,4 +1,4 @@
-/* UnknownAttribute.java --
+/* UnknownAttribute.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -49,7 +49,7 @@ import javax.print.attribute.Attribute;
/**
* UnknownAttribute holds all the parsed Attribute information.
* It provides methods to get the value-tag, name and value.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
public final class UnknownAttribute implements Attribute
@@ -61,7 +61,7 @@ public final class UnknownAttribute implements Attribute
/**
* Creates a <code>UnknownAttribute</code> object with the given values.
*
- * @param tag the value tag
+ * @param tag the value tag
* @param name the attribute name
* @param value the byte[] with the value
*/
@@ -77,7 +77,7 @@ public final class UnknownAttribute implements Attribute
*
* @return The class <code>UnknownAttribute</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return UnknownAttribute.class;
}
@@ -91,18 +91,18 @@ public final class UnknownAttribute implements Attribute
{
return name;
}
-
+
/**
* Returns the value tag
* @return The tag.
- *
+ *
* @see gnu.javax.print.ipp.IppValueTag
*/
public byte getValueTag()
{
return tag;
}
-
+
/**
* Returns the name of the attribute.
* @return The name.
@@ -111,7 +111,7 @@ public final class UnknownAttribute implements Attribute
{
return name;
}
-
+
/**
* Returns the attribute value origin byte array.
* @return The value.
@@ -120,7 +120,7 @@ public final class UnknownAttribute implements Attribute
{
return value;
}
-
+
/**
* Returns the attribute value decoded as String.
* @return The value as String.
@@ -129,7 +129,7 @@ public final class UnknownAttribute implements Attribute
{
return new String(value);
}
-
+
/**
* Returns the attribute value decoded as int.
* @return The value as int.
@@ -138,7 +138,7 @@ public final class UnknownAttribute implements Attribute
{
return IppUtilities.convertToInt(value);
}
-
+
/**
* Returns the attribute value decoded as an URI.
* @return The value as URI.
@@ -159,7 +159,7 @@ public final class UnknownAttribute implements Attribute
* Provides a string representation for some default
* tag types (e.g. int, rangeofinteger, string, uri).
* For other more complex types "No conversion found."
- * is returned.
+ * is returned.
*/
public String toString()
{
@@ -168,9 +168,9 @@ public final class UnknownAttribute implements Attribute
case IppValueTag.INTEGER:
return "" + getAttributeValueAsInt();
case IppValueTag.RANGEOFINTEGER:
- int lower = IppUtilities.convertToInt(value[0], value[1],
+ int lower = IppUtilities.convertToInt(value[0], value[1],
value[2], value[3]);
- int upper = IppUtilities.convertToInt(value[4], value[5],
+ int upper = IppUtilities.convertToInt(value[4], value[5],
value[6], value[7]);
return lower + "-" + upper;
case IppValueTag.URI:
@@ -186,5 +186,5 @@ public final class UnknownAttribute implements Attribute
default:
return "No conversion found.";
}
- }
+ }
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/CopiesDefault.java b/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/CopiesDefault.java
index 225a0895a0f..39d8fe1c097 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/CopiesDefault.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/CopiesDefault.java
@@ -1,4 +1,4 @@
-/* CopiesDefault.java --
+/* CopiesDefault.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -46,13 +46,13 @@ import javax.print.attribute.standard.Copies;
/**
* <code>CopiesDefault</code> provides the default value
* for the copies attribute.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
public final class CopiesDefault extends IntegerSyntax
implements DefaultValueAttribute
{
-
+
/**
* Creates a <code>CopiesDefault</code> object.
*
@@ -67,13 +67,13 @@ public final class CopiesDefault extends IntegerSyntax
if (value < 1)
throw new IllegalArgumentException("value may not be less than 1");
}
-
+
/**
* Tests if the given object is equal to this object.
*
* @param obj the object to test
*
- * @return <code>true</code> if both objects are equal,
+ * @return <code>true</code> if both objects are equal,
* <code>false</code> otherwise.
*/
public boolean equals(Object obj)
@@ -89,7 +89,7 @@ public final class CopiesDefault extends IntegerSyntax
*
* @return The class <code>CopiesDefault</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return CopiesDefault.class;
}
@@ -103,15 +103,15 @@ public final class CopiesDefault extends IntegerSyntax
{
return "copies-default";
}
-
+
/**
* Returns the equally enum of the standard attribute class
* of this DefaultValuesAttribute enum.
* <p>May return null if no value exists in JPS API.</p>
- *
+ *
* @return The enum of the standard attribute class.
*/
- public Attribute getAssociatedAttribute()
+ public Attribute getAssociatedAttribute()
{
return new Copies(getValue());
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/DocumentFormatDefault.java b/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/DocumentFormatDefault.java
index fe40aee7222..5eff914982c 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/DocumentFormatDefault.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/DocumentFormatDefault.java
@@ -1,4 +1,4 @@
-/* DocumentFormatDefault.java --
+/* DocumentFormatDefault.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -49,16 +49,16 @@ import javax.print.attribute.TextSyntax;
/**
* <code>DocumentFormatDefault</code> specifies the default document
* format of a printer.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*
*/
-public final class DocumentFormatDefault extends TextSyntax
+public final class DocumentFormatDefault extends TextSyntax
implements DefaultValueAttribute
{
/**
- * Creates a <code>DocumentFormatDefault</code> object with the
+ * Creates a <code>DocumentFormatDefault</code> object with the
* given value and locale.
*
* @param value the value for this syntax
@@ -77,7 +77,7 @@ public final class DocumentFormatDefault extends TextSyntax
*
* @return The class <code>DocumentFormatDefault</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return DocumentFormatDefault.class;
}
@@ -95,12 +95,12 @@ public final class DocumentFormatDefault extends TextSyntax
/**
* Returns the equally enum of the standard attribute class
* of this DefaultValuesAttribute enum.
- *
+ *
* @return The enum of the standard attribute class.
*/
- public Attribute getAssociatedAttribute()
+ public Attribute getAssociatedAttribute()
{
return new DocumentFormat(getValue(), getLocale());
}
-
+
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/FinishingsDefault.java b/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/FinishingsDefault.java
index d3dd99c06d2..9d4a060029b 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/FinishingsDefault.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/FinishingsDefault.java
@@ -48,7 +48,7 @@ import javax.print.attribute.EnumSyntax;
/**
* The <code>FinishingsDefault</code> attribute provides the supported
* values for finishings of a job.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
public final class FinishingsDefault extends EnumSyntax
@@ -57,108 +57,108 @@ public final class FinishingsDefault extends EnumSyntax
/** No finishing. */
public static final FinishingsDefault NONE = new FinishingsDefault(3);
-
+
/** Staple the document(s) */
public static final FinishingsDefault STAPLE = new FinishingsDefault(4);
-
+
/** Cover a document */
public static final FinishingsDefault COVER = new FinishingsDefault(6);
-
+
/**
* This value indicates that a binding is to be applied to the document.
* The type and placement of the binding is site-defined.
*/
public static final FinishingsDefault BIND = new FinishingsDefault(7);
-
+
/**
- * Bind the document(s) with one or more staples (wire stitches)
- * along the middle fold.
+ * Bind the document(s) with one or more staples (wire stitches)
+ * along the middle fold.
*/
public static final FinishingsDefault SADDLE_STITCH = new FinishingsDefault(8);
-
+
/**
- * Bind the document(s) with one or more staples (wire stitches)
- * along one edge.
+ * Bind the document(s) with one or more staples (wire stitches)
+ * along one edge.
*/
public static final FinishingsDefault EDGE_STITCH = new FinishingsDefault(9);
-
- /**
- * Bind the document(s) with one or more staples in the top left
- * corner.
+
+ /**
+ * Bind the document(s) with one or more staples in the top left
+ * corner.
*/
public static final FinishingsDefault STAPLE_TOP_LEFT = new FinishingsDefault(20);
-
- /**
- * Bind the document(s) with one or more staples in the bottom
- * left corner.
+
+ /**
+ * Bind the document(s) with one or more staples in the bottom
+ * left corner.
*/
public static final FinishingsDefault STAPLE_BOTTOM_LEFT = new FinishingsDefault(21);
-
+
/**
* Bind the document(s) with one or more staples in the top right corner.
*/
public static final FinishingsDefault STAPLE_TOP_RIGHT = new FinishingsDefault(22);
-
+
/**
* Bind the document(s) with one or more staples in the bottom right corner.
*/
public static final FinishingsDefault STAPLE_BOTTOM_RIGHT = new FinishingsDefault(23);
-
+
/**
- * Bind the document(s) with one or more staples (wire stitches)
+ * Bind the document(s) with one or more staples (wire stitches)
* along the left edge.
*/
public static final FinishingsDefault EDGE_STITCH_LEFT = new FinishingsDefault(24);
-
+
/**
- * Bind the document(s) with one or more staples (wire stitches) along
+ * Bind the document(s) with one or more staples (wire stitches) along
* the top edge.
*/
public static final FinishingsDefault EDGE_STITCH_TOP = new FinishingsDefault(25);
-
+
/**
- * Bind the document(s) with one or more staples (wire stitches) along
+ * Bind the document(s) with one or more staples (wire stitches) along
* the right edge.
*/
public static final FinishingsDefault EDGE_STITCH_RIGHT = new FinishingsDefault(26);
-
+
/**
* Bind the document(s) with one or more staples (wire stitches) along
- * the bottom edge.
+ * the bottom edge.
*/
public static final FinishingsDefault EDGE_STITCH_BOTTOM = new FinishingsDefault(27);
-
+
/**
- * Bind the document(s) with two staples (wire stitches) along the
+ * Bind the document(s) with two staples (wire stitches) along the
* left edge assuming a portrait document.
*/
public static final FinishingsDefault STAPLE_DUAL_LEFT = new FinishingsDefault(28);
-
+
/**
- * Bind the document(s) with two staples (wire stitches) along the
+ * Bind the document(s) with two staples (wire stitches) along the
* top edge assuming a portrait document.
*/
public static final FinishingsDefault STAPLE_DUAL_TOP = new FinishingsDefault(29);
-
+
/**
- * Bind the document(s) with two staples (wire stitches) along the
+ * Bind the document(s) with two staples (wire stitches) along the
* right edge assuming a portrait document.
*/
public static final FinishingsDefault STAPLE_DUAL_RIGHT = new FinishingsDefault(30);
-
+
/**
- * Bind the document(s) with two staples (wire stitches) along the
+ * Bind the document(s) with two staples (wire stitches) along the
* bottom edge assuming a portrait document.
*/
public static final FinishingsDefault STAPLE_DUAL_BOTTOM = new FinishingsDefault(31);
- private static final String[] stringTable = { "none", "staple", null,
+ private static final String[] stringTable = { "none", "staple", null,
"cover", "bind", "saddle-stitch",
"edge-stitch", null, null, null,
null, null, null, null, null,
null, null, "staple-top-left",
- "staple-bottom-left",
- "staple-top-right",
+ "staple-bottom-left",
+ "staple-top-right",
"staple-bottom-right",
"edge-stitch-left",
"edge-stitch-top",
@@ -168,14 +168,14 @@ public final class FinishingsDefault extends EnumSyntax
"staple-dual-top",
"staple-dual-right",
"staple-dual-bottom" };
-
- private static final FinishingsDefault[] enumValueTable = { NONE, STAPLE, null,
- COVER, BIND,
+
+ private static final FinishingsDefault[] enumValueTable = { NONE, STAPLE, null,
+ COVER, BIND,
SADDLE_STITCH,
- EDGE_STITCH, null,
- null, null, null,
- null, null, null,
- null, null, null,
+ EDGE_STITCH, null,
+ null, null, null,
+ null, null, null,
+ null, null, null,
STAPLE_TOP_LEFT,
STAPLE_BOTTOM_LEFT,
STAPLE_TOP_RIGHT,
@@ -188,10 +188,10 @@ public final class FinishingsDefault extends EnumSyntax
STAPLE_DUAL_TOP,
STAPLE_DUAL_RIGHT,
STAPLE_DUAL_BOTTOM };
-
+
/**
* Constructs a <code>FinishingsDefault</code> object.
- *
+ *
* @param value the value
*/
protected FinishingsDefault(int value)
@@ -204,7 +204,7 @@ public final class FinishingsDefault extends EnumSyntax
*
* @return the class <code>FinishingsDefault</code> itself
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return FinishingsDefault.class;
}
@@ -218,7 +218,7 @@ public final class FinishingsDefault extends EnumSyntax
{
return "finishings-default";
}
-
+
/**
* Returns a table with the enumeration values represented as strings
* for this object.
@@ -249,14 +249,14 @@ public final class FinishingsDefault extends EnumSyntax
{
return 3;
}
-
+
/**
* Returns the equally enum of the standard attribute class
* of this DefaultValuesAttribute enum.
- *
+ *
* @return The enum of the standard attribute class.
*/
- public Attribute getAssociatedAttribute()
+ public Attribute getAssociatedAttribute()
{
return IppUtilities.getEnumAttribute("finishings", new Integer(getValue()));
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/JobHoldUntilDefault.java b/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/JobHoldUntilDefault.java
index a0baac7273a..7c29f231c4a 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/JobHoldUntilDefault.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/JobHoldUntilDefault.java
@@ -1,4 +1,4 @@
-/* JobHoldUntilDefault.java --
+/* JobHoldUntilDefault.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -50,57 +50,57 @@ import javax.print.attribute.standard.JobHoldUntil;
/**
* JobHoldUntilDefault attribute provides the default value
* for the attribute type job-hold-until.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
-public final class JobHoldUntilDefault extends TextSyntax
+public final class JobHoldUntilDefault extends TextSyntax
implements DefaultValueAttribute
{
-
- // a keyword/name based attribute in IPP
+
+ // a keyword/name based attribute in IPP
// can be extended by administrators
// standard values are predefined
-
+
/** Job should be printed immediately. */
- public static final JobHoldUntilDefault NO_HOLD =
+ public static final JobHoldUntilDefault NO_HOLD =
new JobHoldUntilDefault("no-hold", null);
-
+
/** Job should be hold indefinitely. */
- public static final JobHoldUntilDefault INDEFINITE =
+ public static final JobHoldUntilDefault INDEFINITE =
new JobHoldUntilDefault("indefinite", null);
-
+
/** Job should be processed during the day. */
- public static final JobHoldUntilDefault DAY_TIME =
+ public static final JobHoldUntilDefault DAY_TIME =
new JobHoldUntilDefault("day-time", null);
-
+
/** Job should be processed in the evening. */
- public static final JobHoldUntilDefault EVENING =
+ public static final JobHoldUntilDefault EVENING =
new JobHoldUntilDefault("evening", null);
-
+
/** Job should be processed during night. */
- public static final JobHoldUntilDefault NIGHT =
+ public static final JobHoldUntilDefault NIGHT =
new JobHoldUntilDefault("night", null);
-
+
/** Job should be processed during the weekend. */
- public static final JobHoldUntilDefault WEEKEND =
+ public static final JobHoldUntilDefault WEEKEND =
new JobHoldUntilDefault("weekend", null);
-
- /**
- * Job should be processed as second-shift
- * (after close of business).
+
+ /**
+ * Job should be processed as second-shift
+ * (after close of business).
*/
- public static final JobHoldUntilDefault SECOND_SHIFT =
+ public static final JobHoldUntilDefault SECOND_SHIFT =
new JobHoldUntilDefault("second-shift", null);
-
- /**
- * Job should be processed as third-shift
- * (after midnight).
+
+ /**
+ * Job should be processed as third-shift
+ * (after midnight).
*/
- public static final JobHoldUntilDefault THIRD_SHIFT =
- new JobHoldUntilDefault("third-shift", null);
+ public static final JobHoldUntilDefault THIRD_SHIFT =
+ new JobHoldUntilDefault("third-shift", null);
/**
- * Creates a <code>JobHoldUntilDefault</code> object with the
+ * Creates a <code>JobHoldUntilDefault</code> object with the
* given value and locale.
*
* @param value the value for this syntax
@@ -119,7 +119,7 @@ public final class JobHoldUntilDefault extends TextSyntax
*
* @return The class <code>JobHoldUntilDefault</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return JobHoldUntilDefault.class;
}
@@ -133,14 +133,14 @@ public final class JobHoldUntilDefault extends TextSyntax
{
return "job-hold-until-default";
}
-
+
/**
* Returns the equally enum of the standard attribute class
* of this DefaultValuesAttribute enum.
- *
+ *
* @return The enum of the standard attribute class.
*/
- public Attribute getAssociatedAttribute()
+ public Attribute getAssociatedAttribute()
{
// FIXME Same Mapping problem as in IppPrintService
return new JobHoldUntil(new Date());
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/JobPriorityDefault.java b/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/JobPriorityDefault.java
index de6ad5a8af2..9430250ae79 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/JobPriorityDefault.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/JobPriorityDefault.java
@@ -1,4 +1,4 @@
-/* JobPriorityDefault.java --
+/* JobPriorityDefault.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -47,13 +47,13 @@ import javax.print.attribute.standard.JobPriority;
/**
* JobPriorityDefault attribute provides the default value of
* the printer object for the job-priority attribute.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
public final class JobPriorityDefault extends IntegerSyntax
implements DefaultValueAttribute
{
-
+
/**
* Creates a <code>JobPriorityDefault</code> object.
*
@@ -74,7 +74,7 @@ public final class JobPriorityDefault extends IntegerSyntax
*
* @param obj the object to test
*
- * @return <code>true</code> if both objects are equal,
+ * @return <code>true</code> if both objects are equal,
* <code>false</code> otherwise.
*/
public boolean equals(Object obj)
@@ -90,7 +90,7 @@ public final class JobPriorityDefault extends IntegerSyntax
*
* @return The class <code>JobPriorityDefault</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return JobPriorityDefault.class;
}
@@ -104,14 +104,14 @@ public final class JobPriorityDefault extends IntegerSyntax
{
return "job-priority-default";
}
-
+
/**
* Returns the equally enum of the standard attribute class
* of this DefaultValuesAttribute enum.
- *
+ *
* @return The enum of the standard attribute class.
*/
- public Attribute getAssociatedAttribute()
+ public Attribute getAssociatedAttribute()
{
return new JobPriority(getValue());
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/JobSheetsDefault.java b/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/JobSheetsDefault.java
index 8f92891238b..6bf027edadd 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/JobSheetsDefault.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/JobSheetsDefault.java
@@ -1,4 +1,4 @@
-/* JobSheetsDefault.java --
+/* JobSheetsDefault.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -49,26 +49,26 @@ import javax.print.attribute.standard.JobSheets;
/**
* JobSheetsDefault attribute provides the default value of
* the printer object for the job-sheets attribute.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
-public final class JobSheetsDefault extends TextSyntax
+public final class JobSheetsDefault extends TextSyntax
implements DefaultValueAttribute
{
- //a keyword/name based attribute in IPP
+ //a keyword/name based attribute in IPP
// can be extended by administrators
// standard values are predefined
-
+
/** No job sheet is the default */
- public static final JobSheetsDefault NONE =
+ public static final JobSheetsDefault NONE =
new JobSheetsDefault("none", Locale.getDefault());
-
+
/** A job sheet is the default */
- public static final JobSheetsDefault STANDARD =
+ public static final JobSheetsDefault STANDARD =
new JobSheetsDefault("standard", Locale.getDefault());
-
+
/**
- * Creates a <code>JobSheetsDefault</code> object with the
+ * Creates a <code>JobSheetsDefault</code> object with the
* given value and locale.
*
* @param value the value for this syntax
@@ -81,13 +81,13 @@ public final class JobSheetsDefault extends TextSyntax
{
super(value, locale);
}
-
+
/**
* Returns category of this class.
*
* @return The class <code>JobSheetsDefault</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return JobSheetsDefault.class;
}
@@ -101,21 +101,21 @@ public final class JobSheetsDefault extends TextSyntax
{
return "job-sheets-default";
}
-
+
/**
* Returns the equally enum of the standard attribute class
* of this DefaultValuesAttribute enum.
* <p>May return null if no value exists in JPS API.</p>
- *
+ *
* @return The enum of the standard attribute class.
*/
- public Attribute getAssociatedAttribute()
+ public Attribute getAssociatedAttribute()
{
if (this.equals(JobSheetsDefault.NONE))
return JobSheets.NONE;
if (this.equals(JobSheetsDefault.STANDARD))
return JobSheets.STANDARD;
-
+
return null;
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/MediaDefault.java b/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/MediaDefault.java
index b4e626da6b0..5945d0b9b1f 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/MediaDefault.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/MediaDefault.java
@@ -1,4 +1,4 @@
-/* MediaDefault.java --
+/* MediaDefault.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -49,15 +49,15 @@ import javax.print.attribute.TextSyntax;
/**
* MediaDefault attribute provides the default value of
* the printer object for the media attribute.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
-public final class MediaDefault extends TextSyntax
+public final class MediaDefault extends TextSyntax
implements DefaultValueAttribute
{
-
+
/**
- * Creates a <code>MediaDefault</code> object with the
+ * Creates a <code>MediaDefault</code> object with the
* given value and locale.
*
* @param value the value for this syntax
@@ -70,13 +70,13 @@ public final class MediaDefault extends TextSyntax
{
super(value, locale);
}
-
+
/**
* Returns category of this class.
*
* @return The class <code>MediaDefault</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return MediaDefault.class;
}
@@ -90,14 +90,14 @@ public final class MediaDefault extends TextSyntax
{
return "media-default";
}
-
+
/**
* Returns the equally enum of the standard attribute class
* of this DefaultValuesAttribute enum.
- *
+ *
* @return The enum of the standard attribute class.
*/
- public Attribute getAssociatedAttribute()
+ public Attribute getAssociatedAttribute()
{
return IppUtilities.getEnumAttribute("media" , getValue());
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/MultipleDocumentHandlingDefault.java b/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/MultipleDocumentHandlingDefault.java
index 0cc324352d8..1563db82c21 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/MultipleDocumentHandlingDefault.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/MultipleDocumentHandlingDefault.java
@@ -47,49 +47,49 @@ import javax.print.attribute.EnumSyntax;
/**
* <code>MultipleDocumentHandlingDefault</code> provides the
* default value for the MultipleDocumentHandling attribute.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
public final class MultipleDocumentHandlingDefault extends EnumSyntax
implements DefaultValueAttribute
{
-
+
//a keyword based attribute in IPP - int values just starting at 0
-
- /**
- * Supports only multiple documents treated as a single document. This
+
+ /**
+ * Supports only multiple documents treated as a single document. This
* applies to attributes which specify treatment of multiple document jobs.
*/
public static final MultipleDocumentHandlingDefault SINGLE_DOCUMENT =
new MultipleDocumentHandlingDefault(0);
-
+
/** Supports multiple documents as uncollated copies */
public static final MultipleDocumentHandlingDefault SEPARATE_DOCUMENTS_UNCOLLATED_COPIES =
new MultipleDocumentHandlingDefault(1);
-
+
/** Supports multiple documents as collated copies */
public static final MultipleDocumentHandlingDefault SEPARATE_DOCUMENTS_COLLATED_COPIES =
new MultipleDocumentHandlingDefault(2);
-
- /**
+
+ /**
* Supports multiple documents where every single document starts
- * with a new sheet.
+ * with a new sheet.
*/
public static final MultipleDocumentHandlingDefault SINGLE_DOCUMENT_NEW_SHEET =
new MultipleDocumentHandlingDefault(3);
- private static final String[] stringTable = { "single-document",
+ private static final String[] stringTable = { "single-document",
"separate-documents-uncollated-copies",
"separate-documents-collated-copies",
"single-document-new-sheet" };
-
- private static final MultipleDocumentHandlingDefault[] enumValueTable =
+
+ private static final MultipleDocumentHandlingDefault[] enumValueTable =
{ SINGLE_DOCUMENT, SEPARATE_DOCUMENTS_UNCOLLATED_COPIES,
SEPARATE_DOCUMENTS_COLLATED_COPIES, SINGLE_DOCUMENT_NEW_SHEET};
-
+
/**
* Constructs a <code>MultipleDocumentHandlingDefault</code> object.
- *
+ *
* @param value the enum value
*/
protected MultipleDocumentHandlingDefault(int value)
@@ -102,7 +102,7 @@ public final class MultipleDocumentHandlingDefault extends EnumSyntax
*
* @return The class <code>MultipleDocumentHandlingDefault</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return MultipleDocumentHandlingDefault.class;
}
@@ -116,7 +116,7 @@ public final class MultipleDocumentHandlingDefault extends EnumSyntax
{
return "multiple-document-handling-default";
}
-
+
/**
* Returns a table with the enumeration values represented as strings
* for this object.
@@ -137,16 +137,16 @@ public final class MultipleDocumentHandlingDefault extends EnumSyntax
{
return enumValueTable;
}
-
+
/**
* Returns the equally enum of the standard attribute class
* of this DefaultValuesAttribute enum.
- *
+ *
* @return The enum of the standard attribute class.
*/
- public Attribute getAssociatedAttribute()
+ public Attribute getAssociatedAttribute()
{
- return IppUtilities.getEnumAttribute("multiple-document-handling",
+ return IppUtilities.getEnumAttribute("multiple-document-handling",
new Integer(getValue()));
}
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/NumberUpDefault.java b/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/NumberUpDefault.java
index 6689f2d1c98..8e2d076d5fb 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/NumberUpDefault.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/NumberUpDefault.java
@@ -1,4 +1,4 @@
-/* NumberUpDefault.java --
+/* NumberUpDefault.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -46,13 +46,13 @@ import javax.print.attribute.standard.NumberUp;
/**
* NumberUpDefault attribute provides the default value of
* the numper up attribute.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
public final class NumberUpDefault extends IntegerSyntax
implements DefaultValueAttribute
{
-
+
/**
* Creates a <code>NumberUpDefault</code> object.
*
@@ -63,13 +63,13 @@ public final class NumberUpDefault extends IntegerSyntax
{
super(value);
}
-
+
/**
* Tests if the given object is equal to this object.
*
* @param obj the object to test
*
- * @return <code>true</code> if both objects are equal,
+ * @return <code>true</code> if both objects are equal,
* <code>false</code> otherwise.
*/
public boolean equals(Object obj)
@@ -85,7 +85,7 @@ public final class NumberUpDefault extends IntegerSyntax
*
* @return The class <code>NumberUpDefault</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return NumberUpDefault.class;
}
@@ -99,15 +99,15 @@ public final class NumberUpDefault extends IntegerSyntax
{
return "number-up-default";
}
-
+
/**
* Returns the equally enum of the standard attribute class
* of this DefaultValuesAttribute enum.
* <p>May return null if no value exists in JPS API.</p>
- *
+ *
* @return The enum of the standard attribute class.
*/
- public Attribute getAssociatedAttribute()
+ public Attribute getAssociatedAttribute()
{
return new NumberUp(getValue());
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/OrientationRequestedDefault.java b/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/OrientationRequestedDefault.java
index 14d26555984..4563ec525c6 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/OrientationRequestedDefault.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/OrientationRequestedDefault.java
@@ -45,27 +45,27 @@ import javax.print.attribute.EnumSyntax;
/**
- * The <code>OrientationRequestedDefault</code> attribute provides
+ * The <code>OrientationRequestedDefault</code> attribute provides
* the default value for the job attribute orientation-requested.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
public final class OrientationRequestedDefault extends EnumSyntax
implements DefaultValueAttribute
{
-
+
/** Orientation as portrait. */
public static final OrientationRequestedDefault PORTRAIT =
new OrientationRequestedDefault(3);
-
+
/** Orientation as landscape. */
public static final OrientationRequestedDefault LANDSCAPE =
new OrientationRequestedDefault(4);
-
+
/** Orientation as reversed landscape. */
public static final OrientationRequestedDefault REVERSE_LANDSCAPE =
new OrientationRequestedDefault(5);
-
+
/** Orientation as reversed portrait. */
public static final OrientationRequestedDefault REVERSE_PORTRAIT =
new OrientationRequestedDefault(6);
@@ -74,14 +74,14 @@ public final class OrientationRequestedDefault extends EnumSyntax
private static final String[] stringTable = { "portrait", "landscape",
"reverse-landscape",
"reverse-portrait" };
-
- private static final OrientationRequestedDefault[]
- enumValueTable = { PORTRAIT, LANDSCAPE,
+
+ private static final OrientationRequestedDefault[]
+ enumValueTable = { PORTRAIT, LANDSCAPE,
REVERSE_LANDSCAPE, REVERSE_PORTRAIT };
-
+
/**
* Constructs a <code>OrientationRequestedDefault</code> object.
- *
+ *
* @param value the value
*/
protected OrientationRequestedDefault(int value)
@@ -94,7 +94,7 @@ public final class OrientationRequestedDefault extends EnumSyntax
*
* @return The class <code>OrientationRequestedDefault</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return OrientationRequestedDefault.class;
}
@@ -108,7 +108,7 @@ public final class OrientationRequestedDefault extends EnumSyntax
{
return "orientation-requested-default";
}
-
+
/**
* Returns a table with the enumeration values represented as strings
* for this object.
@@ -129,7 +129,7 @@ public final class OrientationRequestedDefault extends EnumSyntax
{
return enumValueTable;
}
-
+
/**
* Returns the lowest used value by the enumerations of this class.
* .
@@ -139,16 +139,16 @@ public final class OrientationRequestedDefault extends EnumSyntax
{
return 3;
}
-
+
/**
* Returns the equally enum of the standard attribute class
* of this DefaultValuesAttribute enum.
- *
+ *
* @return The enum of the standard attribute class.
*/
- public Attribute getAssociatedAttribute()
+ public Attribute getAssociatedAttribute()
{
- return IppUtilities.getEnumAttribute("orientation-requested",
+ return IppUtilities.getEnumAttribute("orientation-requested",
new Integer(getValue()));
}
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/PrintQualityDefault.java b/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/PrintQualityDefault.java
index 707d11de0cd..7b123eeb431 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/PrintQualityDefault.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/PrintQualityDefault.java
@@ -47,7 +47,7 @@ import javax.print.attribute.EnumSyntax;
/**
* <code>PrintQualityDefault</code> provides the
* default value for the print-quality attribute.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
public final class PrintQualityDefault extends EnumSyntax
@@ -55,20 +55,20 @@ public final class PrintQualityDefault extends EnumSyntax
{
/** Draft quality of the printer. */
public static final PrintQualityDefault DRAFT = new PrintQualityDefault(3);
-
+
/** Normal quality of the printer. */
public static final PrintQualityDefault NORMAL = new PrintQualityDefault(4);
-
+
/** High quality of the printer. */
public static final PrintQualityDefault HIGH = new PrintQualityDefault(5);
private static final String[] stringTable = { "draft", "normal", "high" };
-
+
private static final PrintQualityDefault[] enumValueTable = { DRAFT, NORMAL, HIGH };
-
+
/**
* Constructs a <code>PrintQualityDefault</code> object.
- *
+ *
* @param value the value of the enum
*/
protected PrintQualityDefault(int value)
@@ -81,7 +81,7 @@ public final class PrintQualityDefault extends EnumSyntax
*
* @return The class <code>PrintQualityDefault</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return PrintQualityDefault.class;
}
@@ -95,7 +95,7 @@ public final class PrintQualityDefault extends EnumSyntax
{
return "print-quality-default";
}
-
+
/**
* Returns a table with the enumeration values represented as strings
* for this object.
@@ -116,7 +116,7 @@ public final class PrintQualityDefault extends EnumSyntax
{
return enumValueTable;
}
-
+
/**
* Returns the lowest used value by the enumerations of this class.
* .
@@ -126,14 +126,14 @@ public final class PrintQualityDefault extends EnumSyntax
{
return 3;
}
-
+
/**
* Returns the equally enum of the standard attribute class
* of this DefaultValuesAttribute enum.
- *
+ *
* @return The enum of the standard attribute class.
*/
- public Attribute getAssociatedAttribute()
+ public Attribute getAssociatedAttribute()
{
return IppUtilities.getEnumAttribute(
"print-quality", new Integer(getValue()));
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/PrinterResolutionDefault.java b/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/PrinterResolutionDefault.java
index baa00c6e9c7..2c84b99bae6 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/PrinterResolutionDefault.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/PrinterResolutionDefault.java
@@ -45,15 +45,15 @@ import javax.print.attribute.standard.PrinterResolution;
/**
- * The <code>PrinterResolutionDefault</code> attribute provides
+ * The <code>PrinterResolutionDefault</code> attribute provides
* the default value for the job attribute printer-resolution.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
public final class PrinterResolutionDefault extends ResolutionSyntax
implements DefaultValueAttribute
{
-
+
/**
* Creates a <code>ResolutionSyntax</code> object with the given arguments.
*
@@ -68,20 +68,20 @@ public final class PrinterResolutionDefault extends ResolutionSyntax
{
super(crossFeedResolution, feedResolution, units);
}
-
+
/**
* Tests if the given object is equal to this object.
*
* @param obj the object to test
*
- * @return <code>true</code> if both objects are equal,
+ * @return <code>true</code> if both objects are equal,
* <code>false</code> otherwise.
*/
public boolean equals(Object obj)
{
if(! (obj instanceof PrinterResolutionDefault))
return false;
-
+
return super.equals(obj);
}
@@ -90,7 +90,7 @@ public final class PrinterResolutionDefault extends ResolutionSyntax
*
* @return The class <code>PrinterResolutionDefault</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return PrinterResolutionDefault.class;
}
@@ -104,16 +104,16 @@ public final class PrinterResolutionDefault extends ResolutionSyntax
{
return "printer-resolution-default";
}
-
+
/**
* Returns the equally enum of the standard attribute class
* of this DefaultValuesAttribute enum.
- *
+ *
* @return The enum of the standard attribute class.
*/
- public Attribute getAssociatedAttribute()
+ public Attribute getAssociatedAttribute()
{
- return new PrinterResolution(getCrossFeedResolutionDphi(),
+ return new PrinterResolution(getCrossFeedResolutionDphi(),
getFeedResolutionDphi(), 1);
}
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/SidesDefault.java b/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/SidesDefault.java
index 3c5b0cb864c..a50560ae974 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/SidesDefault.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/defaults/SidesDefault.java
@@ -47,45 +47,45 @@ import javax.print.attribute.EnumSyntax;
/**
* <code>SidesDefault</code> provides the
* default for the sides attribute.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
public final class SidesDefault extends EnumSyntax
implements DefaultValueAttribute
{
-
+
/** Specifies that each page should be printed on one sheet. */
public static final SidesDefault ONE_SIDED = new SidesDefault(0);
-
- /**
- * Specifies that two following pages should be printed on the
+
+ /**
+ * Specifies that two following pages should be printed on the
* front and back of one sheet for binding on the long edge.
*/
- public static final SidesDefault TWO_SIDED_LONG_EDGE =
+ public static final SidesDefault TWO_SIDED_LONG_EDGE =
new SidesDefault(1);
-
- /**
- * Specifies that two following pages should be printed on the
+
+ /**
+ * Specifies that two following pages should be printed on the
* front and back of one sheet for binding on the short edge.
*/
- public static final SidesDefault TWO_SIDED_SHORT_EDGE =
+ public static final SidesDefault TWO_SIDED_SHORT_EDGE =
new SidesDefault(2);
-
+
/** An alias constant for "two sided long edge". */
public static final SidesDefault DUPLEX = new SidesDefault(1);
-
+
/** An alias constant for "two sided short edge". */
public static final SidesDefault TUMBLE = new SidesDefault(2);
- private static final String[] stringTable = { "one-sided",
+ private static final String[] stringTable = { "one-sided",
"two-sided-long-edge",
"two-sided-short-edge" };
-
- private static final SidesDefault[] enumValueTable = { ONE_SIDED,
- TWO_SIDED_LONG_EDGE,
+
+ private static final SidesDefault[] enumValueTable = { ONE_SIDED,
+ TWO_SIDED_LONG_EDGE,
TWO_SIDED_SHORT_EDGE };
-
-
+
+
/**
* Creates a <code>SidesDefault</code> object.
*
@@ -101,7 +101,7 @@ public final class SidesDefault extends EnumSyntax
*
* @return The class <code>SidesDefault</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return SidesDefault.class;
}
@@ -115,7 +115,7 @@ public final class SidesDefault extends EnumSyntax
{
return "sides-default";
}
-
+
/**
* Returns a table with the enumeration values represented as strings
* for this object.
@@ -136,14 +136,14 @@ public final class SidesDefault extends EnumSyntax
{
return enumValueTable;
}
-
+
/**
* Returns the equally enum of the standard attribute class
* of this DefaultValuesAttribute enum.
- *
+ *
* @return The enum of the standard attribute class.
*/
- public Attribute getAssociatedAttribute()
+ public Attribute getAssociatedAttribute()
{
return IppUtilities.getEnumAttribute("sides", new Integer(getValue()));
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/job/AttributesCharset.java b/libjava/classpath/gnu/javax/print/ipp/attribute/job/AttributesCharset.java
index 057db9bf6a9..4fe2ce0d556 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/job/AttributesCharset.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/job/AttributesCharset.java
@@ -46,24 +46,24 @@ import javax.print.attribute.Attribute;
* AttributesCharset attribute as described in RFC 2911 chapter
* 3.1.4 Character Set and Natural Language Operation Attributes.
* <p>
- * This operation attribute identifies the charset used by any text
+ * This operation attribute identifies the charset used by any text
* and name attribute supplied by the client in the request. This
* charset must be used by the printer object in the response.<br>
* All clients and IPP objects must support the 'utf-8' charset.
* </p>
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
-public final class AttributesCharset extends CharsetSyntax
+public final class AttributesCharset extends CharsetSyntax
implements Attribute
{
-
+
/** Defines a default UTF-8 charset instance */
public static final AttributesCharset UTF8 = new AttributesCharset("utf-8");
/**
* Creates a <code>AttributesCharset</code> object.
- *
+ *
* @param value the charset string value.
*/
public AttributesCharset(String value)
@@ -76,7 +76,7 @@ public final class AttributesCharset extends CharsetSyntax
*
* @return The class <code>AttributesCharset</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return AttributesCharset.class;
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/job/AttributesNaturalLanguage.java b/libjava/classpath/gnu/javax/print/ipp/attribute/job/AttributesNaturalLanguage.java
index 8a41711ac8b..151cec43922 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/job/AttributesNaturalLanguage.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/job/AttributesNaturalLanguage.java
@@ -1,4 +1,4 @@
-/* AttributesNaturalLanguage.java --
+/* AttributesNaturalLanguage.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -49,23 +49,23 @@ import javax.print.attribute.Attribute;
* <p>
* This operation attribute identifies the natural language used
* by any text and name attribute supplied by the client in the request.
- * The printer object should use this natural language for the response
+ * The printer object should use this natural language for the response
* to this request.
* </p>
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
-public final class AttributesNaturalLanguage extends NaturalLanguageSyntax
+public final class AttributesNaturalLanguage extends NaturalLanguageSyntax
implements Attribute
{
-
+
/** Defines the default language EN */
- public static final AttributesNaturalLanguage EN =
+ public static final AttributesNaturalLanguage EN =
new AttributesNaturalLanguage("en");
/**
* Creates a <code>AttributesNaturalLanguage</code> object.
- *
+ *
* @param value the language string value.
*/
public AttributesNaturalLanguage(String value)
@@ -78,7 +78,7 @@ public final class AttributesNaturalLanguage extends NaturalLanguageSyntax
*
* @return The class <code>AttributesNaturalLanguage</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return AttributesNaturalLanguage.class;
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/job/JobDetailedStatusMessages.java b/libjava/classpath/gnu/javax/print/ipp/attribute/job/JobDetailedStatusMessages.java
index 29f47b7fa95..5b83344a922 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/job/JobDetailedStatusMessages.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/job/JobDetailedStatusMessages.java
@@ -1,4 +1,4 @@
-/* JobDetailedStatusMessages.java --
+/* JobDetailedStatusMessages.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -46,10 +46,10 @@ import javax.print.attribute.TextSyntax;
/**
* JobDetailedStatusMessages provides additional detailed and
* technical job informations.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
-public final class JobDetailedStatusMessages
+public final class JobDetailedStatusMessages
extends TextSyntax implements Attribute
{
@@ -73,7 +73,7 @@ public final class JobDetailedStatusMessages
*
* @return The class <code>JobDetailedStatusMessages</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return JobDetailedStatusMessages.class;
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/job/JobDocumentAccessErrors.java b/libjava/classpath/gnu/javax/print/ipp/attribute/job/JobDocumentAccessErrors.java
index 46083bed7dc..c3fff057c6f 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/job/JobDocumentAccessErrors.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/job/JobDocumentAccessErrors.java
@@ -1,4 +1,4 @@
-/* JobDocumentAccessErrors.java --
+/* JobDocumentAccessErrors.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -47,10 +47,10 @@ import javax.print.attribute.TextSyntax;
* JobDocumentAccessErrors provides additional information
* for each access error for print-uri or document-uri jobs.
* technical job informations.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
-public final class JobDocumentAccessErrors
+public final class JobDocumentAccessErrors
extends TextSyntax implements Attribute
{
@@ -74,7 +74,7 @@ public final class JobDocumentAccessErrors
*
* @return The class <code>JobDocumentAccessErrors</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return JobDocumentAccessErrors.class;
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/job/JobId.java b/libjava/classpath/gnu/javax/print/ipp/attribute/job/JobId.java
index f1d85fa50ba..78c866723e5 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/job/JobId.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/job/JobId.java
@@ -1,4 +1,4 @@
-/* JobId.java --
+/* JobId.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -44,7 +44,7 @@ import javax.print.attribute.IntegerSyntax;
/**
* The <code>JobId</code> attribute contains the ID of a
* print job created or currently being processed.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
public final class JobId extends IntegerSyntax implements Attribute
@@ -59,7 +59,7 @@ public final class JobId extends IntegerSyntax implements Attribute
public JobId(int value)
{
super(value);
-
+
if (value < 1)
throw new IllegalArgumentException("job-id may not be less than 1");
}
@@ -69,7 +69,7 @@ public final class JobId extends IntegerSyntax implements Attribute
*
* @return The class <code>JobId</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return JobId.class;
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/job/JobMoreInfo.java b/libjava/classpath/gnu/javax/print/ipp/attribute/job/JobMoreInfo.java
index a2fe322a887..569400f403a 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/job/JobMoreInfo.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/job/JobMoreInfo.java
@@ -1,4 +1,4 @@
-/* JobMoreInfo.java --
+/* JobMoreInfo.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -47,7 +47,7 @@ import javax.print.attribute.URISyntax;
* JobMoreInfo attribute as described in RFC 2911 section
* 4.3.4 contains the URI where more information about a job
* (e.g. through a HTML page) can be found.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
public final class JobMoreInfo extends URISyntax implements Attribute
@@ -69,7 +69,7 @@ public final class JobMoreInfo extends URISyntax implements Attribute
*
* @return The class <code>JobMoreInfo</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return JobMoreInfo.class;
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/job/JobPrinterUri.java b/libjava/classpath/gnu/javax/print/ipp/attribute/job/JobPrinterUri.java
index dce552020f2..1375a241985 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/job/JobPrinterUri.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/job/JobPrinterUri.java
@@ -1,4 +1,4 @@
-/* JobPrinterUri.java --
+/* JobPrinterUri.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -47,7 +47,7 @@ import javax.print.attribute.URISyntax;
* JobPrinterUri attribute as described in RFC 2911 section
* 4.3.3 contains the URI of the printer which created and
* processes a job.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
public final class JobPrinterUri extends URISyntax implements Attribute
@@ -69,7 +69,7 @@ public final class JobPrinterUri extends URISyntax implements Attribute
*
* @return The class <code>JobPrinterUri</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return JobPrinterUri.class;
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/job/JobStateMessage.java b/libjava/classpath/gnu/javax/print/ipp/attribute/job/JobStateMessage.java
index 0cf652307b6..d65126621a3 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/job/JobStateMessage.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/job/JobStateMessage.java
@@ -1,4 +1,4 @@
-/* JobStateMessage.java --
+/* JobStateMessage.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -46,10 +46,10 @@ import javax.print.attribute.TextSyntax;
/**
* JobStateMessage attribute describes information about the
* job-state and job-state-reasons in human readable form.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
-public final class JobStateMessage
+public final class JobStateMessage
extends TextSyntax implements Attribute
{
@@ -73,7 +73,7 @@ public final class JobStateMessage
*
* @return The class <code>JobStateMessage</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return JobStateMessage.class;
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/job/JobUri.java b/libjava/classpath/gnu/javax/print/ipp/attribute/job/JobUri.java
index fa7e3f7b5a5..4b545b956b1 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/job/JobUri.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/job/JobUri.java
@@ -1,4 +1,4 @@
-/* JobUri.java --
+/* JobUri.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -47,7 +47,7 @@ import javax.print.attribute.URISyntax;
* JobUri attribute as described in RFC 2911 section
* 4.3.1 contains the URI for a job generated by the printer
* after a create request.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
public final class JobUri extends URISyntax implements Attribute
@@ -69,7 +69,7 @@ public final class JobUri extends URISyntax implements Attribute
*
* @return The class <code>JobUri</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return JobUri.class;
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/printer/CharsetConfigured.java b/libjava/classpath/gnu/javax/print/ipp/attribute/printer/CharsetConfigured.java
index 7c87545880c..42430377c35 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/printer/CharsetConfigured.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/printer/CharsetConfigured.java
@@ -1,4 +1,4 @@
-/* CharsetConfigured.java --
+/* CharsetConfigured.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -46,16 +46,16 @@ import javax.print.attribute.Attribute;
* CharsetConfigured attribute as described in RFC 2911 section
* 4.4.17 provides the charset which is configured by the
* server to be used in the name and text syntax attribute types.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
-public final class CharsetConfigured extends CharsetSyntax
+public final class CharsetConfigured extends CharsetSyntax
implements Attribute
{
/**
* Creates a <code>CharsetConfigured</code> object.
- *
+ *
* @param value the charset string value.
*/
public CharsetConfigured(String value)
@@ -68,7 +68,7 @@ public final class CharsetConfigured extends CharsetSyntax
*
* @return The class <code>CharsetConfigured</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return CharsetConfigured.class;
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/printer/DocumentFormat.java b/libjava/classpath/gnu/javax/print/ipp/attribute/printer/DocumentFormat.java
index e9abab464f1..9a5e01e1d96 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/printer/DocumentFormat.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/printer/DocumentFormat.java
@@ -1,4 +1,4 @@
-/* DocumentFormat.java --
+/* DocumentFormat.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -41,21 +41,22 @@ package gnu.javax.print.ipp.attribute.printer;
import java.util.Locale;
import javax.print.DocFlavor;
+import javax.print.attribute.Attribute;
import javax.print.attribute.SupportedValuesAttribute;
import javax.print.attribute.TextSyntax;
/**
* <code>DocumentFormatSupported</code> specifies the supported document
* formats of a printer. Printer are supplying a set of this attribute.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
-public final class DocumentFormat extends TextSyntax
+public final class DocumentFormat extends TextSyntax
implements SupportedValuesAttribute
{
/**
- * Creates a <code>DocumentFormat</code> object with the
+ * Creates a <code>DocumentFormat</code> object with the
* given value and locale.
*
* @param value the value for this syntax
@@ -68,12 +69,12 @@ public final class DocumentFormat extends TextSyntax
{
super(value, locale);
}
-
+
/**
* Constructs a document format object for the given flavor.
* The constructor reworkes the mimetype of the given flavor
* to remove the quoted charset parameter if present.
- *
+ *
* @param flavor the flavor with the mimetype
* @return The created document format.
*/
@@ -83,7 +84,7 @@ public final class DocumentFormat extends TextSyntax
String mimetype = flavor.getMediaType() + "/" + flavor.getMediaSubtype();
if (charset != null)
mimetype += "; charset=" + charset;
-
+
return new DocumentFormat(mimetype, null);
}
@@ -92,7 +93,7 @@ public final class DocumentFormat extends TextSyntax
*
* @return The class <code>DocumentFormat</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return DocumentFormat.class;
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/printer/MultipleOperationTimeOut.java b/libjava/classpath/gnu/javax/print/ipp/attribute/printer/MultipleOperationTimeOut.java
index 8e54e05658a..bb00b8891f7 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/printer/MultipleOperationTimeOut.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/printer/MultipleOperationTimeOut.java
@@ -1,4 +1,4 @@
-/* MultipleOperationTimeOut.java --
+/* MultipleOperationTimeOut.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -46,10 +46,10 @@ import javax.print.attribute.IntegerSyntax;
* 4.4.31 provides the minimum time ins second a printer object waits
* before time out and recovery. The printer object waits e.g. for
* additional SendDocument or SendUri operations.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
-public final class MultipleOperationTimeOut extends IntegerSyntax
+public final class MultipleOperationTimeOut extends IntegerSyntax
implements Attribute
{
@@ -68,7 +68,7 @@ public final class MultipleOperationTimeOut extends IntegerSyntax
*
* @return The class <code>MultipleOperationTimeOut</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return MultipleOperationTimeOut.class;
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/printer/NaturalLanguageConfigured.java b/libjava/classpath/gnu/javax/print/ipp/attribute/printer/NaturalLanguageConfigured.java
index 8032c3aa7f3..8dc05fe58d3 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/printer/NaturalLanguageConfigured.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/printer/NaturalLanguageConfigured.java
@@ -1,4 +1,4 @@
-/* NaturalLanguageConfigured.java --
+/* NaturalLanguageConfigured.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -43,19 +43,19 @@ import gnu.javax.print.ipp.attribute.NaturalLanguageSyntax;
import javax.print.attribute.Attribute;
/**
- * NaturalLanguageConfigured attribute as described in RFC 2911
+ * NaturalLanguageConfigured attribute as described in RFC 2911
* section 4.4.19 provides the natural language which is configured
* by the server to be used in the name and text syntax attribute types.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
-public final class NaturalLanguageConfigured extends NaturalLanguageSyntax
+public final class NaturalLanguageConfigured extends NaturalLanguageSyntax
implements Attribute
{
/**
* Creates a <code>NaturalLanguageConfigured</code> object.
- *
+ *
* @param value the charset string value.
*/
public NaturalLanguageConfigured(String value)
@@ -68,7 +68,7 @@ public final class NaturalLanguageConfigured extends NaturalLanguageSyntax
*
* @return The class <code>NaturalLanguageConfigured</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return NaturalLanguageConfigured.class;
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/printer/PrinterCurrentTime.java b/libjava/classpath/gnu/javax/print/ipp/attribute/printer/PrinterCurrentTime.java
index fe64ab0f778..361916773a4 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/printer/PrinterCurrentTime.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/printer/PrinterCurrentTime.java
@@ -1,4 +1,4 @@
-/* PrinterCurrentTime.java --
+/* PrinterCurrentTime.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -40,6 +40,7 @@ package gnu.javax.print.ipp.attribute.printer;
import java.util.Date;
+import javax.print.attribute.Attribute;
import javax.print.attribute.DateTimeSyntax;
import javax.print.attribute.PrintServiceAttribute;
@@ -48,10 +49,10 @@ import javax.print.attribute.PrintServiceAttribute;
* 4.4.30 provides the current time of the print service.
* Its to be used by other attributes like the date-time-at-xxx
* attributes in the creation process.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
-public final class PrinterCurrentTime extends DateTimeSyntax
+public final class PrinterCurrentTime extends DateTimeSyntax
implements PrintServiceAttribute
{
@@ -72,7 +73,7 @@ public final class PrinterCurrentTime extends DateTimeSyntax
*
* @param obj the object to test
*
- * @return <code>true</code> if both objects are equal,
+ * @return <code>true</code> if both objects are equal,
* <code>false</code> otherwise.
*/
public boolean equals(Object obj)
@@ -82,13 +83,13 @@ public final class PrinterCurrentTime extends DateTimeSyntax
return super.equals(obj);
}
-
+
/**
* Returns category of this class.
*
* @return The class <code>PrinterCurrentTime</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return PrinterCurrentTime.class;
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/printer/PrinterDriverInstaller.java b/libjava/classpath/gnu/javax/print/ipp/attribute/printer/PrinterDriverInstaller.java
index 8a70edf349c..28a2f448570 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/printer/PrinterDriverInstaller.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/printer/PrinterDriverInstaller.java
@@ -1,4 +1,4 @@
-/* PrinterDriverInstaller.java --
+/* PrinterDriverInstaller.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -47,10 +47,10 @@ import javax.print.attribute.URISyntax;
* PrinterDriverInstaller attribute as described in RFC 2911 section
* 4.4.81 provides the URI where a printer driver installer
* can be found.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
-public final class PrinterDriverInstaller extends URISyntax
+public final class PrinterDriverInstaller extends URISyntax
implements Attribute
{
@@ -70,7 +70,7 @@ public final class PrinterDriverInstaller extends URISyntax
*
* @return The class <code>PrinterDriverInstaller</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return PrinterDriverInstaller.class;
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/printer/PrinterStateMessage.java b/libjava/classpath/gnu/javax/print/ipp/attribute/printer/PrinterStateMessage.java
index da463c4c9fb..07c458889ff 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/printer/PrinterStateMessage.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/printer/PrinterStateMessage.java
@@ -1,4 +1,4 @@
-/* PrinterStateMessage.java --
+/* PrinterStateMessage.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -40,6 +40,7 @@ package gnu.javax.print.ipp.attribute.printer;
import java.util.Locale;
+import javax.print.attribute.Attribute;
import javax.print.attribute.PrintServiceAttribute;
import javax.print.attribute.TextSyntax;
@@ -48,15 +49,15 @@ import javax.print.attribute.TextSyntax;
* 4.4.13 provides a textual representation of the attributes
* printer-state and printer-state-reasons for consumption by
* humans.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
-public final class PrinterStateMessage extends TextSyntax
+public final class PrinterStateMessage extends TextSyntax
implements PrintServiceAttribute
{
/**
- * Creates a <code>PrinterStateMessage</code> object with the
+ * Creates a <code>PrinterStateMessage</code> object with the
* given value and locale.
*
* @param value the value for this syntax
@@ -75,7 +76,7 @@ public final class PrinterStateMessage extends TextSyntax
*
* @return The class <code>PrinterStateMessage</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return PrinterStateMessage.class;
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/printer/PrinterUpTime.java b/libjava/classpath/gnu/javax/print/ipp/attribute/printer/PrinterUpTime.java
index 7f9b1113ff6..7bec92ed302 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/printer/PrinterUpTime.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/printer/PrinterUpTime.java
@@ -1,4 +1,4 @@
-/* PrinterUpTime.java --
+/* PrinterUpTime.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -44,12 +44,12 @@ import javax.print.attribute.IntegerSyntax;
/**
* PrinterUpTime attribute as described in RFC 2911 section
* 4.4.29 provides the uptime of the printer object. This
- * is a value in second starting at 1 after a initialization
+ * is a value in second starting at 1 after a initialization
* or reboot of the printer object.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
-public final class PrinterUpTime extends IntegerSyntax
+public final class PrinterUpTime extends IntegerSyntax
implements Attribute
{
@@ -68,7 +68,7 @@ public final class PrinterUpTime extends IntegerSyntax
*
* @return The class <code>PrinterUpTime</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return PrinterUpTime.class;
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/supported/CharsetSupported.java b/libjava/classpath/gnu/javax/print/ipp/attribute/supported/CharsetSupported.java
index 75804b5a46b..22b484ef8dc 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/supported/CharsetSupported.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/supported/CharsetSupported.java
@@ -1,4 +1,4 @@
-/* CharsetSupported.java --
+/* CharsetSupported.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -40,23 +40,24 @@ package gnu.javax.print.ipp.attribute.supported;
import gnu.javax.print.ipp.attribute.CharsetSyntax;
+import javax.print.attribute.Attribute;
import javax.print.attribute.SupportedValuesAttribute;
/**
* CharsetSupported attribute as described in RFC 2911 section
* 4.4.18 provides the charset which are supported by the
- * IPP implementation to be used in the name and text syntax
+ * IPP implementation to be used in the name and text syntax
* attribute types.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
-public final class CharsetSupported extends CharsetSyntax
+public final class CharsetSupported extends CharsetSyntax
implements SupportedValuesAttribute
{
/**
* Creates a <code>CharsetSupported</code> object.
- *
+ *
* @param value the charset string value.
*/
public CharsetSupported(String value)
@@ -69,7 +70,7 @@ public final class CharsetSupported extends CharsetSyntax
*
* @return The class <code>CharsetSupported</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return CharsetSupported.class;
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/supported/CompressionSupported.java b/libjava/classpath/gnu/javax/print/ipp/attribute/supported/CompressionSupported.java
index 648167a938d..768091cb29b 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/supported/CompressionSupported.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/supported/CompressionSupported.java
@@ -42,6 +42,7 @@ import gnu.javax.print.ipp.IppUtilities;
import java.util.Iterator;
import java.util.Set;
+import javax.print.attribute.Attribute;
import javax.print.attribute.EnumSyntax;
import javax.print.attribute.SupportedValuesAttribute;
import javax.print.attribute.standard.Compression;
@@ -50,34 +51,34 @@ import javax.print.attribute.standard.Compression;
/**
* <code>CompressionSupported</code> provides the values which are
* supported for the compression attribute.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
public final class CompressionSupported extends EnumSyntax
implements SupportedValuesAttribute
{
-
+
/** The print data is not compressed. */
public static final CompressionSupported NONE = new CompressionSupported(0);
-
+
/** The print data is ZIP compressed. */
public static final CompressionSupported DEFLATE = new CompressionSupported(1);
-
+
/** The print data is GNU Zip compressed. */
public static final CompressionSupported GZIP = new CompressionSupported(2);
-
+
/** The print data is UNIX compressed. */
public static final CompressionSupported COMPRESS = new CompressionSupported(3);
-
- private static final String[] stringTable = { "none", "deflate",
+
+ private static final String[] stringTable = { "none", "deflate",
"gzip", "compress" };
-
- private static final CompressionSupported[] enumValueTable = { NONE, DEFLATE,
+
+ private static final CompressionSupported[] enumValueTable = { NONE, DEFLATE,
GZIP, COMPRESS };
/**
* Constructs a <code>CompressionSupported</code> object.
- *
+ *
* @param value the enum value
*/
protected CompressionSupported(int value)
@@ -90,7 +91,7 @@ public final class CompressionSupported extends EnumSyntax
*
* @return The class <code>CompressionSupported</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return CompressionSupported.class;
}
@@ -104,7 +105,7 @@ public final class CompressionSupported extends EnumSyntax
{
return "compression-supported";
}
-
+
/**
* Returns a table with the enumeration values represented as strings
* for this object.
@@ -125,38 +126,36 @@ public final class CompressionSupported extends EnumSyntax
{
return enumValueTable;
}
-
+
/**
* Returns the equally enum of the standard attribute class
* of this SupportedValuesAttribute enum.
- *
+ *
* @return The enum of the standard attribute class.
*/
- public Compression getAssociatedAttribute()
+ public Compression getAssociatedAttribute()
{
return (Compression) IppUtilities.getEnumAttribute(
"compression", new Integer(getValue()));
}
-
+
/**
* Constructs an array from a set of -supported attributes.
* @param set set to process
* @return The constructed array.
- *
+ *
* @see #getAssociatedAttribute()
*/
- public static Compression[] getAssociatedAttributeArray(Set set)
+ public static Compression[]
+ getAssociatedAttributeArray(Set<Attribute> set)
{
- CompressionSupported tmp;
- Compression[] result = new Compression[set.size()];
- Iterator it = set.iterator();
+ Compression[] result = new Compression[set.size()];
int j = 0;
- while (it.hasNext())
+ for (Attribute tmp : set)
{
- tmp = (CompressionSupported) it.next();
- result[j] = tmp.getAssociatedAttribute();
+ result[j] = ((CompressionSupported) tmp).getAssociatedAttribute();
j++;
- }
+ }
return result;
}
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/supported/DocumentFormatSupported.java b/libjava/classpath/gnu/javax/print/ipp/attribute/supported/DocumentFormatSupported.java
index 6bd63dcfc72..03449fa4f56 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/supported/DocumentFormatSupported.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/supported/DocumentFormatSupported.java
@@ -1,4 +1,4 @@
-/* DocumentFormatSupported.java --
+/* DocumentFormatSupported.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -40,21 +40,22 @@ package gnu.javax.print.ipp.attribute.supported;
import java.util.Locale;
+import javax.print.attribute.Attribute;
import javax.print.attribute.SupportedValuesAttribute;
import javax.print.attribute.TextSyntax;
/**
* <code>DocumentFormatSupported</code> specifies the supported document
* formats of a printer. Printer are supplying a set of this attribute.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
-public final class DocumentFormatSupported extends TextSyntax
+public final class DocumentFormatSupported extends TextSyntax
implements SupportedValuesAttribute
{
/**
- * Creates a <code>DocumentFormatSupported</code> object with the
+ * Creates a <code>DocumentFormatSupported</code> object with the
* given value and locale.
*
* @param value the value for this syntax
@@ -73,7 +74,7 @@ public final class DocumentFormatSupported extends TextSyntax
*
* @return The class <code>DocumentFormatSupported</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return DocumentFormatSupported.class;
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/supported/FinishingsSupported.java b/libjava/classpath/gnu/javax/print/ipp/attribute/supported/FinishingsSupported.java
index 9f9c635d3fe..f271fa71b88 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/supported/FinishingsSupported.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/supported/FinishingsSupported.java
@@ -43,6 +43,7 @@ import gnu.javax.print.ipp.IppUtilities;
import java.util.Iterator;
import java.util.Set;
+import javax.print.attribute.Attribute;
import javax.print.attribute.EnumSyntax;
import javax.print.attribute.SupportedValuesAttribute;
import javax.print.attribute.standard.Finishings;
@@ -51,7 +52,7 @@ import javax.print.attribute.standard.Finishings;
/**
* The <code>FinishingsSupported</code> attribute provides the supported
* values for finishings of a job.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
public final class FinishingsSupported extends EnumSyntax
@@ -60,122 +61,122 @@ public final class FinishingsSupported extends EnumSyntax
/** No finishing. */
public static final FinishingsSupported NONE = new FinishingsSupported(3);
-
+
/** Staple the document(s) */
public static final FinishingsSupported STAPLE = new FinishingsSupported(4);
-
+
/** Cover a document */
public static final FinishingsSupported COVER = new FinishingsSupported(6);
-
+
/**
* This value indicates that a binding is to be applied to the document.
* The type and placement of the binding is site-defined.
*/
public static final FinishingsSupported BIND = new FinishingsSupported(7);
-
+
/**
- * Bind the document(s) with one or more staples (wire stitches)
- * along the middle fold.
+ * Bind the document(s) with one or more staples (wire stitches)
+ * along the middle fold.
*/
- public static final FinishingsSupported SADDLE_STITCH =
+ public static final FinishingsSupported SADDLE_STITCH =
new FinishingsSupported(8);
-
+
/**
- * Bind the document(s) with one or more staples (wire stitches)
- * along one edge.
+ * Bind the document(s) with one or more staples (wire stitches)
+ * along one edge.
*/
- public static final FinishingsSupported EDGE_STITCH =
+ public static final FinishingsSupported EDGE_STITCH =
new FinishingsSupported(9);
-
- /**
- * Bind the document(s) with one or more staples in the top left
- * corner.
+
+ /**
+ * Bind the document(s) with one or more staples in the top left
+ * corner.
*/
- public static final FinishingsSupported STAPLE_TOP_LEFT =
+ public static final FinishingsSupported STAPLE_TOP_LEFT =
new FinishingsSupported(20);
-
- /**
- * Bind the document(s) with one or more staples in the bottom
- * left corner.
+
+ /**
+ * Bind the document(s) with one or more staples in the bottom
+ * left corner.
*/
- public static final FinishingsSupported STAPLE_BOTTOM_LEFT =
+ public static final FinishingsSupported STAPLE_BOTTOM_LEFT =
new FinishingsSupported(21);
-
+
/**
* Bind the document(s) with one or more staples in the top right corner.
*/
- public static final FinishingsSupported STAPLE_TOP_RIGHT =
+ public static final FinishingsSupported STAPLE_TOP_RIGHT =
new FinishingsSupported(22);
-
+
/**
* Bind the document(s) with one or more staples in the bottom right corner.
*/
- public static final FinishingsSupported STAPLE_BOTTOM_RIGHT =
+ public static final FinishingsSupported STAPLE_BOTTOM_RIGHT =
new FinishingsSupported(23);
-
+
/**
- * Bind the document(s) with one or more staples (wire stitches)
+ * Bind the document(s) with one or more staples (wire stitches)
* along the left edge.
*/
- public static final FinishingsSupported EDGE_STITCH_LEFT =
+ public static final FinishingsSupported EDGE_STITCH_LEFT =
new FinishingsSupported(24);
-
+
/**
- * Bind the document(s) with one or more staples (wire stitches) along
+ * Bind the document(s) with one or more staples (wire stitches) along
* the top edge.
*/
- public static final FinishingsSupported EDGE_STITCH_TOP =
+ public static final FinishingsSupported EDGE_STITCH_TOP =
new FinishingsSupported(25);
-
+
/**
- * Bind the document(s) with one or more staples (wire stitches) along
+ * Bind the document(s) with one or more staples (wire stitches) along
* the right edge.
*/
- public static final FinishingsSupported EDGE_STITCH_RIGHT =
+ public static final FinishingsSupported EDGE_STITCH_RIGHT =
new FinishingsSupported(26);
-
+
/**
* Bind the document(s) with one or more staples (wire stitches) along
- * the bottom edge.
+ * the bottom edge.
*/
- public static final FinishingsSupported EDGE_STITCH_BOTTOM =
+ public static final FinishingsSupported EDGE_STITCH_BOTTOM =
new FinishingsSupported(27);
-
+
/**
- * Bind the document(s) with two staples (wire stitches) along the
+ * Bind the document(s) with two staples (wire stitches) along the
* left edge assuming a portrait document.
*/
- public static final FinishingsSupported STAPLE_DUAL_LEFT =
+ public static final FinishingsSupported STAPLE_DUAL_LEFT =
new FinishingsSupported(28);
-
+
/**
- * Bind the document(s) with two staples (wire stitches) along the
+ * Bind the document(s) with two staples (wire stitches) along the
* top edge assuming a portrait document.
*/
- public static final FinishingsSupported STAPLE_DUAL_TOP =
+ public static final FinishingsSupported STAPLE_DUAL_TOP =
new FinishingsSupported(29);
-
+
/**
- * Bind the document(s) with two staples (wire stitches) along the
+ * Bind the document(s) with two staples (wire stitches) along the
* right edge assuming a portrait document.
*/
- public static final FinishingsSupported STAPLE_DUAL_RIGHT =
+ public static final FinishingsSupported STAPLE_DUAL_RIGHT =
new FinishingsSupported(30);
-
+
/**
- * Bind the document(s) with two staples (wire stitches) along the
+ * Bind the document(s) with two staples (wire stitches) along the
* bottom edge assuming a portrait document.
*/
- public static final FinishingsSupported STAPLE_DUAL_BOTTOM =
+ public static final FinishingsSupported STAPLE_DUAL_BOTTOM =
new FinishingsSupported(31);
- private static final String[] stringTable = { "none", "staple", null,
+ private static final String[] stringTable = { "none", "staple", null,
"cover", "bind", "saddle-stitch",
"edge-stitch", null, null, null,
null, null, null, null, null,
null, null, "staple-top-left",
- "staple-bottom-left",
- "staple-top-right",
+ "staple-bottom-left",
+ "staple-top-right",
"staple-bottom-right",
"edge-stitch-left",
"edge-stitch-top",
@@ -185,14 +186,14 @@ public final class FinishingsSupported extends EnumSyntax
"staple-dual-top",
"staple-dual-right",
"staple-dual-bottom" };
-
- private static final FinishingsSupported[] enumValueTable = { NONE, STAPLE,
- null, COVER, BIND,
+
+ private static final FinishingsSupported[] enumValueTable = { NONE, STAPLE,
+ null, COVER, BIND,
SADDLE_STITCH,
- EDGE_STITCH, null,
- null, null, null,
- null, null, null,
- null, null, null,
+ EDGE_STITCH, null,
+ null, null, null,
+ null, null, null,
+ null, null, null,
STAPLE_TOP_LEFT,
STAPLE_BOTTOM_LEFT,
STAPLE_TOP_RIGHT,
@@ -205,10 +206,10 @@ public final class FinishingsSupported extends EnumSyntax
STAPLE_DUAL_TOP,
STAPLE_DUAL_RIGHT,
STAPLE_DUAL_BOTTOM };
-
+
/**
* Constructs a <code>FinishingsSupported</code> object.
- *
+ *
* @param value the value
*/
protected FinishingsSupported(int value)
@@ -221,7 +222,7 @@ public final class FinishingsSupported extends EnumSyntax
*
* @return the class <code>FinishingsSupported</code> itself
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return FinishingsSupported.class;
}
@@ -235,7 +236,7 @@ public final class FinishingsSupported extends EnumSyntax
{
return "finishings-supported";
}
-
+
/**
* Returns a table with the enumeration values represented as strings
* for this object.
@@ -266,38 +267,36 @@ public final class FinishingsSupported extends EnumSyntax
{
return 3;
}
-
+
/**
* Returns the equally enum of the standard attribute class
* of this SupportedValuesAttribute enum.
- *
+ *
* @return The enum of the standard attribute class.
*/
- public Finishings getAssociatedAttribute()
+ public Finishings getAssociatedAttribute()
{
return (Finishings) IppUtilities.getEnumAttribute(
"finishings", new Integer(getValue()));
}
-
+
/**
* Constructs an array from a set of -supported attributes.
* @param set set to process
* @return The constructed array.
- *
+ *
* @see #getAssociatedAttribute()
*/
- public static Finishings[] getAssociatedAttributeArray(Set set)
+ public static Finishings[]
+ getAssociatedAttributeArray(Set<Attribute> set)
{
- FinishingsSupported tmp;
- Finishings[] result = new Finishings[set.size()];
- Iterator it = set.iterator();
+ Finishings[] result = new Finishings[set.size()];
int j = 0;
- while (it.hasNext())
+ for (Attribute tmp : set)
{
- tmp = (FinishingsSupported) it.next();
- result[j] = tmp.getAssociatedAttribute();
+ result[j] = ((FinishingsSupported) tmp).getAssociatedAttribute();
j++;
- }
+ }
return result;
}
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/supported/GeneratedNaturalLanguageSupported.java b/libjava/classpath/gnu/javax/print/ipp/attribute/supported/GeneratedNaturalLanguageSupported.java
index 1dbb2939fc5..df1d330076c 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/supported/GeneratedNaturalLanguageSupported.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/supported/GeneratedNaturalLanguageSupported.java
@@ -1,4 +1,4 @@
-/* GeneratedNaturalLanguageSupported.java --
+/* GeneratedNaturalLanguageSupported.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -40,24 +40,25 @@ package gnu.javax.print.ipp.attribute.supported;
import gnu.javax.print.ipp.attribute.NaturalLanguageSyntax;
+import javax.print.attribute.Attribute;
import javax.print.attribute.SupportedValuesAttribute;
/**
- * GeneratedNaturalLanguageSupported attribute as described
+ * GeneratedNaturalLanguageSupported attribute as described
* in RFC 2911 section 4.4.20 provides the natural languages
- * which are supported by the IPP implementation to be used
+ * which are supported by the IPP implementation to be used
* in the name and text syntax attribute types.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
-public final class GeneratedNaturalLanguageSupported
- extends NaturalLanguageSyntax
+public final class GeneratedNaturalLanguageSupported
+ extends NaturalLanguageSyntax
implements SupportedValuesAttribute
{
/**
* Creates a <code>GeneratedNaturalLanguageSupported</code> object.
- *
+ *
* @param value the charset string value.
*/
public GeneratedNaturalLanguageSupported(String value)
@@ -70,7 +71,7 @@ public final class GeneratedNaturalLanguageSupported
*
* @return The class <code>GeneratedNaturalLanguageSupported</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return GeneratedNaturalLanguageSupported.class;
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/supported/IppVersionsSupported.java b/libjava/classpath/gnu/javax/print/ipp/attribute/supported/IppVersionsSupported.java
index 06365e6d11c..072d7499a5e 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/supported/IppVersionsSupported.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/supported/IppVersionsSupported.java
@@ -1,4 +1,4 @@
-/* IppVersionsSupported.java --
+/* IppVersionsSupported.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -38,6 +38,7 @@ exception statement from your version. */
package gnu.javax.print.ipp.attribute.supported;
+import javax.print.attribute.Attribute;
import javax.print.attribute.EnumSyntax;
import javax.print.attribute.SupportedValuesAttribute;
@@ -45,31 +46,31 @@ import javax.print.attribute.SupportedValuesAttribute;
* IppVersionsSupported attribute as described in RFC 2911 section
* 4.4.14 provides the value(s) (implemented as EnumSyntax)
* of the supported IPP versions.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
-public final class IppVersionsSupported extends EnumSyntax
+public final class IppVersionsSupported extends EnumSyntax
implements SupportedValuesAttribute
{
-
+
// a keyword based attribute in IPP - int values just starting at 0
-
+
/** IPP version 1.0 */
- public static final IppVersionsSupported V_1_0 =
+ public static final IppVersionsSupported V_1_0 =
new IppVersionsSupported(0);
-
+
/** IPP version 1.1 */
- public static final IppVersionsSupported V_1_1 =
+ public static final IppVersionsSupported V_1_1 =
new IppVersionsSupported(1);
-
+
private static final String[] stringTable = { "1.0", "1.1" };
-
- private static final IppVersionsSupported[] enumValueTable = { V_1_0,
+
+ private static final IppVersionsSupported[] enumValueTable = { V_1_0,
V_1_1 };
/**
* Constructs a <code>IppVersionsSupported</code> object.
- *
+ *
* @param value the enum value
*/
public IppVersionsSupported(int value)
@@ -78,11 +79,11 @@ public final class IppVersionsSupported extends EnumSyntax
}
/**
- * Returns category of this class.
+ * Returns the category of this class.
*
* @return The class <code>IppVersionsSupported</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return IppVersionsSupported.class;
}
@@ -96,7 +97,7 @@ public final class IppVersionsSupported extends EnumSyntax
{
return "ipp-versions-supported";
}
-
+
/**
* Returns a table with the enumeration values represented as strings
* for this object.
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/supported/JobHoldUntilSupported.java b/libjava/classpath/gnu/javax/print/ipp/attribute/supported/JobHoldUntilSupported.java
index a15d0095f73..2add4a0cd55 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/supported/JobHoldUntilSupported.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/supported/JobHoldUntilSupported.java
@@ -1,4 +1,4 @@
-/* JobHoldUntilSupported.java --
+/* JobHoldUntilSupported.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -40,63 +40,64 @@ package gnu.javax.print.ipp.attribute.supported;
import java.util.Locale;
+import javax.print.attribute.Attribute;
import javax.print.attribute.SupportedValuesAttribute;
import javax.print.attribute.TextSyntax;
/**
* JobHoldUntilSupported attribute provides the supported
* values for the attribute type job-hold-until.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
-public final class JobHoldUntilSupported extends TextSyntax
+public final class JobHoldUntilSupported extends TextSyntax
implements SupportedValuesAttribute
{
-
- // a keyword/name based attribute in IPP
+
+ // a keyword/name based attribute in IPP
// can be extended by administrators
// standard values are predefined
-
+
/** Job should be printed immediately. */
- public static final JobHoldUntilSupported NO_HOLD =
+ public static final JobHoldUntilSupported NO_HOLD =
new JobHoldUntilSupported("no-hold", null);
-
+
/** Job should be hold indefinitely. */
- public static final JobHoldUntilSupported INDEFINITE =
+ public static final JobHoldUntilSupported INDEFINITE =
new JobHoldUntilSupported("indefinite", null);
-
+
/** Job should be processed during the day. */
- public static final JobHoldUntilSupported DAY_TIME =
+ public static final JobHoldUntilSupported DAY_TIME =
new JobHoldUntilSupported("day-time", null);
-
+
/** Job should be processed in the evening. */
- public static final JobHoldUntilSupported EVENING =
+ public static final JobHoldUntilSupported EVENING =
new JobHoldUntilSupported("evening", null);
-
+
/** Job should be processed during night. */
- public static final JobHoldUntilSupported NIGHT =
+ public static final JobHoldUntilSupported NIGHT =
new JobHoldUntilSupported("night", null);
-
+
/** Job should be processed during the weekend. */
- public static final JobHoldUntilSupported WEEKEND =
+ public static final JobHoldUntilSupported WEEKEND =
new JobHoldUntilSupported("weekend", null);
-
- /**
- * Job should be processed as second-shift
- * (after close of business).
+
+ /**
+ * Job should be processed as second-shift
+ * (after close of business).
*/
- public static final JobHoldUntilSupported SECOND_SHIFT =
+ public static final JobHoldUntilSupported SECOND_SHIFT =
new JobHoldUntilSupported("second-shift", null);
-
- /**
- * Job should be processed as third-shift
- * (after midnight).
+
+ /**
+ * Job should be processed as third-shift
+ * (after midnight).
*/
- public static final JobHoldUntilSupported THIRD_SHIFT =
- new JobHoldUntilSupported("third-shift", null);
+ public static final JobHoldUntilSupported THIRD_SHIFT =
+ new JobHoldUntilSupported("third-shift", null);
/**
- * Creates a <code>JobHoldUntilSupported</code> object with the
+ * Creates a <code>JobHoldUntilSupported</code> object with the
* given value and locale.
*
* @param value the value for this syntax
@@ -115,7 +116,7 @@ public final class JobHoldUntilSupported extends TextSyntax
*
* @return The class <code>JobHoldUntilSupported</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return JobHoldUntilSupported.class;
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/supported/JobSheetsSupported.java b/libjava/classpath/gnu/javax/print/ipp/attribute/supported/JobSheetsSupported.java
index 4051e24200c..aeb86ff1052 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/supported/JobSheetsSupported.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/supported/JobSheetsSupported.java
@@ -1,4 +1,4 @@
-/* JobSheetsSupported.java --
+/* JobSheetsSupported.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -53,26 +53,26 @@ import javax.print.attribute.standard.JobSheets;
/**
* JobSheetsSupported attribute provides the supported values
* of the job-sheets attribute.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
-public final class JobSheetsSupported extends TextSyntax
+public final class JobSheetsSupported extends TextSyntax
implements SupportedValuesAttribute
{
- //a keyword/name based attribute in IPP
+ //a keyword/name based attribute in IPP
// can be extended by administrators
// standard values are predefined
-
+
/** No job sheet is the default */
- public static final JobSheetsDefault NONE =
+ public static final JobSheetsDefault NONE =
new JobSheetsDefault("none", Locale.getDefault());
-
+
/** A job sheet is the default */
- public static final JobSheetsDefault STANDARD =
+ public static final JobSheetsDefault STANDARD =
new JobSheetsDefault("standard", Locale.getDefault());
-
+
/**
- * Creates a <code>JobSheetsSupported</code> object with the
+ * Creates a <code>JobSheetsSupported</code> object with the
* given value and locale.
*
* @param value the value for this syntax
@@ -85,13 +85,13 @@ public final class JobSheetsSupported extends TextSyntax
{
super(value, locale);
}
-
+
/**
* Returns category of this class.
*
* @return The class <code>JobSheetsSupported</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return JobSheetsSupported.class;
}
@@ -105,46 +105,44 @@ public final class JobSheetsSupported extends TextSyntax
{
return "job-sheets-supported";
}
-
+
/**
* Returns the equally enum of the standard attribute class
* of this SupportedValuesAttribute enum.
* <p>May return null if no value exists in JPS API.</p>
- *
+ *
* @return The enum of the standard attribute class.
*/
- public JobSheets getAssociatedAttribute()
+ public JobSheets getAssociatedAttribute()
{
if (this.equals(JobSheetsDefault.NONE))
return JobSheets.NONE;
if (this.equals(JobSheetsDefault.STANDARD))
return JobSheets.STANDARD;
-
+
return null;
}
-
+
/**
* Constructs an array from a set of -supported attributes.
* @param set set to process
* @return The constructed array.
- *
+ *
* @see #getAssociatedAttribute()
*/
- public static JobSheets[] getAssociatedAttributeArray(Set set)
+ public static JobSheets[]
+ getAssociatedAttributeArray(Set<Attribute> set)
{
- JobSheetsSupported tmp;
- ArrayList result = new ArrayList();
- Iterator it = set.iterator();
+ ArrayList<JobSheets> result = new ArrayList<JobSheets>();
int j = 0;
- while (it.hasNext())
+ for (Attribute tmp : set)
{
- tmp = (JobSheetsSupported) it.next();
- Attribute att = tmp.getAssociatedAttribute();
+ JobSheets att = ((JobSheetsSupported) tmp).getAssociatedAttribute();
if (att != null)
result.add(att);
j++;
- }
- return (JobSheets[]) result.toArray(new JobSheets[result.size()]);
+ }
+ return result.toArray(new JobSheets[result.size()]);
}
-
+
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/supported/MediaSupported.java b/libjava/classpath/gnu/javax/print/ipp/attribute/supported/MediaSupported.java
index 3f10c06b5f7..2684ebbecd5 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/supported/MediaSupported.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/supported/MediaSupported.java
@@ -1,4 +1,4 @@
-/* MediaSupported.java --
+/* MediaSupported.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -45,6 +45,7 @@ import java.util.Iterator;
import java.util.Locale;
import java.util.Set;
+import javax.print.attribute.Attribute;
import javax.print.attribute.SupportedValuesAttribute;
import javax.print.attribute.TextSyntax;
import javax.print.attribute.standard.Media;
@@ -52,15 +53,15 @@ import javax.print.attribute.standard.Media;
/**
* MediaSupported attribute provides the keyword values
* of the media types supported by the printer object.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
-public final class MediaSupported extends TextSyntax
+public final class MediaSupported extends TextSyntax
implements SupportedValuesAttribute
{
/**
- * Creates a <code>MediaSupported</code> object with the
+ * Creates a <code>MediaSupported</code> object with the
* given value and locale.
*
* @param value the value for this syntax
@@ -79,7 +80,7 @@ public final class MediaSupported extends TextSyntax
*
* @return The class <code>MediaSupported</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return MediaSupported.class;
}
@@ -93,26 +94,23 @@ public final class MediaSupported extends TextSyntax
{
return "media-supported";
}
-
+
/**
* Constructs an array from a set of -supported attributes.
* @param set set to process
* @return The constructed array.
*/
- public static Media[] getAssociatedAttributeArray(Set set)
+ public static Media[] getAssociatedAttributeArray(Set<Attribute> set)
{
- MediaSupported tmp;
Media tmp2;
- ArrayList result = new ArrayList();
- Iterator it = set.iterator();
- while (it.hasNext())
+ ArrayList<Media> result = new ArrayList<Media>();
+ for (Attribute tmp : set)
{
- tmp = (MediaSupported) it.next();
tmp2 = (Media) IppUtilities.getEnumAttribute("media", tmp.toString());
if (tmp2 != null)
result.add(tmp2);
- }
- return (Media[]) result.toArray(new Media[result.size()]);
+ }
+ return result.toArray(new Media[result.size()]);
}
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/supported/MultipleDocumentHandlingSupported.java b/libjava/classpath/gnu/javax/print/ipp/attribute/supported/MultipleDocumentHandlingSupported.java
index 891a99faedb..73e5921f1cd 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/supported/MultipleDocumentHandlingSupported.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/supported/MultipleDocumentHandlingSupported.java
@@ -42,6 +42,7 @@ import gnu.javax.print.ipp.IppUtilities;
import java.util.Iterator;
import java.util.Set;
+import javax.print.attribute.Attribute;
import javax.print.attribute.EnumSyntax;
import javax.print.attribute.SupportedValuesAttribute;
import javax.print.attribute.standard.MultipleDocumentHandling;
@@ -50,49 +51,49 @@ import javax.print.attribute.standard.MultipleDocumentHandling;
/**
* <code>MultipleDocumentHandlingSupported</code> provides the
* supported values for the MultipleDocumentHandling attribute.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
public final class MultipleDocumentHandlingSupported extends EnumSyntax
implements SupportedValuesAttribute
{
-
+
//a keyword based attribute in IPP - int values just starting at 0
-
- /**
- * Supports only multiple documents treated as a single document. This
+
+ /**
+ * Supports only multiple documents treated as a single document. This
* applies to attributes which specify treatment of multiple document jobs.
*/
public static final MultipleDocumentHandlingSupported SINGLE_DOCUMENT =
new MultipleDocumentHandlingSupported(0);
-
+
/** Supports multiple documents as uncollated copies */
public static final MultipleDocumentHandlingSupported SEPARATE_DOCUMENTS_UNCOLLATED_COPIES =
new MultipleDocumentHandlingSupported(1);
-
+
/** Supports multiple documents as collated copies */
public static final MultipleDocumentHandlingSupported SEPARATE_DOCUMENTS_COLLATED_COPIES =
new MultipleDocumentHandlingSupported(2);
-
- /**
+
+ /**
* Supports multiple documents where every single document starts
- * with a new sheet.
+ * with a new sheet.
*/
public static final MultipleDocumentHandlingSupported SINGLE_DOCUMENT_NEW_SHEET =
new MultipleDocumentHandlingSupported(3);
- private static final String[] stringTable = { "single-document",
+ private static final String[] stringTable = { "single-document",
"separate-documents-uncollated-copies",
"separate-documents-collated-copies",
"single-document-new-sheet" };
-
- private static final MultipleDocumentHandlingSupported[] enumValueTable =
+
+ private static final MultipleDocumentHandlingSupported[] enumValueTable =
{ SINGLE_DOCUMENT, SEPARATE_DOCUMENTS_UNCOLLATED_COPIES,
SEPARATE_DOCUMENTS_COLLATED_COPIES, SINGLE_DOCUMENT_NEW_SHEET};
-
+
/**
* Constructs a <code>MultipleDocumentHandlingSupported</code> object.
- *
+ *
* @param value the enum value
*/
protected MultipleDocumentHandlingSupported(int value)
@@ -105,7 +106,7 @@ public final class MultipleDocumentHandlingSupported extends EnumSyntax
*
* @return The class <code>MultipleDocumentHandlingSupported</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return MultipleDocumentHandlingSupported.class;
}
@@ -119,7 +120,7 @@ public final class MultipleDocumentHandlingSupported extends EnumSyntax
{
return "multiple-document-handling-supported";
}
-
+
/**
* Returns a table with the enumeration values represented as strings
* for this object.
@@ -140,38 +141,36 @@ public final class MultipleDocumentHandlingSupported extends EnumSyntax
{
return enumValueTable;
}
-
+
/**
* Returns the equally enum of the standard attribute class
* of this SupportedValuesAttribute enum.
- *
+ *
* @return The enum of the standard attribute class.
*/
- public MultipleDocumentHandling getAssociatedAttribute()
+ public MultipleDocumentHandling getAssociatedAttribute()
{
return (MultipleDocumentHandling) IppUtilities.getEnumAttribute(
"multiple-document-handling", new Integer(getValue()));
}
-
+
/**
* Constructs an array from a set of -supported attributes.
* @param set set to process
* @return The constructed array.
- *
+ *
* @see #getAssociatedAttribute()
*/
- public static MultipleDocumentHandling[] getAssociatedAttributeArray(Set set)
+ public static MultipleDocumentHandling[]
+ getAssociatedAttributeArray(Set<Attribute> set)
{
- MultipleDocumentHandlingSupported tmp;
- MultipleDocumentHandling[] result = new MultipleDocumentHandling[set.size()];
- Iterator it = set.iterator();
+ MultipleDocumentHandling[] result = new MultipleDocumentHandling[set.size()];
int j = 0;
- while (it.hasNext())
+ for (Attribute tmp : set)
{
- tmp = (MultipleDocumentHandlingSupported) it.next();
- result[j] = tmp.getAssociatedAttribute();
+ result[j] = ((MultipleDocumentHandlingSupported) tmp).getAssociatedAttribute();
j++;
- }
+ }
return result;
}
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/supported/MultipleDocumentJobsSupported.java b/libjava/classpath/gnu/javax/print/ipp/attribute/supported/MultipleDocumentJobsSupported.java
index 387e6b5131d..1b299845622 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/supported/MultipleDocumentJobsSupported.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/supported/MultipleDocumentJobsSupported.java
@@ -1,4 +1,4 @@
-/* MultipleDocumentJobsSupported.java --
+/* MultipleDocumentJobsSupported.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -38,35 +38,36 @@ exception statement from your version. */
package gnu.javax.print.ipp.attribute.supported;
+import javax.print.attribute.Attribute;
import javax.print.attribute.EnumSyntax;
import javax.print.attribute.SupportedValuesAttribute;
/**
* <code>MultipleDocumentJobsSupported</code> specifies if a printer
* supported multiple documents in one job.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
-public class MultipleDocumentJobsSupported extends EnumSyntax
+public class MultipleDocumentJobsSupported extends EnumSyntax
implements SupportedValuesAttribute
{
-
+
/** Multiple documents per job are not supported. */
- public static final MultipleDocumentJobsSupported NOT_SUPPORTED =
+ public static final MultipleDocumentJobsSupported NOT_SUPPORTED =
new MultipleDocumentJobsSupported(0);
-
+
/** Multiple documents per job are supported. */
- public static final MultipleDocumentJobsSupported SUPPORTED =
+ public static final MultipleDocumentJobsSupported SUPPORTED =
new MultipleDocumentJobsSupported(1);
private static final String[] stringTable = { "not-supported", "supported" };
-
- private static final MultipleDocumentJobsSupported[] enumValueTable =
+
+ private static final MultipleDocumentJobsSupported[] enumValueTable =
{ NOT_SUPPORTED, SUPPORTED };
-
+
/**
* Constructs a <code>MultipleDocumentJobsSupported</code> object.
- *
+ *
* @param value the enum value
*/
protected MultipleDocumentJobsSupported(int value)
@@ -79,7 +80,7 @@ public class MultipleDocumentJobsSupported extends EnumSyntax
*
* @return The class <code>MultipleDocumentJobsSupported</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return MultipleDocumentJobsSupported.class;
}
@@ -93,7 +94,7 @@ public class MultipleDocumentJobsSupported extends EnumSyntax
{
return "multiple-document-jobs-supported";
}
-
+
/**
* Returns a table with the enumeration values represented as strings
* for this object.
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/supported/OperationsSupported.java b/libjava/classpath/gnu/javax/print/ipp/attribute/supported/OperationsSupported.java
index 81e2e34cd05..a059c89a50b 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/supported/OperationsSupported.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/supported/OperationsSupported.java
@@ -1,4 +1,4 @@
-/* OperationsSupported.java --
+/* OperationsSupported.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -38,6 +38,7 @@ exception statement from your version. */
package gnu.javax.print.ipp.attribute.supported;
+import javax.print.attribute.Attribute;
import javax.print.attribute.EnumSyntax;
import javax.print.attribute.SupportedValuesAttribute;
@@ -45,12 +46,12 @@ import javax.print.attribute.SupportedValuesAttribute;
* <code>OperationsSupported</code> specifies the enums of the operations
* supported by a given printer or job object. The attribute is further
* specified in RFC 2911 section 4.4.15.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
-public final class OperationsSupported extends EnumSyntax
+public final class OperationsSupported extends EnumSyntax
implements SupportedValuesAttribute
-{
+{
/*
* Value Operation Name
----------------- -------------------------------------
@@ -76,104 +77,104 @@ public final class OperationsSupported extends EnumSyntax
0x0013-0x3FFF reserved for future IETF standards track operations
0x4000-0x8FFF reserved for vendor extensions
*/
-
+
// standard ipp 1.1 operations
- /**
+ /**
* Operation to print a job in one request/response. */
- public static final OperationsSupported PRINT_JOB =
+ public static final OperationsSupported PRINT_JOB =
new OperationsSupported(0x02);
-
+
/** Operation to print a document from an URI */
- public static final OperationsSupported PRINT_URI =
+ public static final OperationsSupported PRINT_URI =
new OperationsSupported(0x03);
-
+
/** Operation to validate a job before submission. */
- public static final OperationsSupported VALIDATE_JOB =
+ public static final OperationsSupported VALIDATE_JOB =
new OperationsSupported(0x04);
-
- /**
- * Operation to create an initial job for use with multiple document per job.
+
+ /**
+ * Operation to create an initial job for use with multiple document per job.
*/
- public static final OperationsSupported CREATE_JOB =
+ public static final OperationsSupported CREATE_JOB =
new OperationsSupported(0x05);
-
- /**
- * Operation to send a document to a multidoc job created via CREATE_JOB
+
+ /**
+ * Operation to send a document to a multidoc job created via CREATE_JOB
*/
- public static final OperationsSupported SEND_DOCUMENT =
+ public static final OperationsSupported SEND_DOCUMENT =
new OperationsSupported(0x06);
-
- /**
- * Operation to send a document uri to a multidoc job created
- * via CREATE_JOB. The document accessible from this URI will be printed.
+
+ /**
+ * Operation to send a document uri to a multidoc job created
+ * via CREATE_JOB. The document accessible from this URI will be printed.
*/
- public static final OperationsSupported SEND_URI =
+ public static final OperationsSupported SEND_URI =
new OperationsSupported(0x07);
-
+
/** Operation to cancel a job by its ID or name. */
- public static final OperationsSupported CANCEL_JOB =
+ public static final OperationsSupported CANCEL_JOB =
new OperationsSupported(0x08);
-
+
/** Operation to get job attributes of a current job. */
- public static final OperationsSupported GET_JOB_ATTRIBUTES =
+ public static final OperationsSupported GET_JOB_ATTRIBUTES =
new OperationsSupported(0x09);
-
+
/** Operation to pause a printer. */
- public static final OperationsSupported PAUSE_PRINTER =
+ public static final OperationsSupported PAUSE_PRINTER =
new OperationsSupported(0x10);
-
+
/** Operation to get all currently queued or processed jobs. */
- public static final OperationsSupported GET_JOBS =
+ public static final OperationsSupported GET_JOBS =
new OperationsSupported(0x0A);
-
+
/** Operation to get the attributes of a printer. */
- public static final OperationsSupported GET_PRINTER_ATTRIBUTES =
+ public static final OperationsSupported GET_PRINTER_ATTRIBUTES =
new OperationsSupported(0x0B);
-
+
/** Operation to put a job on hold by its ID or name. */
- public static final OperationsSupported HOLD_JOB =
+ public static final OperationsSupported HOLD_JOB =
new OperationsSupported(0x0C);
-
+
/** Operation to release a job by its ID or name. */
- public static final OperationsSupported RELEASE_JOB =
+ public static final OperationsSupported RELEASE_JOB =
new OperationsSupported(0x0D);
-
+
/** Operation to restart a job by its ID or name. */
- public static final OperationsSupported RESTART_JOB =
+ public static final OperationsSupported RESTART_JOB =
new OperationsSupported(0x0E);
-
+
/** Not yet an operation - reserved for futher use. */
- public static final OperationsSupported RESERVED =
+ public static final OperationsSupported RESERVED =
new OperationsSupported(0x0F);
-
+
/** Operation to resume a printer. */
- public static final OperationsSupported RESUME_PRINTER =
+ public static final OperationsSupported RESUME_PRINTER =
new OperationsSupported(0x11);
-
+
/** Operation to remove all jobs from a printer regardless of state. */
- public static final OperationsSupported PURGE_JOBS =
+ public static final OperationsSupported PURGE_JOBS =
new OperationsSupported(0x12);
- private static final String[] stringTable = { "print-job", "print-uri",
+ private static final String[] stringTable = { "print-job", "print-uri",
"validate-job", "create-job",
- "send-document", "send-uri",
+ "send-document", "send-uri",
"cancel-job", "get-job-attributes",
- "pause-printer", "get-jobs",
+ "pause-printer", "get-jobs",
"get-printer-attributes", "hold-job",
"release-job", "restart-job", "reserved",
"resume-printer", "purge-job"};
-
- private static final OperationsSupported[] enumValueTable =
+
+ private static final OperationsSupported[] enumValueTable =
{ PRINT_JOB, PRINT_URI, VALIDATE_JOB, CREATE_JOB, SEND_DOCUMENT, SEND_URI,
CANCEL_JOB, GET_JOB_ATTRIBUTES, PAUSE_PRINTER, GET_JOBS, GET_PRINTER_ATTRIBUTES,
HOLD_JOB, RELEASE_JOB, RESTART_JOB, RESERVED, RESUME_PRINTER, PURGE_JOBS};
-
-
+
+
/**
* Constructs a <code>OperationsSupported</code> object.
- *
+ *
* @param value the enum value
*/
protected OperationsSupported(int value)
@@ -186,7 +187,7 @@ public final class OperationsSupported extends EnumSyntax
*
* @return The class <code>OperationsSupported</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return OperationsSupported.class;
}
@@ -200,7 +201,7 @@ public final class OperationsSupported extends EnumSyntax
{
return "operations-supported";
}
-
+
/**
* Returns a table with the enumeration values represented as strings
* for this object.
@@ -226,5 +227,5 @@ public final class OperationsSupported extends EnumSyntax
protected int getOffset()
{
return 2;
- }
+ }
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/supported/OrientationRequestedSupported.java b/libjava/classpath/gnu/javax/print/ipp/attribute/supported/OrientationRequestedSupported.java
index 528c758ac70..4b87c53a528 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/supported/OrientationRequestedSupported.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/supported/OrientationRequestedSupported.java
@@ -42,33 +42,34 @@ import gnu.javax.print.ipp.IppUtilities;
import java.util.Iterator;
import java.util.Set;
+import javax.print.attribute.Attribute;
import javax.print.attribute.EnumSyntax;
import javax.print.attribute.SupportedValuesAttribute;
import javax.print.attribute.standard.OrientationRequested;
/**
- * The <code>OrientationRequestedSupported</code> attribute provides
+ * The <code>OrientationRequestedSupported</code> attribute provides
* the supported values for the job attribute orientation-requested.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
public final class OrientationRequestedSupported extends EnumSyntax
implements SupportedValuesAttribute
{
-
+
/** Orientation as portrait. */
public static final OrientationRequestedSupported PORTRAIT =
new OrientationRequestedSupported(3);
-
+
/** Orientation as landscape. */
public static final OrientationRequestedSupported LANDSCAPE =
new OrientationRequestedSupported(4);
-
+
/** Orientation as reversed landscape. */
public static final OrientationRequestedSupported REVERSE_LANDSCAPE =
new OrientationRequestedSupported(5);
-
+
/** Orientation as reversed portrait. */
public static final OrientationRequestedSupported REVERSE_PORTRAIT =
new OrientationRequestedSupported(6);
@@ -77,14 +78,14 @@ public final class OrientationRequestedSupported extends EnumSyntax
private static final String[] stringTable = { "portrait", "landscape",
"reverse-landscape",
"reverse-portrait" };
-
- private static final OrientationRequestedSupported[]
- enumValueTable = { PORTRAIT, LANDSCAPE,
+
+ private static final OrientationRequestedSupported[]
+ enumValueTable = { PORTRAIT, LANDSCAPE,
REVERSE_LANDSCAPE, REVERSE_PORTRAIT };
-
+
/**
* Constructs a <code>OrientationRequestedSupported</code> object.
- *
+ *
* @param value the value
*/
protected OrientationRequestedSupported(int value)
@@ -97,7 +98,7 @@ public final class OrientationRequestedSupported extends EnumSyntax
*
* @return The class <code>OrientationRequestedSupported</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return OrientationRequestedSupported.class;
}
@@ -111,7 +112,7 @@ public final class OrientationRequestedSupported extends EnumSyntax
{
return "orientation-requested-supported";
}
-
+
/**
* Returns a table with the enumeration values represented as strings
* for this object.
@@ -132,7 +133,7 @@ public final class OrientationRequestedSupported extends EnumSyntax
{
return enumValueTable;
}
-
+
/**
* Returns the lowest used value by the enumerations of this class.
* .
@@ -142,38 +143,36 @@ public final class OrientationRequestedSupported extends EnumSyntax
{
return 3;
}
-
+
/**
* Returns the equally enum of the standard attribute class
* of this SupportedValuesAttribute enum.
- *
+ *
* @return The enum of the standard attribute class.
*/
- public OrientationRequested getAssociatedAttribute()
+ public OrientationRequested getAssociatedAttribute()
{
return (OrientationRequested) IppUtilities.getEnumAttribute(
"orientation-requested", new Integer(getValue()));
}
-
+
/**
* Constructs an array from a set of -supported attributes.
* @param set set to process
* @return The constructed array.
- *
+ *
* @see #getAssociatedAttribute()
*/
- public static OrientationRequested[] getAssociatedAttributeArray(Set set)
+ public static OrientationRequested[]
+ getAssociatedAttributeArray(Set<Attribute> set)
{
- OrientationRequestedSupported tmp;
- OrientationRequested[] result = new OrientationRequested[set.size()];
- Iterator it = set.iterator();
+ OrientationRequested[] result = new OrientationRequested[set.size()];
int j = 0;
- while (it.hasNext())
+ for (Attribute tmp : set)
{
- tmp = (OrientationRequestedSupported) it.next();
- result[j] = tmp.getAssociatedAttribute();
+ result[j] = ((OrientationRequestedSupported) tmp).getAssociatedAttribute();
j++;
- }
+ }
return result;
}
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/supported/PageRangesSupported.java b/libjava/classpath/gnu/javax/print/ipp/attribute/supported/PageRangesSupported.java
index d39a37fd708..c58f76748b3 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/supported/PageRangesSupported.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/supported/PageRangesSupported.java
@@ -37,36 +37,36 @@ exception statement from your version. */
package gnu.javax.print.ipp.attribute.supported;
+import javax.print.attribute.Attribute;
import javax.print.attribute.EnumSyntax;
import javax.print.attribute.SupportedValuesAttribute;
-
/**
* <code>PageRangesSupported</code> is a boolean typed
* attribute indicating (as EnumSyntax) if page ranges
* are supported.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
public final class PageRangesSupported extends EnumSyntax
implements SupportedValuesAttribute
{
/** Page ranges are not supported. */
- public static final PageRangesSupported NOT_SUPPORTED =
+ public static final PageRangesSupported NOT_SUPPORTED =
new PageRangesSupported(0);
-
+
/** Page ranges are supported. */
- public static final PageRangesSupported SUPPORTED =
+ public static final PageRangesSupported SUPPORTED =
new PageRangesSupported(1);
private static final String[] stringTable = { "not-supported", "supported" };
-
+
private static final PageRangesSupported[] enumValueTable = { NOT_SUPPORTED,
SUPPORTED };
-
+
/**
* Constructs a <code>PageRangesSupported</code> object.
- *
+ *
* @param value the enum value
*/
protected PageRangesSupported(int value)
@@ -79,7 +79,7 @@ public final class PageRangesSupported extends EnumSyntax
*
* @return The class <code>PageRangesSupported</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return PageRangesSupported.class;
}
@@ -93,7 +93,7 @@ public final class PageRangesSupported extends EnumSyntax
{
return "page-ranges-supported";
}
-
+
/**
* Returns a table with the enumeration values represented as strings
* for this object.
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/supported/PrintQualitySupported.java b/libjava/classpath/gnu/javax/print/ipp/attribute/supported/PrintQualitySupported.java
index b0f7e86735b..25cbf9f0bea 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/supported/PrintQualitySupported.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/supported/PrintQualitySupported.java
@@ -42,6 +42,7 @@ import gnu.javax.print.ipp.IppUtilities;
import java.util.Iterator;
import java.util.Set;
+import javax.print.attribute.Attribute;
import javax.print.attribute.EnumSyntax;
import javax.print.attribute.SupportedValuesAttribute;
import javax.print.attribute.standard.PrintQuality;
@@ -50,33 +51,33 @@ import javax.print.attribute.standard.PrintQuality;
/**
* <code>PrintQualitySupported</code> provides the
* supported values for the print-quality attribute.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
public final class PrintQualitySupported extends EnumSyntax
implements SupportedValuesAttribute
{
/** Draft quality of the printer. */
- public static final PrintQualitySupported DRAFT =
+ public static final PrintQualitySupported DRAFT =
new PrintQualitySupported(3);
-
+
/** Normal quality of the printer. */
- public static final PrintQualitySupported NORMAL =
+ public static final PrintQualitySupported NORMAL =
new PrintQualitySupported(4);
-
+
/** High quality of the printer. */
- public static final PrintQualitySupported HIGH =
+ public static final PrintQualitySupported HIGH =
new PrintQualitySupported(5);
private static final String[] stringTable = { "draft", "normal", "high" };
-
- private static final PrintQualitySupported[] enumValueTable = { DRAFT,
- NORMAL,
+
+ private static final PrintQualitySupported[] enumValueTable = { DRAFT,
+ NORMAL,
HIGH };
-
+
/**
* Constructs a <code>PrintQualitySupported</code> object.
- *
+ *
* @param value the value of the enum
*/
protected PrintQualitySupported(int value)
@@ -89,7 +90,7 @@ public final class PrintQualitySupported extends EnumSyntax
*
* @return The class <code>PrintQualitySupported</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return PrintQualitySupported.class;
}
@@ -103,7 +104,7 @@ public final class PrintQualitySupported extends EnumSyntax
{
return "print-quality-supported";
}
-
+
/**
* Returns a table with the enumeration values represented as strings
* for this object.
@@ -124,7 +125,7 @@ public final class PrintQualitySupported extends EnumSyntax
{
return enumValueTable;
}
-
+
/**
* Returns the lowest used value by the enumerations of this class.
* .
@@ -134,38 +135,35 @@ public final class PrintQualitySupported extends EnumSyntax
{
return 3;
}
-
+
/**
* Returns the equally enum of the standard attribute class
* of this SupportedValuesAttribute enum.
- *
+ *
* @return The enum of the standard attribute class.
*/
- public PrintQuality getAssociatedAttribute()
+ public PrintQuality getAssociatedAttribute()
{
return (PrintQuality) IppUtilities.getEnumAttribute(
"print-quality", new Integer(getValue()));
}
-
+
/**
* Constructs an array from a set of -supported attributes.
* @param set set to process
* @return The constructed array.
- *
+ *
* @see #getAssociatedAttribute()
*/
- public static PrintQuality[] getAssociatedAttributeArray(Set set)
+ public static PrintQuality[] getAssociatedAttributeArray(Set<Attribute> set)
{
- PrintQualitySupported tmp;
- PrintQuality[] result = new PrintQuality[set.size()];
- Iterator it = set.iterator();
+ PrintQuality[] result = new PrintQuality[set.size()];
int j = 0;
- while (it.hasNext())
+ for (Attribute tmp : set)
{
- tmp = (PrintQualitySupported) it.next();
- result[j] = tmp.getAssociatedAttribute();
+ result[j] = ((PrintQualitySupported) tmp).getAssociatedAttribute();
j++;
- }
+ }
return result;
}
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/supported/PrinterResolutionSupported.java b/libjava/classpath/gnu/javax/print/ipp/attribute/supported/PrinterResolutionSupported.java
index e3266c4221e..eb50aaac530 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/supported/PrinterResolutionSupported.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/supported/PrinterResolutionSupported.java
@@ -40,23 +40,24 @@ package gnu.javax.print.ipp.attribute.supported;
import java.util.Iterator;
import java.util.Set;
+import javax.print.attribute.Attribute;
import javax.print.attribute.ResolutionSyntax;
import javax.print.attribute.SupportedValuesAttribute;
import javax.print.attribute.standard.PrinterResolution;
/**
- * The <code>PrinterResolutionSupported</code> attribute provides
+ * The <code>PrinterResolutionSupported</code> attribute provides
* the supported values for the job attribute printer-resolution.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
public final class PrinterResolutionSupported extends ResolutionSyntax
implements SupportedValuesAttribute
{
-
+
/**
- * Creates a <code>PrinterResolutionSupported</code> object with the
+ * Creates a <code>PrinterResolutionSupported</code> object with the
* given arguments.
*
* @param crossFeedResolution the cross feed resolution
@@ -65,25 +66,25 @@ public final class PrinterResolutionSupported extends ResolutionSyntax
*
* @exception IllegalArgumentException if preconditions fail
*/
- public PrinterResolutionSupported(int crossFeedResolution,
+ public PrinterResolutionSupported(int crossFeedResolution,
int feedResolution, int units)
{
super(crossFeedResolution, feedResolution, units);
}
-
+
/**
* Tests if the given object is equal to this object.
*
* @param obj the object to test
*
- * @return <code>true</code> if both objects are equal,
+ * @return <code>true</code> if both objects are equal,
* <code>false</code> otherwise.
*/
public boolean equals(Object obj)
{
if(! (obj instanceof PrinterResolutionSupported))
return false;
-
+
return super.equals(obj);
}
@@ -92,7 +93,7 @@ public final class PrinterResolutionSupported extends ResolutionSyntax
*
* @return The class <code>PrinterResolutionSupported</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return PrinterResolutionSupported.class;
}
@@ -106,38 +107,36 @@ public final class PrinterResolutionSupported extends ResolutionSyntax
{
return "printer-resolution-supported";
}
-
+
/**
* Returns the equally enum of the standard attribute class
* of this SupportedValuesAttribute enum.
- *
+ *
* @return The enum of the standard attribute class.
*/
- public PrinterResolution getAssociatedAttribute()
+ public PrinterResolution getAssociatedAttribute()
{
- return new PrinterResolution(getCrossFeedResolutionDphi(),
+ return new PrinterResolution(getCrossFeedResolutionDphi(),
getFeedResolutionDphi(), 1);
}
-
+
/**
* Constructs an array from a set of -supported attributes.
* @param set set to process
* @return The constructed array.
- *
+ *
* @see #getAssociatedAttribute()
*/
- public static PrinterResolution[] getAssociatedAttributeArray(Set set)
+ public static PrinterResolution[]
+ getAssociatedAttributeArray(Set<Attribute> set)
{
- PrinterResolutionSupported tmp;
- PrinterResolution[] result = new PrinterResolution[set.size()];
- Iterator it = set.iterator();
+ PrinterResolution[] result = new PrinterResolution[set.size()];
int j = 0;
- while (it.hasNext())
+ for (Attribute tmp : set)
{
- tmp = (PrinterResolutionSupported) it.next();
- result[j] = tmp.getAssociatedAttribute();
+ result[j] = ((PrinterResolutionSupported) tmp).getAssociatedAttribute();
j++;
- }
+ }
return result;
}
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/supported/PrinterUriSupported.java b/libjava/classpath/gnu/javax/print/ipp/attribute/supported/PrinterUriSupported.java
index ce3e2a7d6c4..0eed39c6c2a 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/supported/PrinterUriSupported.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/supported/PrinterUriSupported.java
@@ -1,4 +1,4 @@
-/* PrinterUriSupported.java --
+/* PrinterUriSupported.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -40,6 +40,7 @@ package gnu.javax.print.ipp.attribute.supported;
import java.net.URI;
+import javax.print.attribute.Attribute;
import javax.print.attribute.SupportedValuesAttribute;
import javax.print.attribute.URISyntax;
@@ -47,10 +48,10 @@ import javax.print.attribute.URISyntax;
* PrinterUriSupported attribute as described in RFC 2911 section
* 4.4.1 contains one of the URIs the printer supported for
* job processing (e.g. one with authentication).
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
-public final class PrinterUriSupported extends URISyntax
+public final class PrinterUriSupported extends URISyntax
implements SupportedValuesAttribute
{
@@ -70,7 +71,7 @@ public final class PrinterUriSupported extends URISyntax
*
* @return The class <code>PrinterUriSupported</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return PrinterUriSupported.class;
}
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/supported/SidesSupported.java b/libjava/classpath/gnu/javax/print/ipp/attribute/supported/SidesSupported.java
index 5110e95934b..eff82c143c5 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/supported/SidesSupported.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/supported/SidesSupported.java
@@ -37,6 +37,7 @@ exception statement from your version. */
package gnu.javax.print.ipp.attribute.supported;
+import javax.print.attribute.Attribute;
import javax.print.attribute.EnumSyntax;
import javax.print.attribute.SupportedValuesAttribute;
@@ -44,45 +45,45 @@ import javax.print.attribute.SupportedValuesAttribute;
/**
* <code>SidesSupported</code> provides the
* supported values for the sides attribute.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
public final class SidesSupported extends EnumSyntax
implements SupportedValuesAttribute
{
-
+
/** Specifies that each page should be printed on one sheet. */
public static final SidesSupported ONE_SIDED = new SidesSupported(0);
-
- /**
- * Specifies that two following pages should be printed on the
+
+ /**
+ * Specifies that two following pages should be printed on the
* front and back of one sheet for binding on the long edge.
*/
- public static final SidesSupported TWO_SIDED_LONG_EDGE =
+ public static final SidesSupported TWO_SIDED_LONG_EDGE =
new SidesSupported(1);
-
- /**
- * Specifies that two following pages should be printed on the
+
+ /**
+ * Specifies that two following pages should be printed on the
* front and back of one sheet for binding on the short edge.
*/
- public static final SidesSupported TWO_SIDED_SHORT_EDGE =
+ public static final SidesSupported TWO_SIDED_SHORT_EDGE =
new SidesSupported(2);
-
+
/** An alias constant for "two sided long edge". */
public static final SidesSupported DUPLEX = new SidesSupported(1);
-
+
/** An alias constant for "two sided short edge". */
public static final SidesSupported TUMBLE = new SidesSupported(2);
- private static final String[] stringTable = { "one-sided",
+ private static final String[] stringTable = { "one-sided",
"two-sided-long-edge",
"two-sided-short-edge" };
-
- private static final SidesSupported[]
- enumValueTable = { ONE_SIDED, TWO_SIDED_LONG_EDGE,
+
+ private static final SidesSupported[]
+ enumValueTable = { ONE_SIDED, TWO_SIDED_LONG_EDGE,
TWO_SIDED_SHORT_EDGE };
-
-
+
+
/**
* Creates a <code>SidesSupported</code> object.
*
@@ -98,7 +99,7 @@ public final class SidesSupported extends EnumSyntax
*
* @return The class <code>SidesSupported</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return SidesSupported.class;
}
@@ -112,7 +113,7 @@ public final class SidesSupported extends EnumSyntax
{
return "sides-supported";
}
-
+
/**
* Returns a table with the enumeration values represented as strings
* for this object.
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/supported/UriAuthenticationSupported.java b/libjava/classpath/gnu/javax/print/ipp/attribute/supported/UriAuthenticationSupported.java
index 8deac7a2f63..dc1a29f5cc3 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/supported/UriAuthenticationSupported.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/supported/UriAuthenticationSupported.java
@@ -1,4 +1,4 @@
-/* UriAuthenticationSupported.java --
+/* UriAuthenticationSupported.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -38,58 +38,59 @@ exception statement from your version. */
package gnu.javax.print.ipp.attribute.supported;
+import javax.print.attribute.Attribute;
import javax.print.attribute.EnumSyntax;
import javax.print.attribute.SupportedValuesAttribute;
/**
* UriAuthenticationSupported attribute as described in RFC 2911 section
- * 4.4.2 provides the keywords (implemented as EnumSyntax) which
+ * 4.4.2 provides the keywords (implemented as EnumSyntax) which
* authentication methods are supported by the printer object. This
* includes a value of none.
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
-public final class UriAuthenticationSupported extends EnumSyntax
+public final class UriAuthenticationSupported extends EnumSyntax
implements SupportedValuesAttribute
{
-
+
// a keyword based attribute in IPP - int values just starting at 0
-
+
/** Supports no authentication - assumes anonymous process */
- public static final UriAuthenticationSupported NONE =
+ public static final UriAuthenticationSupported NONE =
new UriAuthenticationSupported(0);
-
- /**
+
+ /**
* The authenticated user assumed is the value of the
* "requesting-user-name" operation attribute supplied
* with the operation.
*/
- public static final UriAuthenticationSupported REQUESTING_USER_NAME =
+ public static final UriAuthenticationSupported REQUESTING_USER_NAME =
new UriAuthenticationSupported(1);
-
+
/** Supports HTTP basic authentication (RFC 2617) */
- public static final UriAuthenticationSupported BASIC =
+ public static final UriAuthenticationSupported BASIC =
new UriAuthenticationSupported(2);
-
+
/** Supports HTTP digest authentication (RFC 2617) */
- public static final UriAuthenticationSupported DIGEST =
+ public static final UriAuthenticationSupported DIGEST =
new UriAuthenticationSupported(3);
-
+
/** Supports authentication through a client provided certificate */
- public static final UriAuthenticationSupported CERTIFICATE =
+ public static final UriAuthenticationSupported CERTIFICATE =
new UriAuthenticationSupported(4);
-
- private static final String[] stringTable = { "none",
- "requesting-user-name",
- "basic", "digest",
+
+ private static final String[] stringTable = { "none",
+ "requesting-user-name",
+ "basic", "digest",
"certificate" };
-
- private static final UriAuthenticationSupported[] enumValueTable =
+
+ private static final UriAuthenticationSupported[] enumValueTable =
{ NONE, REQUESTING_USER_NAME, BASIC, DIGEST, CERTIFICATE };
/**
* Constructs a <code>UriAuthenticationSupported</code> object.
- *
+ *
* @param value the enum value
*/
public UriAuthenticationSupported(int value)
@@ -102,7 +103,7 @@ public final class UriAuthenticationSupported extends EnumSyntax
*
* @return The class <code>UriAuthenticationSupported</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return UriAuthenticationSupported.class;
}
@@ -116,7 +117,7 @@ public final class UriAuthenticationSupported extends EnumSyntax
{
return "uri-authentication-supported";
}
-
+
/**
* Returns a table with the enumeration values represented as strings
* for this object.
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/supported/UriSecuritySupported.java b/libjava/classpath/gnu/javax/print/ipp/attribute/supported/UriSecuritySupported.java
index 1d995184d2d..03396978f65 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/supported/UriSecuritySupported.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/supported/UriSecuritySupported.java
@@ -1,4 +1,4 @@
-/* UriSecuritySupported.java --
+/* UriSecuritySupported.java --
Copyright (C) 2006 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -38,6 +38,7 @@ exception statement from your version. */
package gnu.javax.print.ipp.attribute.supported;
+import javax.print.attribute.Attribute;
import javax.print.attribute.EnumSyntax;
import javax.print.attribute.SupportedValuesAttribute;
@@ -46,35 +47,35 @@ import javax.print.attribute.SupportedValuesAttribute;
* 4.4.3 provides the keywords (implemented as EnumSyntax) for
* the security mechanisms supported by the corresponding uri's
* supported (same place in setOf).
- *
+ *
* @author Wolfgang Baer (WBaer@gmx.de)
*/
-public final class UriSecuritySupported extends EnumSyntax
+public final class UriSecuritySupported extends EnumSyntax
implements SupportedValuesAttribute
{
-
+
// a keyword based attribute in IPP - int values just starting at 0
-
+
/** The URI has no secure communication */
- public static final UriSecuritySupported NONE =
+ public static final UriSecuritySupported NONE =
new UriSecuritySupported(0);
-
+
/** The URI has SSL3 communication */
- public static final UriSecuritySupported SSL3 =
+ public static final UriSecuritySupported SSL3 =
new UriSecuritySupported(1);
-
+
/** The URI has TLS (RFC 2246) communication */
- public static final UriSecuritySupported TLS =
+ public static final UriSecuritySupported TLS =
new UriSecuritySupported(2);
-
+
private static final String[] stringTable = { "none", "ssl3", "tls" };
-
- private static final UriSecuritySupported[] enumValueTable = { NONE,
+
+ private static final UriSecuritySupported[] enumValueTable = { NONE,
SSL3, TLS };
/**
* Constructs a <code>UriSecuritySupported</code> object.
- *
+ *
* @param value the enum value
*/
public UriSecuritySupported(int value)
@@ -87,7 +88,7 @@ public final class UriSecuritySupported extends EnumSyntax
*
* @return The class <code>UriSecuritySupported</code> itself.
*/
- public Class getCategory()
+ public Class<? extends Attribute> getCategory()
{
return UriSecuritySupported.class;
}
@@ -101,7 +102,7 @@ public final class UriSecuritySupported extends EnumSyntax
{
return "uri-security-supported";
}
-
+
/**
* Returns a table with the enumeration values represented as strings
* for this object.
diff --git a/libjava/classpath/gnu/javax/swing/text/html/css/Selector.java b/libjava/classpath/gnu/javax/swing/text/html/css/Selector.java
index 6e182a53623..06d515c620f 100644
--- a/libjava/classpath/gnu/javax/swing/text/html/css/Selector.java
+++ b/libjava/classpath/gnu/javax/swing/text/html/css/Selector.java
@@ -38,6 +38,9 @@ exception statement from your version. */
package gnu.javax.swing.text.html.css;
+import gnu.java.lang.CPStringBuilder;
+
+import java.util.List;
import java.util.Map;
import java.util.StringTokenizer;
@@ -97,7 +100,7 @@ public class Selector
* @return <code>true</code> when this selector matches the element path,
* <code>false</code> otherwise
*/
- public boolean matches(String[] tags, Map[] attributes)
+ public boolean matches(String[] tags, List<Map<String,String>> attributes)
{
// TODO: This implements class, id and descendent matching. These are
// the most commonly used selector matchers in CSS together with HTML.
@@ -118,11 +121,11 @@ public class Selector
boolean tagMatch = false;
for (; tagIndex < numTags && tagMatch == false; tagIndex++)
{
- Object pathClass = attributes[tagIndex].get("class");
+ Object pathClass = attributes.get(tagIndex).get("class");
// Try pseudo class too.
- Object pseudoClass = attributes[tagIndex].get("_pseudo");
- Object dynClass = attributes[tagIndex].get("_dynamic");
- Object pathId = attributes[tagIndex].get("id");
+ Object pseudoClass = attributes.get(tagIndex).get("_pseudo");
+ Object dynClass = attributes.get(tagIndex).get("_dynamic");
+ Object pathId = attributes.get(tagIndex).get("id");
String tag = elements[j];
String clazz = classes[j];
String id = ids[j];
@@ -167,7 +170,7 @@ public class Selector
*/
public String toString()
{
- StringBuilder b = new StringBuilder();
+ CPStringBuilder b = new CPStringBuilder();
for (int i = selector.length - 1; i >= 0; i--)
{
b.append(selector[i]);
diff --git a/libjava/classpath/gnu/xml/stream/FilteredStreamReader.java b/libjava/classpath/gnu/xml/stream/FilteredStreamReader.java
index 1db02f6e30a..90ebb330d0b 100644
--- a/libjava/classpath/gnu/xml/stream/FilteredStreamReader.java
+++ b/libjava/classpath/gnu/xml/stream/FilteredStreamReader.java
@@ -40,10 +40,10 @@ package gnu.xml.stream;
import javax.xml.stream.StreamFilter;
import javax.xml.stream.XMLStreamException;
import javax.xml.stream.XMLStreamReader;
-import javax.xml.stream.util.ReaderDelegate;
+import javax.xml.stream.util.StreamReaderDelegate;
class FilteredStreamReader
- extends ReaderDelegate
+ extends StreamReaderDelegate
{
final XMLStreamReader reader;
diff --git a/libjava/classpath/gnu/xml/stream/NamespaceImpl.java b/libjava/classpath/gnu/xml/stream/NamespaceImpl.java
index eeb57be6cac..1a595ee83d4 100644
--- a/libjava/classpath/gnu/xml/stream/NamespaceImpl.java
+++ b/libjava/classpath/gnu/xml/stream/NamespaceImpl.java
@@ -39,6 +39,7 @@ package gnu.xml.stream;
import java.io.IOException;
import java.io.Writer;
+import javax.xml.namespace.QName;
import javax.xml.stream.Location;
import javax.xml.stream.XMLStreamException;
import javax.xml.stream.events.Namespace;
@@ -55,12 +56,15 @@ public class NamespaceImpl
protected final String prefix;
protected final String uri;
+ protected final boolean specified;
- protected NamespaceImpl(Location location, String prefix, String uri)
+ protected NamespaceImpl(Location location, String prefix, String uri,
+ boolean specified)
{
super(location);
this.prefix = prefix;
this.uri = uri;
+ this.specified = specified;
}
public int getEventType()
@@ -78,6 +82,29 @@ public class NamespaceImpl
return uri;
}
+ public boolean isSpecified()
+ {
+ return specified;
+ }
+
+ public QName getName()
+ {
+ if (isDefaultNamespaceDeclaration())
+ return new QName("", "xmlns", null);
+ else
+ return new QName("", prefix, "xmlns");
+ }
+
+ public String getDTDType()
+ {
+ return "CDATA";
+ }
+
+ public String getValue()
+ {
+ return uri;
+ }
+
public boolean isDefaultNamespaceDeclaration()
{
return (prefix == null || "".equals(prefix));
diff --git a/libjava/classpath/gnu/xml/stream/XIncludeFilter.java b/libjava/classpath/gnu/xml/stream/XIncludeFilter.java
index d5c4af12c5e..aed9d9a0f00 100644
--- a/libjava/classpath/gnu/xml/stream/XIncludeFilter.java
+++ b/libjava/classpath/gnu/xml/stream/XIncludeFilter.java
@@ -54,7 +54,7 @@ import javax.xml.parsers.ParserConfigurationException;
import javax.xml.stream.XMLStreamConstants;
import javax.xml.stream.XMLStreamException;
import javax.xml.stream.XMLStreamReader;
-import javax.xml.stream.util.ReaderDelegate;
+import javax.xml.stream.util.StreamReaderDelegate;
import org.w3c.dom.Attr;
import org.w3c.dom.Document;
@@ -81,7 +81,7 @@ import org.xml.sax.SAXException;
* @author <a href='mailto:dog@gnu.org'>Chris Burdess</a>
*/
class XIncludeFilter
- extends ReaderDelegate
+ extends StreamReaderDelegate
{
static final String XINCLUDE_NS_URI = "http://www.w3.org/2001/XInclude";
diff --git a/libjava/classpath/gnu/xml/stream/XMLEventAllocatorImpl.java b/libjava/classpath/gnu/xml/stream/XMLEventAllocatorImpl.java
index fb1e4c28c58..dd2b18c943f 100644
--- a/libjava/classpath/gnu/xml/stream/XMLEventAllocatorImpl.java
+++ b/libjava/classpath/gnu/xml/stream/XMLEventAllocatorImpl.java
@@ -110,7 +110,8 @@ public class XMLEventAllocatorImpl
for (int i = 0; i < len; i++)
namespaces.add(new NamespaceImpl(location,
reader.getNamespacePrefix(i),
- reader.getNamespaceURI(i)));
+ reader.getNamespaceURI(i),
+ false));
return new EndElementImpl(location,
reader.getName(),
namespaces);
@@ -158,7 +159,8 @@ public class XMLEventAllocatorImpl
for (int i = 0; i < len; i++)
namespaces.add(new NamespaceImpl(location,
reader.getNamespacePrefix(i),
- reader.getNamespaceURI(i)));
+ reader.getNamespaceURI(i),
+ false));
len = reader.getAttributeCount();
List attributes = new LinkedList();
for (int i = 0; i < len; i++)
diff --git a/libjava/classpath/gnu/xml/stream/XMLEventFactoryImpl.java b/libjava/classpath/gnu/xml/stream/XMLEventFactoryImpl.java
index f694753c4b4..5ca1aab7ce8 100644
--- a/libjava/classpath/gnu/xml/stream/XMLEventFactoryImpl.java
+++ b/libjava/classpath/gnu/xml/stream/XMLEventFactoryImpl.java
@@ -98,12 +98,14 @@ public class XMLEventFactoryImpl
public Namespace createNamespace(String namespaceURI)
{
return new NamespaceImpl(location,
- XMLConstants.DEFAULT_NS_PREFIX, namespaceURI);
+ XMLConstants.DEFAULT_NS_PREFIX,
+ namespaceURI,
+ true);
}
public Namespace createNamespace(String prefix, String namespaceUri)
{
- return new NamespaceImpl(location, prefix, namespaceUri);
+ return new NamespaceImpl(location, prefix, namespaceUri, true);
}
public StartElement createStartElement(QName name,
diff --git a/libjava/classpath/gnu/xml/stream/XMLStreamWriterImpl.java b/libjava/classpath/gnu/xml/stream/XMLStreamWriterImpl.java
index 4be9992a73d..1549420c9df 100644
--- a/libjava/classpath/gnu/xml/stream/XMLStreamWriterImpl.java
+++ b/libjava/classpath/gnu/xml/stream/XMLStreamWriterImpl.java
@@ -242,7 +242,7 @@ public class XMLStreamWriterImpl
{
if (namespaceURI != null && !isURI(namespaceURI))
throw new IllegalArgumentException("illegal URI: " + namespaceURI);
- if (prefix != null && !isNCName(prefix))
+ if (prefix != null && !isPrefix(prefix))
throw new IllegalArgumentException("illegal NCName: " + prefix);
if (!isNCName(localName))
throw new IllegalArgumentException("illegal NCName: " + localName);
@@ -394,7 +394,7 @@ public class XMLStreamWriterImpl
{
if (namespaceURI != null && !isURI(namespaceURI))
throw new IllegalArgumentException("illegal URI: " + namespaceURI);
- if (prefix != null && !isNCName(prefix))
+ if (prefix != null && !isPrefix(prefix))
throw new IllegalArgumentException("illegal NCName: " + prefix);
if (!isNCName(localName))
throw new IllegalArgumentException("illegal NCName: " + localName);
@@ -490,13 +490,18 @@ public class XMLStreamWriterImpl
public void writeNamespace(String prefix, String namespaceURI)
throws XMLStreamException
{
+ if (prefix == null || "".equals(prefix) || "xmlns".equals(prefix))
+ {
+ writeDefaultNamespace(namespaceURI);
+ return;
+ }
if (!inStartElement)
throw new IllegalStateException();
try
{
if (!isURI(namespaceURI))
throw new IllegalArgumentException("illegal URI: " + namespaceURI);
- if (!isNCName(prefix))
+ if (!isPrefix(prefix))
throw new IllegalArgumentException("illegal NCName: " + prefix);
}
catch (IOException e)
@@ -790,7 +795,7 @@ public class XMLStreamWriterImpl
{
if (!isURI(uri))
throw new IllegalArgumentException("illegal URI: " + uri);
- if (!isNCName(prefix))
+ if (!isPrefix(prefix))
throw new IllegalArgumentException("illegal NCName: " + prefix);
}
catch (IOException e)
@@ -938,6 +943,15 @@ public class XMLStreamWriterImpl
return true;
}
+ private boolean isPrefix(String text)
+ throws IOException
+ {
+ if (XMLConstants.DEFAULT_NS_PREFIX.equals(text)) {
+ return true;
+ }
+ return isNCName(text);
+ }
+
private boolean isNCName(String text)
throws IOException
{
@@ -1001,3 +1015,4 @@ public class XMLStreamWriterImpl
}
+
diff --git a/libjava/classpath/include/Makefile.in b/libjava/classpath/include/Makefile.in
index dbba3f32ef2..63b020e3dd0 100644
--- a/libjava/classpath/include/Makefile.in
+++ b/libjava/classpath/include/Makefile.in
@@ -40,6 +40,9 @@ DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/../../config/lead-dot.m4 \
+ $(top_srcdir)/../../config/lib-ld.m4 \
+ $(top_srcdir)/../../config/lib-link.m4 \
+ $(top_srcdir)/../../config/lib-prefix.m4 \
$(top_srcdir)/../../config/multi.m4 \
$(top_srcdir)/../../config/no-executables.m4 \
$(top_srcdir)/../../config/override.m4 \
@@ -58,9 +61,7 @@ am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_func_which_gethostbyname_r.m4 \
$(top_srcdir)/m4/gcc_attribute.m4 $(top_srcdir)/m4/iconv.m4 \
- $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
- $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/../../mkinstalldirs
diff --git a/libjava/classpath/install-sh b/libjava/classpath/install-sh
index a5897de6ea7..3f83ce9b555 100755
--- a/libjava/classpath/install-sh
+++ b/libjava/classpath/install-sh
@@ -1,7 +1,7 @@
#!/bin/sh
# install - install a program, script, or datafile
-scriptversion=2006-12-25.00
+scriptversion=2010-02-06.18; # UTC
# This originates from X11R5 (mit/util/scripts/install.sh), which was
# later released in X11R6 (xc/config/util/install.sh) with the
@@ -200,7 +200,11 @@ if test $# -eq 0; then
fi
if test -z "$dir_arg"; then
- trap '(exit $?); exit' 1 2 13 15
+ do_exit='(exit $ret); exit $ret'
+ trap "ret=129; $do_exit" 1
+ trap "ret=130; $do_exit" 2
+ trap "ret=141; $do_exit" 13
+ trap "ret=143; $do_exit" 15
# Set umask so as not to create temps with too-generous modes.
# However, 'strip' requires both read and write access to temps.
@@ -515,5 +519,6 @@ done
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-end: "$"
+# time-stamp-time-zone: "UTC"
+# time-stamp-end: "; # UTC"
# End:
diff --git a/libjava/classpath/java/util/Scanner.java b/libjava/classpath/java/util/Scanner.java
index cc39f191de9..59c4cc0ff11 100644
--- a/libjava/classpath/java/util/Scanner.java
+++ b/libjava/classpath/java/util/Scanner.java
@@ -64,30 +64,30 @@ import java.util.regex.Pattern;
/**
* @author E0327023 Hernadi Laszlo
- */
-public class Scanner
+*/
+public class Scanner
implements Iterator <String>
{
- private static final String NOT_LONG = "\" is not a long"; //$NON-NLS-1$
+ private static final String NOT_LONG = "\" is not a long"; //$NON-NLS-1$
- private static final String ERR_PREFIX = "\""; //$NON-NLS-1$
+ private static final String ERR_PREFIX = "\""; //$NON-NLS-1$
- private static final String NOT_INT = "\" is not an integer"; //$NON-NLS-1$
+ private static final String NOT_INT = "\" is not an integer"; //$NON-NLS-1$
- private static final String NOT_DOUBLE = "\" is not a double"; //$NON-NLS-1$
+ private static final String NOT_DOUBLE = "\" is not a double"; //$NON-NLS-1$
- private static final String NOT_BYTE = "\" is not a byte"; //$NON-NLS-1$
+ private static final String NOT_BYTE = "\" is not a byte"; //$NON-NLS-1$
- private static final String NOT_BOOLEAN = "\" is not a boolean"; //$NON-NLS-1$
+ private static final String NOT_BOOLEAN = "\" is not a boolean"; //$NON-NLS-1$
- private static final String IS_NOT = "\" is not "; //$NON-NLS-1$
+ private static final String IS_NOT = "\" is not "; //$NON-NLS-1$
- private static final String DEFAULT_PATTERN_S = "\\p{javaWhitespace}+"; //$NON-NLS-1$
+ private static final String DEFAULT_PATTERN_S = "\\p{javaWhitespace}+"; //$NON-NLS-1$
private static final Pattern DEFAULT_PATTERN =
Pattern.compile (DEFAULT_PATTERN_S);
- private static final String BIG_INTEGER = "BigInteger"; //$NON-NLS-1$
+ private static final String BIG_INTEGER = "BigInteger"; //$NON-NLS-1$
private final static String NEW_LINE =
System.getProperty ("line.separator");
@@ -131,7 +131,7 @@ public class Scanner
/**
* The current locale.
- *
+ *
* @see #useLocale(Locale)
* @see #locale()
*/
@@ -172,7 +172,7 @@ public class Scanner
* <source> null </source>.
*/
private Readable readableSource = null;
-
+
/**
* A ReadableByteChannel source if a Constructor with a ReadableByteChannel source is called,
* otherwise it stays <source> null </source>.
@@ -183,7 +183,7 @@ public class Scanner
* Indicates if the close() method was called.
*/
private boolean isClosed = false;
-
+
/**
* For performance reasons the last Found is saved, if a hasNextXXX method was called.
*/
@@ -247,21 +247,21 @@ public class Scanner
/**
* Constructs a new Scanner with the given File as source.
* {@link #Scanner(InputStream, String)} is called with <code> null </code> as charsetName.
- *
+ *
* @param source
* The File to use as source.
* @throws FileNotFoundException
* If the file is not found an Exception is thrown.
*/
- public Scanner (final File source) throws FileNotFoundException // TESTED
+ public Scanner (final File source) throws FileNotFoundException // TESTED
{
this (source, null);
}
-
+
/**
* Constructs a new Scanner with the given File as source. <br>
* {@link #Scanner(InputStream, String)} is called with the given charsetName.
- *
+ *
* @param source
* The File to use as source.
* @param charsetName
@@ -271,7 +271,7 @@ public class Scanner
* If the file is not found an Exception is thrown.
*/
public Scanner (final File source,
- final String charsetName) throws FileNotFoundException
+ final String charsetName) throws FileNotFoundException
{
this (new FileInputStream (source), charsetName);
}
@@ -279,11 +279,11 @@ public class Scanner
/**
* Constructs a new Scanner with the given inputStream. <br>
* {@link #Scanner(InputStream, String)} is called with <code> null </code> as charsetName.
- *
+ *
* @param source
* The InputStream to use as source.
*/
- public Scanner (final InputStream source) // TESTED
+ public Scanner (final InputStream source) // TESTED
{
this (source, null);
}
@@ -291,7 +291,7 @@ public class Scanner
/**
* Constructs a new Scanner with the InputSream and a charsetName. Afterwards the Buffer is
* filled.
- *
+ *
* @param source
* The InputStream to use as source.
* @param charsetName
@@ -303,10 +303,10 @@ public class Scanner
this.charsetName = charsetName;
myFillBuffer ();
}
-
+
/**
* Constructs a new Scanner with a Readable input as source.
- *
+ *
* @param source
* The Readable to use as source.
*/
@@ -320,7 +320,7 @@ public class Scanner
* Constructs a new Scanner with a ReadableByteChannel as
* source. Therfore the {@link #Scanner(ReadableByteChannel,
* String)} is called with <code> null </code> as charsetName.
- *
+ *
* @param source
* The ReadableByteChannel to use as source.
*/
@@ -333,7 +333,7 @@ public class Scanner
* Constructs a new Scanner with a ReadableByteChannel as source and
* a given charsetName, which is to be applied on it. <br> It also
* initiates the main Buffer.
- *
+ *
* @param source
* The ReadableByteChannel to use as source.
* @param charsetName
@@ -348,11 +348,11 @@ public class Scanner
/**
* Constructs a new Scanner using the given String as input only.
- *
+ *
* @param source
* The whole String to be used as source.
*/
- public Scanner (final String source) // TESTED
+ public Scanner (final String source) // TESTED
{
this.actBuffer = new String (source);
this.myMatcher.reset (this.actBuffer);
@@ -364,14 +364,14 @@ public class Scanner
* the Scanner is closed, all searches will lead to a {@link
* IllegalStateException}.
*/
- public void close ()
+ public void close ()
{
try
{
if (this.bIS != null)
- this.bIS.close ();
+ this.bIS.close ();
if (this.rbcSource != null)
- this.rbcSource.close ();
+ this.rbcSource.close ();
this.isClosed = true;
}
catch (IOException ioe)
@@ -382,17 +382,17 @@ public class Scanner
/**
* Returns the current delimiter.
- *
+ *
* @return the current delimiter.
*/
- public Pattern delimiter () // TESTED
+ public Pattern delimiter () // TESTED
{
return this.p;
}
/**
* Tries to find the pattern in the current line.
- *
+ *
* @param pattern The pattern which should be searched in the
* current line of the input.
* @throws NoSuchElementException
@@ -400,31 +400,31 @@ public class Scanner
* @return If the search was successful, the result or otherwise a
* {@link NoSuchElementException} is thrown.
*/
- public String findInLine (final Pattern pattern) throws NoSuchElementException // TESTED
+ public String findInLine (final Pattern pattern) throws NoSuchElementException // TESTED
{
String tmpStr = myNextLine (false);
return myFindPInStr (pattern, tmpStr, 0);
}
-
+
/**
* Compiles the given pattern into a {@link Pattern} and calls
* {@link #findInLine(Pattern)} with the compiled pattern and
* returns whatever it returns.
- *
+ *
* @param pattern
* The pattern which should be matched in the input.
* @throws NoSuchElementException
* If the pattern was not found.
* @return The match in the current line.
*/
- public String findInLine (final String pattern) // TESTED
+ public String findInLine (final String pattern) // TESTED
{
return findInLine (Pattern.compile (pattern));
}
/**
* Trys to match the pattern within the given horizon.
- *
+ *
* @param pattern
* Pattern to search.
* @param horizon
@@ -439,12 +439,12 @@ public class Scanner
{
if (horizon < 0)
{
- throw new IllegalArgumentException (horizon + " is negative");
+ throw new IllegalArgumentException (horizon + " is negative");
}
if (this.isClosed)
{
- throw new IllegalStateException ("Scanner is closed");
+ throw new IllegalStateException ("Scanner is closed");
}
// doSkipp is set true to get the matching patern together with the found String
@@ -453,7 +453,7 @@ public class Scanner
if (rc != null)
{
- this.actPos += rc.length ();
+ this.actPos += rc.length ();
}
return rc;
@@ -462,7 +462,7 @@ public class Scanner
/**
* Compile the pattern and call {@link #findWithinHorizon(Pattern,
* int)}.
- *
+ *
* @param pattern
* Pattern to search.
* @param horizon
@@ -484,16 +484,16 @@ public class Scanner
* and the length must be greater then 0. If a {@link
* NoSuchElementException} is thrown by the search method, it is
* catched and false is returned.
- *
+ *
* @return <code> true </code> if there is any result using the current delimiter. This wouldn't
* lead to a {@link NoSuchElementException}.
* @throws IllegalStateException
* if the Scanner is closed.
*/
- public boolean hasNext () throws IllegalStateException // TESTED
+ public boolean hasNext () throws IllegalStateException // TESTED
{
String tmpStr = null;
-
+
try
{
tmpStr = myCoreNext (false, this.p);
@@ -504,7 +504,7 @@ public class Scanner
if (tmpStr == null || tmpStr.length () <= 0)
{
- return false;
+ return false;
}
return true;
}
@@ -512,14 +512,14 @@ public class Scanner
/**
* Searches the pattern in the next subString before the next
* current delimiter.
- *
+ *
* @param pattern
* The pattern to search for.
* @return <code> true </code> if the pattern is found before the current delimiter.
* @throws IllegalStateException
* if the Scanner is closed.
*/
- public boolean hasNext (final Pattern pattern) throws IllegalStateException // TESTED
+ public boolean hasNext (final Pattern pattern) throws IllegalStateException // TESTED
{
String tmpStr;
@@ -527,7 +527,7 @@ public class Scanner
if (tmpStr == null || tmpStr.length () <= 0)
{
- return false;
+ return false;
}
return true;
}
@@ -535,7 +535,7 @@ public class Scanner
/**
* Compiles the pattern to a {@link Pattern} and calls {@link
* #hasNext(Pattern)}.
- *
+ *
* @see #hasNext(Pattern)
* @param pattern
* The pattern as string to search for.
@@ -543,7 +543,7 @@ public class Scanner
* @throws IllegalStateException
* if the Scanner is closed.
*/
- public boolean hasNext (final String pattern) throws IllegalStateException // TESTED
+ public boolean hasNext (final String pattern) throws IllegalStateException // TESTED
{
return hasNext (Pattern.compile (pattern));
}
@@ -552,13 +552,13 @@ public class Scanner
* Checks if the string to the next delimiter can be interpreted as
* a BigDecimal number. <br> BigDecimal numbers are always tryed
* with radix 10.
- *
+ *
* @see #nextBigDecimal()
* @return <code> true </code> if the next string is a BigDecimal number.
* @throws IllegalStateException
* if the Scanner is closed.
*/
- public boolean hasNextBigDecimal () throws IllegalStateException // TESTED
+ public boolean hasNextBigDecimal () throws IllegalStateException // TESTED
{
try
{
@@ -575,13 +575,13 @@ public class Scanner
* Checks if the string to the next delimiter can be interpreted as
* a BigInteger number. <br> Call {@link #hasNextBigInteger(int)}
* with the current radix.
- *
+ *
* @see #nextBigInteger()
* @return <code> true </code> if the next string is a BigInteger number.
* @throws IllegalStateException
* if the Scanner is closed.
*/
- public boolean hasNextBigInteger () throws IllegalStateException // TESTED
+ public boolean hasNextBigInteger () throws IllegalStateException // TESTED
{
return hasNextBigInteger (this.currentRadix);
}
@@ -589,7 +589,7 @@ public class Scanner
/**
* Checks if the string to the next delimiter can be interpreted as
* a BigInteger number. <br>
- *
+ *
* @param radix
* The radix to use for this check. The global radix of the Scanner will not be
* changed.
@@ -615,13 +615,13 @@ public class Scanner
* Checks if the next string could be a boolean. The method handles
* the input not case sensitiv, so "true" and "TRUE" and even "tRuE"
* are <code> true </code>.
- *
+ *
* @see #nextBoolean()
* @return Return <code> true </code> if the next string is a boolean.
* @throws IllegalStateException
* if the Scanner is closed.
*/
- public boolean hasNextBoolean () throws IllegalStateException // TESTED
+ public boolean hasNextBoolean () throws IllegalStateException // TESTED
{
try
{
@@ -638,13 +638,13 @@ public class Scanner
* Checks if the string to the next delimiter can be interpreted as
* a byte number. <br> Calls {@link #hasNextByte(int)} with the
* current radix.
- *
+ *
* @see #nextByte()
* @return <code> true </code> if the next string is a byte number.
* @throws IllegalStateException
* if the Scanner is closed.
*/
- public boolean hasNextByte () throws IllegalStateException // TESTED
+ public boolean hasNextByte () throws IllegalStateException // TESTED
{
return hasNextByte (this.currentRadix);
}
@@ -654,7 +654,7 @@ public class Scanner
* a byte number with the given radix. <br> To check, the private
* method {@link #myNextByte(int, boolean)} is called, and if no
* error occurs the next string could be a byte.
- *
+ *
* @see #nextByte(int)
* @param radix The radix to use for this check. The global radix of
* the Scanner will not be changed.
@@ -680,13 +680,13 @@ public class Scanner
* a double number. <br> To check, the private method {@link
* #myNextDouble(boolean)} is called, and if no error occurs the
* next string could be a double.
- *
+ *
* @see #nextDouble()
* @return <code> true </code> if the next string is a double number.
* @throws IllegalStateException
* if the Scanner is closed.
*/
- public boolean hasNextDouble () throws IllegalStateException // TESTED
+ public boolean hasNextDouble () throws IllegalStateException // TESTED
{
try
{
@@ -705,13 +705,13 @@ public class Scanner
* checked.<br> To check, the private method {@link
* #myNextDouble(boolean)} is called, and if no error occurs the
* next string could be a double.
- *
+ *
* @see #nextFloat()
* @return <code> true </code> if the next string is a double number.
* @throws IllegalStateException
* if the Scanner is closed.
*/
- public boolean hasNextFloat () throws IllegalStateException // TESTED
+ public boolean hasNextFloat () throws IllegalStateException // TESTED
{
try
{
@@ -730,13 +730,13 @@ public class Scanner
* an int number. <br> To check, the private method {@link
* #myNextInt(int, boolean)} is called, and if no error occurs the
* next string could be an int.
- *
+ *
* @see #nextInt(int)
* @return <code> true </code> if the next string is an int number.
* @throws IllegalStateException
* if the Scanner is closed.
*/
- public boolean hasNextInt () throws IllegalStateException // TESTED
+ public boolean hasNextInt () throws IllegalStateException // TESTED
{
return hasNextInt (this.currentRadix);
}
@@ -746,7 +746,7 @@ public class Scanner
* an int number with the given radix. <br> To check, the private
* method {@link #myNextInt(int, boolean)} is called, and if no
* error occurs the next string could be an int.
- *
+ *
* @see #nextInt(int)
* @param radix
* The radix to use for this check. The global radix of the Scanner will not be
@@ -771,12 +771,12 @@ public class Scanner
/**
* Checks if there is a current line, which ends at the next line
* break or the end of the input.
- *
+ *
* @return <code> true </code> if there is a current line.
* @throws IllegalStateException
* if the Scanner is closed.
*/
- public boolean hasNextLine () throws IllegalStateException // TESTED
+ public boolean hasNextLine () throws IllegalStateException // TESTED
{
return (myNextLine (false) != null);
}
@@ -786,13 +786,13 @@ public class Scanner
* a long number. <br> To check, the private method {@link
* #myNextLong(int, boolean)} is called, and if no error occurs the
* next string could be a long.
- *
+ *
* @see #nextLong()
* @return <code> true </code> if the next string is a long number.
* @throws IllegalStateException
* if the Scanner is closed.
*/
- public boolean hasNextLong () throws IllegalStateException // TESTED
+ public boolean hasNextLong () throws IllegalStateException // TESTED
{
return hasNextLong (this.currentRadix);
}
@@ -802,7 +802,7 @@ public class Scanner
* a long number with the given radix. <br> To check, the private
* method {@link #myNextLong(int, boolean)} is called, and if no
* error occurs the next string could be a long.
- *
+ *
* @see #nextLong(int)
* @param radix
* The radix to use for this check. The global radix of the Scanner will not be
@@ -829,13 +829,13 @@ public class Scanner
* a short number with the given radix. <br> To check, the private
* method {@link #myNextShort(int, boolean)} is called, and if no
* error occurs the next string could be a short.
- *
+ *
* @see #nextShort(int)
* @return <code> true </code> if the next string is a short number.
* @throws IllegalStateException
* if the Scanner is closed.
*/
- public boolean hasNextShort () throws IllegalStateException // TESTED
+ public boolean hasNextShort () throws IllegalStateException // TESTED
{
return hasNextShort (this.currentRadix);
}
@@ -845,7 +845,7 @@ public class Scanner
* a short number. <br> To check, the private method {@link
* #myNextShort(int, boolean)} is called, and if no error occurs the
* next string could be a short.
- *
+ *
* @see #nextShort(int)
* @param radix
* The radix to use for this check. The global radix of the Scanner will not be
@@ -869,7 +869,7 @@ public class Scanner
/**
* Returns the last {@link IOException} occured.
- *
+ *
* @return Returns the last {@link IOException}.
*/
public IOException ioException ()
@@ -881,11 +881,11 @@ public class Scanner
* Returns the current value of {@link #useLocale}. This is used to
* tell the Scanner if it should use the Locale format or just
* handle numbers of the default format.
- *
+ *
* @see #setUseLocale(boolean)
* @return the useLoclae.
*/
- public boolean isUseLocale () // TESTED
+ public boolean isUseLocale () // TESTED
{
return this.useLocale;
}
@@ -893,11 +893,11 @@ public class Scanner
/**
* Returns the current Locale. It is initialized with {@link
* Locale#getDefault()}.
- *
+ *
* @see #useLocale(Locale)
* @return Returns the current Locale.
*/
- public Locale locale () // TESTED
+ public Locale locale () // TESTED
{
return this.actLocale;
}
@@ -905,10 +905,10 @@ public class Scanner
/**
* Returns the last MatchResult found. This is updated after every
* successfully search.
- *
+ *
* @return Returns the last {@link MatchResult} found.
*/
- public MatchResult match () // TESTED
+ public MatchResult match () // TESTED
{
return this.actResult;
}
@@ -918,7 +918,7 @@ public class Scanner
* buffer. If a string is found the current position is set after
* the delimiter, otherwise a {@link NoSuchElementException} is
* thrown. A successful match sets the matchResult.
- *
+ *
* @see #match()
* @return Returns the next string of the buffer.
* @throws NoSuchElementException
@@ -926,7 +926,7 @@ public class Scanner
* @throws IllegalStateException
* If the Scanner is closed.
*/
- public String next () throws NoSuchElementException, IllegalStateException // TESTED
+ public String next () throws NoSuchElementException, IllegalStateException // TESTED
{
return myCoreNext (true, this.p);
}
@@ -934,7 +934,7 @@ public class Scanner
/**
* Tries to match the buffer with the given pattern. The current
* delimiter will not be changed.
- *
+ *
* @param pattern
* The pattern to match.
* @return Returns the next string matching the pattern.
@@ -943,7 +943,7 @@ public class Scanner
* @throws IllegalStateException
* If the Scanner is closed.
*/
- public String next (final Pattern pattern) throws NoSuchElementException, IllegalStateException // TESTED
+ public String next (final Pattern pattern) throws NoSuchElementException, IllegalStateException // TESTED
{
return myNext (pattern, true);
}
@@ -952,7 +952,7 @@ public class Scanner
* Tries to match the buffer with the given pattern. The current
* delimiter will not be changed. Calls the {@link #next(Pattern)}
* with the compiled pattern.
- *
+ *
* @see #next(Pattern)
* @param pattern
* The pattern to match.
@@ -962,21 +962,21 @@ public class Scanner
* @throws IllegalStateException
* If the Scanner is closed.
*/
- public String next (final String pattern) throws NoSuchElementException, IllegalStateException // TESTED
+ public String next (final String pattern) throws NoSuchElementException, IllegalStateException // TESTED
{
return next (Pattern.compile (pattern));
}
/**
* Tries to interpret the next string as a BigDecimal value.
- *
+ *
* @return Returns the BigDecimal value of the next string.
* @throws NoSuchElementException
* If no string is found or the string is not a BigDecimal.
* @throws IllegalStateException
* If the Scanner is closed.
*/
- public BigDecimal nextBigDecimal () throws NoSuchElementException, IllegalStateException // TESTED
+ public BigDecimal nextBigDecimal () throws NoSuchElementException, IllegalStateException // TESTED
{
return myBigDecimal (true);
}
@@ -985,7 +985,7 @@ public class Scanner
* Tries to interpret the next string as a BigInteger value. Call
* {@link #nextBigInteger(int)} with the current radix as parameter,
* and return the value.
- *
+ *
* @see #nextBigInteger(int)
* @return Returns the BigInteger value of the next string.
* @throws NoSuchElementException
@@ -993,7 +993,7 @@ public class Scanner
* @throws IllegalStateException
* If the Scanner is closed.
*/
- public BigInteger nextBigInteger () throws NoSuchElementException, IllegalStateException // TESTED
+ public BigInteger nextBigInteger () throws NoSuchElementException, IllegalStateException // TESTED
{
return nextBigInteger (this.currentRadix);
}
@@ -1001,7 +1001,7 @@ public class Scanner
/**
* Tries to interpret the next string as a BigInteger value with the
* given radix.
- *
+ *
* @param radix
* The radix to be used for this BigInteger. The current radix of the Scanner is not
* changed.
@@ -1020,14 +1020,14 @@ public class Scanner
/**
* Tries to interpret the next string to the delimiter as a boolean
* value, ignoring case.
- *
+ *
* @return Returns the boolean value of the next matching string or throws an exception.
* @throws NoSuchElementException
* If no string is found or the string is not a boolean.
* @throws IllegalStateException
* If the Scanner is closed.
*/
- public boolean nextBoolean () throws NoSuchElementException, IllegalStateException // TESTED
+ public boolean nextBoolean () throws NoSuchElementException, IllegalStateException // TESTED
{
return myNextBoolean (true);
}
@@ -1036,7 +1036,7 @@ public class Scanner
* Tries to interpret the next string as a byte value. Call {@link
* #nextByte(int)} with the current radix as parameter, and return
* the value.
- *
+ *
* @see #nextByte(int)
* @return Returns the byte value of the next string.
* @throws NoSuchElementException
@@ -1044,7 +1044,7 @@ public class Scanner
* @throws IllegalStateException
* If the Scanner is closed.
*/
- public byte nextByte () throws NoSuchElementException, IllegalStateException // TESTED
+ public byte nextByte () throws NoSuchElementException, IllegalStateException // TESTED
{
return nextByte (this.currentRadix);
}
@@ -1052,7 +1052,7 @@ public class Scanner
/**
* Tries to interpret the next string as a byte value with the given
* radix.
- *
+ *
* @param radix
* The radix to be used for this byte. The current radix of the Scanner is not
* changed.
@@ -1070,14 +1070,14 @@ public class Scanner
/**
* Tries to interpret the next string as a double value.
- *
+ *
* @return Returns the int value of the next string.
* @throws NoSuchElementException
* If no string is found or the string is not a double.
* @throws IllegalStateException
* If the Scanner is closed.
*/
- public double nextDouble () throws NoSuchElementException, IllegalStateException // TESTED
+ public double nextDouble () throws NoSuchElementException, IllegalStateException // TESTED
{
return myNextDouble (true);
}
@@ -1085,14 +1085,14 @@ public class Scanner
/**
* Tries to interpret the next string as a double value, and then
* casts down to float.
- *
+ *
* @return Returns the int value of the next string.
* @throws NoSuchElementException
* If no string is found or the string is not a double.
* @throws IllegalStateException
* If the Scanner is closed.
*/
- public float nextFloat () throws NoSuchElementException, IllegalStateException // TESTED
+ public float nextFloat () throws NoSuchElementException, IllegalStateException // TESTED
{
return (float) myNextDouble (true);
// return myNextFloat(true);
@@ -1102,7 +1102,7 @@ public class Scanner
* Tries to interpret the next string as an int value. Calls {@link
* #nextInt(int)} with the current radix as parameter, and return
* the value.
- *
+ *
* @see #nextInt(int)
* @return Returns the int value of the next string.
* @throws NoSuchElementException
@@ -1110,7 +1110,7 @@ public class Scanner
* @throws IllegalStateException
* If the Scanner is closed.
*/
- public int nextInt () throws NoSuchElementException, IllegalStateException // TESTED
+ public int nextInt () throws NoSuchElementException, IllegalStateException // TESTED
{
return nextInt (this.currentRadix);
}
@@ -1118,7 +1118,7 @@ public class Scanner
/**
* Tries to interpret the next string as an int value with the given
* radix.
- *
+ *
* @param radix
* The radix to be used for this int. The current radix of the Scanner is not changed
* @return Returns the int value of the next string.
@@ -1136,14 +1136,14 @@ public class Scanner
/**
* Tries to match the system line seperator, and returns the current
* line.
- *
+ *
* @return Returns the current line.
* @throws NoSuchElementException
* If the current delimiter is not found.
* @throws IllegalStateException
* If the Scanner is closed.
*/
- public String nextLine () throws NoSuchElementException, IllegalStateException // TESTED
+ public String nextLine () throws NoSuchElementException, IllegalStateException // TESTED
{
return myNextLine (true);
}
@@ -1152,7 +1152,7 @@ public class Scanner
* Tries to interpret the next string as a long value. Calls {@link
* #nextLong(int)} with the current radix as parameter, and return
* the value.
- *
+ *
* @see #nextLong(int)
* @return Returns the long value of the next string.
* @throws NoSuchElementException
@@ -1160,7 +1160,7 @@ public class Scanner
* @throws IllegalStateException
* If the Scanner is closed.
*/
- public long nextLong () throws NoSuchElementException, IllegalStateException // TESTED
+ public long nextLong () throws NoSuchElementException, IllegalStateException // TESTED
{
return nextLong (this.currentRadix);
}
@@ -1168,7 +1168,7 @@ public class Scanner
/**
* Tries to interpret the next string as a long value with the given
* radix.
- *
+ *
* @param radix
* The radix to be used for this long. The current radix of the Scanner is not
* changed
@@ -1188,13 +1188,13 @@ public class Scanner
* Tries to interpret the next string as a short value. Calls {@link
* #nextShort(int)} with the current radix as parameter, and return
* the value.
- *
+ *
* @see #nextShort(int)
* @return Returns the short value of the next string.
* @throws NoSuchElementException
* If no string is found or the string is not a short.
*/
- public short nextShort () throws NoSuchElementException // TESTED
+ public short nextShort () throws NoSuchElementException // TESTED
{
return nextShort (this.currentRadix);
}
@@ -1202,7 +1202,7 @@ public class Scanner
/**
* Tries to interpret the next string as a short value with the
* given radix.
- *
+ *
* @param radix
* The radix to be used for this short. The current radix of the Scanner is not
* changed.
@@ -1234,14 +1234,14 @@ public class Scanner
/**
* @param useLocale the useLocale to set.
*/
- public void setUseLocale (final boolean useLocale) // TESTED
+ public void setUseLocale (final boolean useLocale) // TESTED
{
this.useLocale = useLocale;
}
/**
* Skips the given pattern. Sets skipped <code>true</code>.
- *
+ *
* @param pattern
* Pattern which should be skipped.
* @return <code>this</code> with the skipped buffer.
@@ -1269,7 +1269,7 @@ public class Scanner
if (!found)
{
- throw new NoSuchElementException ();
+ throw new NoSuchElementException ();
}
return this;
}
@@ -1277,7 +1277,7 @@ public class Scanner
/**
* Skips a given pattern. Calls {@link #skip(Pattern)} with the
* compiled pattern.
- *
+ *
* @see #skip(Pattern)
* @param pattern
* Pattern which should be skipped.
@@ -1291,7 +1291,7 @@ public class Scanner
/**
* Returns the string representation of this Scanner.
*/
- @Override
+ @Override
public String toString ()
{
String tmpStr2;
@@ -1335,17 +1335,17 @@ public class Scanner
/**
* Sets the current pattern to the given parameter, and updates the
* {@link Matcher} with the new pattern.
- *
+ *
* @param pattern
* The new pattern to use.
* @return Returns the Scanner (<code>this</code>) with the new pattern.
*/
- public Scanner useDelimiter (final Pattern pattern) // TESTED
+ public Scanner useDelimiter (final Pattern pattern) // TESTED
{
if (pattern != null)
{
- this.p = pattern;
- this.myMatcher = this.p.matcher (this.actBuffer);
+ this.p = pattern;
+ this.myMatcher = this.p.matcher (this.actBuffer);
}
return this;
}
@@ -1353,13 +1353,13 @@ public class Scanner
/**
* Sets the current pattern to the given parameter. Compiles the
* pattern and calls {@link #useDelimiter(Pattern)}
- *
+ *
* @see #useDelimiter(Pattern)
* @param pattern
* The new pattern to use.
* @return Returns the Scanner (<code>this</code>) with the new pattern.
*/
- public Scanner useDelimiter (final String pattern) // TESTED
+ public Scanner useDelimiter (final String pattern) // TESTED
{
return useDelimiter (Pattern.compile (pattern));
}
@@ -1367,19 +1367,19 @@ public class Scanner
/**
* Sets the current Locale to the given parameter. Formats and
* Symbols are also set using the new Locale.
- *
+ *
* @param locale The new Locale to use. If it is <code>null</code>
* nothing happens.
* @return Returns the Scanner (<code>this</code>) with the new Locale.
*/
- public Scanner useLocale (final Locale locale) // TESTED
+ public Scanner useLocale (final Locale locale) // TESTED
{
if (locale != null)
{
- this.actLocale = locale;
- this.actFormat = NumberFormat.getInstance (this.actLocale);
- this.dfs = new DecimalFormatSymbols (this.actLocale);
- this.df = (DecimalFormat) this.actFormat;
+ this.actLocale = locale;
+ this.actFormat = NumberFormat.getInstance (this.actLocale);
+ this.dfs = new DecimalFormatSymbols (this.actLocale);
+ this.df = (DecimalFormat) this.actFormat;
}
return this;
}
@@ -1388,7 +1388,7 @@ public class Scanner
* Sets the current radix to the current value if the given radix is
* >= 2 and <= 36 otherwise an {@link IllegalArgumentException} is
* thrown.
- *
+ *
* @param radix
* the new radix to use as default.
* @return <code> this </code> with the new radix value.
@@ -1399,7 +1399,7 @@ public class Scanner
{
if (radix < 2 || radix > 36)
{
- throw new IllegalArgumentException ();
+ throw new IllegalArgumentException ();
}
this.currentRadix = radix;
return this;
@@ -1410,7 +1410,7 @@ public class Scanner
* String. If so the String is converted using the {@link
* NumberFormat#parse(String)} into a Number and then back to a
* default stringrepresentation of that Number.
- *
+ *
* @see #setUseLocale(boolean)
* @param str
* String to convert into another string.
@@ -1422,14 +1422,14 @@ public class Scanner
* if {@link NumberFormat#parse(String)} fails to parse.
*/
private String myApplyLocale (final String str,
- final int radix) throws ParseException
+ final int radix) throws ParseException
{
String rc;
if (this.useLocale && radix == 10)
{
- rc = this.actFormat.parse (str).toString ();
- return rc;
+ rc = this.actFormat.parse (str).toString ();
+ return rc;
}
return str;
@@ -1444,7 +1444,7 @@ public class Scanner
* integer part which is converted to a long, and the fraction part
* is appended afterwards. Between the integer and the fraction part
* comes a ".". Finally the resulting string is returned.
- *
+ *
* @see #setUseLocale(boolean)
* @param str String representation of a BigDecimal number.
* @return The default String representation (without Locale) of the
@@ -1456,7 +1456,7 @@ public class Scanner
{
if (!this.useLocale || this.currentRadix != 10)
{
- return str;
+ return str;
}
String negPrefix = this.df.getNegativePrefix ();
@@ -1476,43 +1476,43 @@ public class Scanner
if (begin2 > 0)
{
- throw new ParseException ("more than one Decimal seperators", begin2);
+ throw new ParseException ("more than one Decimal seperators", begin2);
}
parts = str.substring (0, begin1);
if ((negPrefix.length () > 0
- && str.substring (0, negPrefix.length ()).equals (negPrefix))
- || (negSuffix.length () > 0
- && str.substring (str.length () -
- negSuffix.length ()).equals (negSuffix)))
+ && str.substring (0, negPrefix.length ()).equals (negPrefix))
+ || (negSuffix.length () > 0
+ && str.substring (str.length () -
+ negSuffix.length ()).equals (negSuffix)))
{
- parts += negSuffix;
- isNegativ = true;
+ parts += negSuffix;
+ isNegativ = true;
}
else
if ((posPrefix.length () > 0
- && str.substring (0, posPrefix.length ()).equals (posPrefix))
- || (posSuffix.length () > 0
- && str.substring (str.length () -
- posSuffix.length ()).equals (posSuffix)))
+ && str.substring (0, posPrefix.length ()).equals (posPrefix))
+ || (posSuffix.length () > 0
+ && str.substring (str.length () -
+ posSuffix.length ()).equals (posSuffix)))
{
- parts += posSuffix;
+ parts += posSuffix;
}
tmpStr1 = this.actFormat.parse (parts).toString ();
if (isNegativ)
{
- tmpStr1 +=
- "." + str.substring (str.indexOf (d) + 1,
- str.length () - negSuffix.length ());
+ tmpStr1 +=
+ "." + str.substring (str.indexOf (d) + 1,
+ str.length () - negSuffix.length ());
}
else
{
- tmpStr1 +=
- "." + str.substring (str.indexOf (d) + 1,
- str.length () - posSuffix.length ());
+ tmpStr1 +=
+ "." + str.substring (str.indexOf (d) + 1,
+ str.length () - posSuffix.length ());
}
return tmpStr1;
@@ -1523,7 +1523,7 @@ public class Scanner
* next String is get with {@link #myCoreNext(boolean, Pattern)} and
* then {@link #myApplyLocaleBD(String)} is called to convert the
* String into a BigDecimal.
- *
+ *
* @param delete
* Should the found string be deleted or not.
* @return Returns the BigDecimal value of the next string.
@@ -1542,7 +1542,7 @@ public class Scanner
catch (ParseException e)
{
throw new InputMismatchException (ERR_PREFIX + tmp + IS_NOT +
- "BigDecimal!!");
+ "BigDecimal!!");
}
rc = new BigDecimal (tmp);
@@ -1552,7 +1552,7 @@ public class Scanner
/**
* Applies suffix ("\E") and prefix ("\Q") if str.length != 0 Used
* by the toString method.
- *
+ *
* @param str
* the string on which the suffix and prefix should be applied.
* @return The new new string with the suffix and prefix.
@@ -1561,7 +1561,7 @@ public class Scanner
{
if (str != null && str.length () > 0)
{
- return "\\Q" + str + "\\E";
+ return "\\Q" + str + "\\E";
}
return str;
}
@@ -1572,7 +1572,7 @@ public class Scanner
* source. The search results are always saved in {@link #actResult}
* which is returned when match() is called. If doSkip is true the
* pattern is also taken.
- *
+ *
* @param delete
* if true the aktPos is set.
* @param pattern
@@ -1586,24 +1586,24 @@ public class Scanner
{
if (this.isClosed)
{
- throw new IllegalStateException ("Scanner closed");
+ throw new IllegalStateException ("Scanner closed");
}
if (shallUseLastFound (pattern != null ? pattern : this.p))
{
- if (this.last_RegionEnd != this.myMatcher.regionEnd ())
- {
- System.out.println (this.last_RegionEnd + " != " +
- this.myMatcher.regionEnd () + " (" +
- (this.last_RegionEnd -
- this.myMatcher.regionEnd ()) + ")");
- }
- if (delete)
- {
- this.actPos = this.lastNextPos;
- this.lastFoundPresent = false;
- this.actResult = this.lastResult;
- }
- return this.lastFound;
+ if (this.last_RegionEnd != this.myMatcher.regionEnd ())
+ {
+ System.out.println (this.last_RegionEnd + " != " +
+ this.myMatcher.regionEnd () + " (" +
+ (this.last_RegionEnd -
+ this.myMatcher.regionEnd ()) + ")");
+ }
+ if (delete)
+ {
+ this.actPos = this.lastNextPos;
+ this.lastFoundPresent = false;
+ this.actResult = this.lastResult;
+ }
+ return this.lastFound;
}
boolean found = false;
@@ -1614,18 +1614,18 @@ public class Scanner
if (this.actPos > this.MAX_PREFIX)
{
- // skipp the processed chars so that the size of the buffer don't grow to much even with
- // huge files
- this.procesedChars += this.actPos;
- this.actBuffer = this.actBuffer.substring (this.actPos);
- this.actPos = 0;
- this.myMatcher = pattern.matcher (this.actBuffer);
+ // skipp the processed chars so that the size of the buffer don't grow to much even with
+ // huge files
+ this.procesedChars += this.actPos;
+ this.actBuffer = this.actBuffer.substring (this.actPos);
+ this.actPos = 0;
+ this.myMatcher = pattern.matcher (this.actBuffer);
}
left = this.actBuffer.length () - this.actPos;
if (left < this.MIN_BUF_LEN)
{
- myFillBuffer ();
+ myFillBuffer ();
}
found = this.myMatcher.find (this.actPos);
@@ -1635,61 +1635,63 @@ public class Scanner
if (found)
{
- if (this.doSkipp)
- {
- endIndex = this.myMatcher.end ();
- }
- else
- {
- endIndex = this.myMatcher.start ();
- }
- tmp2 = this.actBuffer.substring (this.actPos, endIndex);
- this.lastNextPos = this.myMatcher.end ();
- /*
- * if the delete flag is set, just set the current position after the end of the matched
- * pattern.
- */
- if (delete)
- {
- this.actPos = this.lastNextPos;
- }
- else
- {
- this.lastFound = tmp2;
- this.lastFoundPresent = true;
- this.lastPatternHash = pattern.hashCode ();
- }
- this.last_RegionStart = this.myMatcher.regionStart ();
- this.last_RegionEnd = this.myMatcher.regionEnd ();
- this.last_anchor = this.myMatcher.hasAnchoringBounds ();
- this.last_transparent = this.myMatcher.hasTransparentBounds ();
+ if (this.doSkipp)
+ {
+ endIndex = this.myMatcher.end ();
+ }
+ else
+ {
+ endIndex = this.myMatcher.start ();
+ }
+ tmp2 = this.actBuffer.substring (this.actPos, endIndex);
+ this.lastNextPos = this.myMatcher.end ();
+ /*
+ * if the delete flag is set, just set the current position after the end of the matched
+ * pattern.
+ */
+ if (delete)
+ {
+ this.actPos = this.lastNextPos;
+ }
+ else
+ {
+ this.lastFound = tmp2;
+ this.lastFoundPresent = true;
+ this.lastPatternHash = pattern.hashCode ();
+ }
+ this.last_RegionStart = this.myMatcher.regionStart ();
+ this.last_RegionEnd = this.myMatcher.regionEnd ();
+ this.last_anchor = this.myMatcher.hasAnchoringBounds ();
+ this.last_transparent = this.myMatcher.hasTransparentBounds ();
}
else if (this.myMatcher.hitEnd ())
// the end of input is matched
{
- tmp2 = this.actBuffer.substring (this.actPos);
- this.lastNextPos = this.actBuffer.length ();
- if (delete)
- {
- this.actPos = this.lastNextPos;
- }
- else
- {
- this.lastFound = tmp2;
- this.lastFoundPresent = true;
- this.lastPatternHash = pattern.hashCode ();
- }
- this.last_RegionStart = this.myMatcher.regionStart ();
- this.last_RegionEnd = this.myMatcher.regionEnd ();
- this.last_anchor = this.myMatcher.hasAnchoringBounds ();
- this.last_transparent = this.myMatcher.hasTransparentBounds ();
+ tmp2 = this.actBuffer.substring (this.actPos);
+ if (tmp2.length() == 0)
+ tmp2 = null;
+ this.lastNextPos = this.actBuffer.length ();
+ if (delete)
+ {
+ this.actPos = this.lastNextPos;
+ }
+ else
+ {
+ this.lastFound = tmp2;
+ this.lastFoundPresent = true;
+ this.lastPatternHash = pattern.hashCode ();
+ }
+ this.last_RegionStart = this.myMatcher.regionStart ();
+ this.last_RegionEnd = this.myMatcher.regionEnd ();
+ this.last_anchor = this.myMatcher.hasAnchoringBounds ();
+ this.last_transparent = this.myMatcher.hasTransparentBounds ();
}
else
{
- /*
- * if no match found an Exception is throwed
- */
- throw new NoSuchElementException ();
+ /*
+ * if no match found an Exception is throwed
+ */
+ throw new NoSuchElementException ();
}
/*
* change the Result only when a nextXXX() method was called, not if a hasNextXXX() method
@@ -1697,13 +1699,13 @@ public class Scanner
*/
if (delete)
{
- this.actResult = this.myMatcher.toMatchResult ();
+ this.actResult = this.myMatcher.toMatchResult ();
- this.matchValid = this.actResult != null;
+ this.matchValid = this.actResult != null;
}
else
{
- this.lastResult = this.myMatcher.toMatchResult ();
+ this.lastResult = this.myMatcher.toMatchResult ();
}
this.skipped = this.doSkipp;
@@ -1728,74 +1730,74 @@ public class Scanner
if (this.bIS != null)
{
- try
- {
- len = this.bIS.read (this.tmpBuffer);
- if (len < 0)
- {
- return;
- }
- if (this.charsetName != null)
- {
- tmpStr = new String (this.tmpBuffer, 0, len, this.charsetName);
- }
- else
- {
- tmpStr = new String (this.tmpBuffer, 0, len);
- }
- this.actBuffer += tmpStr;
- }
- catch (IOException e)
- {
- this.lastIOException = e;
- }
+ try
+ {
+ len = this.bIS.read (this.tmpBuffer);
+ if (len < 0)
+ {
+ return;
+ }
+ if (this.charsetName != null)
+ {
+ tmpStr = new String (this.tmpBuffer, 0, len, this.charsetName);
+ }
+ else
+ {
+ tmpStr = new String (this.tmpBuffer, 0, len);
+ }
+ this.actBuffer += tmpStr;
+ }
+ catch (IOException e)
+ {
+ this.lastIOException = e;
+ }
}
else if (this.readableSource != null)
{
- try
- {
- cb = CharBuffer.allocate (1000);
- this.needInput = true;
- len = this.readableSource.read (cb);
- if (len < 0)
- {
- return;
- }
- this.needInput = false;
- tmpStr = new String (cb.array ());
- this.actBuffer += tmpStr;
- }
- catch (IOException e)
- {
- this.lastIOException = e;
- }
+ try
+ {
+ cb = CharBuffer.allocate (1000);
+ this.needInput = true;
+ len = this.readableSource.read (cb);
+ if (len < 0)
+ {
+ return;
+ }
+ this.needInput = false;
+ tmpStr = new String (cb.array ());
+ this.actBuffer += tmpStr;
+ }
+ catch (IOException e)
+ {
+ this.lastIOException = e;
+ }
}
else if (this.rbcSource != null)
{
- try
- {
- bb = ByteBuffer.allocate (1000);
- this.needInput = true;
- len = this.rbcSource.read (bb);
- this.needInput = false;
- if (len < 0)
- {
- return;
- }
- if (this.charsetName != null)
- {
- tmpStr = new String (bb.array (), 0, len, this.charsetName);
- }
- else
- {
- tmpStr = new String (bb.array (), 0, len);
- }
- this.actBuffer += tmpStr;
- }
- catch (IOException e)
- {
- this.lastIOException = e;
- }
+ try
+ {
+ bb = ByteBuffer.allocate (1000);
+ this.needInput = true;
+ len = this.rbcSource.read (bb);
+ this.needInput = false;
+ if (len < 0)
+ {
+ return;
+ }
+ if (this.charsetName != null)
+ {
+ tmpStr = new String (bb.array (), 0, len, this.charsetName);
+ }
+ else
+ {
+ tmpStr = new String (bb.array (), 0, len);
+ }
+ this.actBuffer += tmpStr;
+ }
+ catch (IOException e)
+ {
+ this.lastIOException = e;
+ }
}
this.myMatcher.reset (this.actBuffer);
@@ -1805,7 +1807,7 @@ public class Scanner
* A loop in which the {@link #myFillBuffer()} is called and checked
* if the pattern is found in the matcher and if the buffersize
* changes after the read.
- *
+ *
* @param aktM
* The current Matcher.
* @param pos
@@ -1815,22 +1817,22 @@ public class Scanner
* @return <code> true </code> if the matcher has found a match.
*/
private boolean myFillBuffer_loop (final Matcher aktM, final int pos,
- boolean found)
+ boolean found)
{
int tmp;
tmp = this.actBuffer.length ();
while (aktM.hitEnd ()
- && ((this.bIS != null) || (this.readableSource != null)
- || (this.rbcSource != null)))
+ && ((this.bIS != null) || (this.readableSource != null)
+ || (this.rbcSource != null)))
{
- myFillBuffer ();
- if (tmp == this.actBuffer.length ())
- {
- break;
- }
- found = aktM.find (pos);
- this.needInput = true;
+ myFillBuffer ();
+ if (tmp == this.actBuffer.length ())
+ {
+ break;
+ }
+ found = aktM.find (pos);
+ this.needInput = true;
}
return found;
}
@@ -1841,7 +1843,7 @@ public class Scanner
* overwritten using the given pattern and the given Sting. <br>
* After the search the original values are restored, and skipped is
* set <code> true </code>.
- *
+ *
* @param pattern
* Pattern which should be matched.
* @param str
@@ -1851,7 +1853,7 @@ public class Scanner
* @return Returns the String in the given String that matches the pattern.
*/
private String myFindPInStr (final Pattern pattern, final String str,
- final int horizon)
+ final int horizon)
{
String rc = null;
int curPos = this.actPos;
@@ -1860,9 +1862,9 @@ public class Scanner
this.myMatcher = pattern.matcher (str);
if (horizon > 0)
{
- this.myMatcher.useAnchoringBounds (true);
- this.myMatcher.useTransparentBounds (true);
- this.myMatcher.region (this.actPos, this.actPos + horizon);
+ this.myMatcher.useAnchoringBounds (true);
+ this.myMatcher.useTransparentBounds (true);
+ this.myMatcher.region (this.actPos, this.actPos + horizon);
}
rc = myCoreNext (true, pattern);
this.myMatcher = aktMatcher;
@@ -1880,7 +1882,7 @@ public class Scanner
* subsring.<br> Finally the current Buffer and matcher (which have
* been temporarily changed) are set back.<br> <br> The {@link
* #skipped} is set <code> true </code>.
- *
+ *
* @param pattern
* Pattern to find until the current delimiter.
* @param delete
@@ -1917,7 +1919,7 @@ public class Scanner
* and useLocale is <code> true </code>. Afterwards it is tried to
* call the Constructor of a {@link BigInteger} with the given
* radix.
- *
+ *
* @param radix The radix to use.
* @param delete If the found String should be removed from input or
* not.
@@ -1927,7 +1929,7 @@ public class Scanner
* If there is a {@link ParseException} or a {@link NumberFormatException}.
*/
private BigInteger myNextBigInteger (final int radix, final boolean delete,
- final String name)
+ final String name)
{
BigInteger rc;
String tmp = myPrepareForNext (this.p, delete);
@@ -1952,7 +1954,7 @@ public class Scanner
* an {@link InputMismatchException} is thrown. It ignores the case
* of the string so that "true" and "TRUE" and even "TrUe" are
* accepted.
- *
+ *
* @param delete Should the found value be removed from the input or
* not.
* @return Returns the boolean value (if it is a boolean).
@@ -1965,15 +1967,15 @@ public class Scanner
String tmp = myPrepareForNext (this.p, delete);
if (tmp.equalsIgnoreCase ("true"))
{
- return true;
+ return true;
}
else if (tmp.equalsIgnoreCase ("false"))
{
- return false;
+ return false;
}
else
{
- throw new InputMismatchException (ERR_PREFIX + tmp + NOT_BOOLEAN);
+ throw new InputMismatchException (ERR_PREFIX + tmp + NOT_BOOLEAN);
}
}
@@ -1983,14 +1985,14 @@ public class Scanner
* String matching the current delimier. Afterwards it is tryed to
* convert the String into a byte. Any Error will lead into a {@link
* InputMismatchException}.
- *
+ *
* @param radix The radix to use.
* @param delete Should the found String be removed from the input.
* @return Returns the byte value of the String.
* @throws InputMismatchException if the next String is not a byte.
*/
private byte myNextByte (final int radix,
- final boolean delete) throws InputMismatchException
+ final boolean delete) throws InputMismatchException
{
byte rc;
String tmp = myPrepareForNext (this.p, delete);
@@ -2018,7 +2020,7 @@ public class Scanner
* don't match, an {@link InputMismatchException} is thrown.<br>
* <br> The radix used is always 10 even if the global radix is
* changed.
- *
+ *
* @param delete Should the String be removed, if true it will be
* also removed if the String is not a double value.
* @return Returns the double value of the next String.
@@ -2036,9 +2038,9 @@ public class Scanner
tmp = myApplyLocale (tmp, 10);
rc = Double.parseDouble (tmp);
if (("" + rc).equals (tmp))
- {
- return rc;
- }
+ {
+ return rc;
+ }
}
catch (ParseException e)
{
@@ -2052,7 +2054,7 @@ public class Scanner
* should be applied or not and then the result is parsed using
* {@link Integer#parseInt(String, int)}. Any Error will lead to an
* {@link InputMismatchException}.
- *
+ *
* @param radix The radix to use.
* @param delete <code> true </code> if the String should be deleted
* from the input.
@@ -2060,15 +2062,15 @@ public class Scanner
* @throws InputMismatchException if the next String is not an int.
*/
private int myNextInt (final int radix,
- final boolean delete) throws InputMismatchException
+ final boolean delete) throws InputMismatchException
{
int rc;
String tmp = myPrepareForNext (this.p, delete);
try
{
- tmp = myApplyLocale (tmp, radix);
- rc = Integer.parseInt (tmp, radix);
- return rc;
+ tmp = myApplyLocale (tmp, radix);
+ rc = Integer.parseInt (tmp, radix);
+ return rc;
}
catch (NumberFormatException nfe)
{
@@ -2082,38 +2084,36 @@ public class Scanner
/**
* Finds the next line using the {@link #NEW_LINE} constant which is
* set to the system specific line seperator.
- *
- * @param delete Should the found line be deleted from the input.
- * @return Returns the current line.
+ *
+ * @param delete should the found line be deleted from the input.
+ * @return the current line.
*/
private String myNextLine (final boolean delete)
{
- String rc = null;
- rc = myPrepareForNext (Pattern.compile (NEW_LINE), delete);
- return rc;
+ return myPrepareForNext (Pattern.compile (NEW_LINE), delete);
}
/**
* Tries to interpret the next String as a long value with the given
* radix. Therfore the {@link Long#parseLong(String, int)} is called
* and every Error will lead into a {@link InputMismatchException}.
- *
+ *
* @param radix The radix to be used.
* @param delete Should the found String be deleted from the input.
* @return the long value of the next String.
* @throws InputMismatchException if the next String is not a long.
*/
private long myNextLong (final int radix,
- final boolean delete) throws InputMismatchException
+ final boolean delete) throws InputMismatchException
{
long rc;
String tmp = myPrepareForNext (this.p, delete);
try
{
- tmp = myApplyLocale (tmp, radix);
- rc = Long.parseLong (tmp, radix);
- return rc;
+ tmp = myApplyLocale (tmp, radix);
+ rc = Long.parseLong (tmp, radix);
+ return rc;
}
catch (NumberFormatException nfe)
{
@@ -2129,7 +2129,7 @@ public class Scanner
* given radix. Therfore the {@link Short#parseShort(String, int)}
* is called and every Error will lead into a {@link
* InputMismatchException} .
- *
+ *
* @param radix
* The radix to be used.
* @param delete
@@ -2139,17 +2139,17 @@ public class Scanner
* if the next String is not a short.
*/
private short myNextShort (final int radix,
- final boolean delete) throws
+ final boolean delete) throws
InputMismatchException
{
short rc;
String tmp = myPrepareForNext (this.p, delete);
-
+
try
{
- tmp = myApplyLocale (tmp, radix);
- rc = Short.parseShort (tmp, radix);
- return rc;
+ tmp = myApplyLocale (tmp, radix);
+ rc = Short.parseShort (tmp, radix);
+ return rc;
}
catch (NumberFormatException nfe)
{
@@ -2158,21 +2158,21 @@ public class Scanner
{
}
throw new InputMismatchException (ERR_PREFIX + tmp +
- "\" is not a short");
+ "\" is not a short");
}
/**
* Sets the current pattern to the given pattern and calls the
* {@link #myCoreNext(boolean, Pattern)}. Finally sets the pattern
* back to its old value.
- *
+ *
* @param aktPattern Pattern to be used for the next match.
* @param delete Should the found String be deleted or not.
* @return Return the String returned from {@link
* #myCoreNext(boolean, Pattern)}.
*/
private String myPrepareForNext (final Pattern aktPattern,
- final boolean delete)
+ final boolean delete)
{
String rc;
@@ -2190,32 +2190,32 @@ public class Scanner
* Determinates if the last found can be used, so that after a
* hasNextXXX the nextXXX has not to search if nothing has
* changed.<br /> Used in {@link #myCoreNext(boolean, Pattern)}.
- *
+ *
* @param aktP The pattern which should be checked.
* @return <code> true </code> if the searchresult is already ready.
*/
private boolean shallUseLastFound (final Pattern aktP)
{
if (this.lastFoundPresent &&
- this.lastPatternHash == aktP.hashCode () &&
- this.last_RegionStart == this.myMatcher.regionStart () &&
- this.last_anchor == this.myMatcher.hasAnchoringBounds () &&
- this.last_transparent == this.myMatcher.hasTransparentBounds ())
+ this.lastPatternHash == aktP.hashCode () &&
+ this.last_RegionStart == this.myMatcher.regionStart () &&
+ this.last_anchor == this.myMatcher.hasAnchoringBounds () &&
+ this.last_transparent == this.myMatcher.hasTransparentBounds ())
{
- if (this.last_RegionEnd != this.myMatcher.regionEnd ())
- {
- int tmpVal =
- this.myMatcher.regionEnd () -
- this.last_RegionEnd - this.MAX_PREFIX;
- if (tmpVal > 0 && tmpVal < 20)
- {
- this.last_RegionEnd =
- this.myMatcher.regionEnd ();
- return true;
- }
- }
- else
- return true;
+ if (this.last_RegionEnd != this.myMatcher.regionEnd ())
+ {
+ int tmpVal =
+ this.myMatcher.regionEnd () -
+ this.last_RegionEnd - this.MAX_PREFIX;
+ if (tmpVal > 0 && tmpVal < 20)
+ {
+ this.last_RegionEnd =
+ this.myMatcher.regionEnd ();
+ return true;
+ }
+ }
+ else
+ return true;
}
return false;
}
diff --git a/libjava/classpath/java/util/TreeMap.java b/libjava/classpath/java/util/TreeMap.java
index 1068100d562..99a42cbfb50 100644
--- a/libjava/classpath/java/util/TreeMap.java
+++ b/libjava/classpath/java/util/TreeMap.java
@@ -2745,7 +2745,7 @@ public class TreeMap<K, V> extends AbstractMap<K, V>
{
public int size()
{
- return size();
+ return DescendingMap.this.size();
}
public Iterator<DV> iterator()
@@ -2786,7 +2786,7 @@ public class TreeMap<K, V> extends AbstractMap<K, V>
public void clear()
{
- clear();
+ DescendingMap.this.clear();
}
};
return values;
diff --git a/libjava/classpath/java/util/regex/Matcher.java b/libjava/classpath/java/util/regex/Matcher.java
index 50cb065f287..be57471de61 100644
--- a/libjava/classpath/java/util/regex/Matcher.java
+++ b/libjava/classpath/java/util/regex/Matcher.java
@@ -70,9 +70,9 @@ public final class Matcher implements MatchResult
* The end of the region of the input on which to match.
*/
private int regionEnd;
-
+
/**
- * True if the match process should look beyond the
+ * True if the match process should look beyond the
* region marked by regionStart to regionEnd when
* performing lookAhead, lookBehind and boundary
* matching.
@@ -101,7 +101,7 @@ public final class Matcher implements MatchResult
transparentBounds = false;
anchoringBounds = 0;
}
-
+
/**
* @param sb The target string buffer
* @param replacement The replacement string
@@ -116,9 +116,9 @@ public final class Matcher implements MatchResult
{
assertMatchOp();
sb.append(input.subSequence(appendPosition,
- match.getStartIndex()).toString());
+ match.getStartIndex()).toString());
sb.append(RE.getReplacement(replacement, match,
- RE.REG_REPLACE_USE_BACKSLASHESCAPE));
+ RE.REG_REPLACE_USE_BACKSLASHESCAPE));
appendPosition = match.getEndIndex();
return this;
}
@@ -131,7 +131,7 @@ public final class Matcher implements MatchResult
sb.append(input.subSequence(appendPosition, input.length()).toString());
return sb;
}
-
+
/**
* @exception IllegalStateException If no match has yet been attempted,
* or if the previous match operation failed
@@ -142,7 +142,7 @@ public final class Matcher implements MatchResult
assertMatchOp();
return match.getEndIndex();
}
-
+
/**
* @param group The index of a capturing group in this matcher's pattern
*
@@ -157,7 +157,7 @@ public final class Matcher implements MatchResult
assertMatchOp();
return match.getEndIndex(group);
}
-
+
public boolean find ()
{
boolean first = (match == null);
@@ -165,28 +165,28 @@ public final class Matcher implements MatchResult
match = pattern.getRE().getMatch(inputCharIndexed, position, anchoringBounds);
else
match = pattern.getRE().getMatch(input.subSequence(regionStart, regionEnd),
- position, anchoringBounds);
+ position, anchoringBounds);
if (match != null)
{
- int endIndex = match.getEndIndex();
- // Are we stuck at the same position?
- if (!first && endIndex == position)
- {
- match = null;
- // Not at the end of the input yet?
- if (position < input.length() - 1)
- {
- position++;
- return find(position);
- }
- else
- return false;
- }
- position = endIndex;
- return true;
+ int endIndex = match.getEndIndex();
+ // Are we stuck at the same position?
+ if (!first && endIndex == position)
+ {
+ match = null;
+ // Not at the end of the input yet?
+ if (position < input.length() - 1)
+ {
+ position++;
+ return find(position);
+ }
+ else
+ return false;
+ }
+ position = endIndex;
+ return true;
}
return false;
- }
+ }
/**
* @param start The index to start the new pattern matching
@@ -200,15 +200,15 @@ public final class Matcher implements MatchResult
match = pattern.getRE().getMatch(inputCharIndexed, start, anchoringBounds);
else
match = pattern.getRE().getMatch(input.subSequence(regionStart, regionEnd),
- start, anchoringBounds);
+ start, anchoringBounds);
if (match != null)
{
- position = match.getEndIndex();
- return true;
+ position = match.getEndIndex();
+ return true;
}
return false;
}
-
+
/**
* @exception IllegalStateException If no match has yet been attempted,
* or if the previous match operation failed
@@ -218,7 +218,7 @@ public final class Matcher implements MatchResult
assertMatchOp();
return match.toString();
}
-
+
/**
* @param group The index of a capturing group in this matcher's pattern
*
@@ -242,7 +242,7 @@ public final class Matcher implements MatchResult
reset();
// Semantics might not quite match
return pattern.getRE().substitute(input, replacement, position,
- RE.REG_REPLACE_USE_BACKSLASHESCAPE);
+ RE.REG_REPLACE_USE_BACKSLASHESCAPE);
}
/**
@@ -252,36 +252,36 @@ public final class Matcher implements MatchResult
{
reset();
return pattern.getRE().substituteAll(input, replacement, position,
- RE.REG_REPLACE_USE_BACKSLASHESCAPE);
+ RE.REG_REPLACE_USE_BACKSLASHESCAPE);
}
-
+
public int groupCount ()
{
return pattern.getRE().getNumSubs();
}
-
+
public boolean lookingAt ()
{
if (transparentBounds || (regionStart == 0 && regionEnd == input.length()))
match = pattern.getRE().getMatch(inputCharIndexed, regionStart,
- anchoringBounds|RE.REG_FIX_STARTING_POSITION|RE.REG_ANCHORINDEX);
+ anchoringBounds|RE.REG_FIX_STARTING_POSITION|RE.REG_ANCHORINDEX);
else
match = pattern.getRE().getMatch(input.subSequence(regionStart, regionEnd), 0,
- anchoringBounds|RE.REG_FIX_STARTING_POSITION);
+ anchoringBounds|RE.REG_FIX_STARTING_POSITION);
if (match != null)
{
- if (match.getStartIndex() == 0)
- {
- position = match.getEndIndex();
- return true;
- }
- match = null;
+ if (match.getStartIndex() == 0)
+ {
+ position = match.getEndIndex();
+ return true;
+ }
+ match = null;
}
return false;
}
-
+
/**
- * Attempts to match the entire input sequence against the pattern.
+ * Attempts to match the entire input sequence against the pattern.
*
* If the match succeeds then more information can be obtained via the
* start, end, and group methods.
@@ -294,23 +294,23 @@ public final class Matcher implements MatchResult
{
if (transparentBounds || (regionStart == 0 && regionEnd == input.length()))
match = pattern.getRE().getMatch(inputCharIndexed, regionStart,
- anchoringBounds|RE.REG_TRY_ENTIRE_MATCH|RE.REG_FIX_STARTING_POSITION|RE.REG_ANCHORINDEX);
+ anchoringBounds|RE.REG_TRY_ENTIRE_MATCH|RE.REG_FIX_STARTING_POSITION|RE.REG_ANCHORINDEX);
else
match = pattern.getRE().getMatch(input.subSequence(regionStart, regionEnd), 0,
- anchoringBounds|RE.REG_TRY_ENTIRE_MATCH|RE.REG_FIX_STARTING_POSITION);
+ anchoringBounds|RE.REG_TRY_ENTIRE_MATCH|RE.REG_FIX_STARTING_POSITION);
if (match != null)
{
- if (match.getStartIndex() == 0)
- {
- position = match.getEndIndex();
- if (position == input.length())
- return true;
- }
- match = null;
+ if (match.getStartIndex() == 0)
+ {
+ position = match.getEndIndex();
+ if (position == input.length())
+ return true;
+ }
+ match = null;
}
return false;
}
-
+
/**
* Returns the Pattern that is interpreted by this Matcher
*/
@@ -318,7 +318,7 @@ public final class Matcher implements MatchResult
{
return pattern;
}
-
+
/**
* Resets the internal state of the matcher, including
* resetting the region to its default state of encompassing
@@ -340,7 +340,7 @@ public final class Matcher implements MatchResult
appendPosition = 0;
return this;
}
-
+
/**
* Resets the internal state of the matcher, including
* resetting the region to its default state of encompassing
@@ -360,7 +360,7 @@ public final class Matcher implements MatchResult
this.inputCharIndexed = RE.makeCharIndexed(input, 0);
return reset();
}
-
+
/**
* @return the index of a capturing group in this matcher's pattern
*
@@ -493,7 +493,7 @@ public final class Matcher implements MatchResult
{
return regionStart;
}
-
+
/**
* The end of the region on which to perform matches (exclusive).
*
@@ -603,7 +603,8 @@ public final class Matcher implements MatchResult
public MatchResult toMatchResult()
{
Matcher snapshot = new Matcher(pattern, input);
- snapshot.match = (REMatch) match.clone();
+ if (match != null)
+ snapshot.match = (REMatch) match.clone();
return snapshot;
}
diff --git a/libjava/classpath/java/util/zip/Inflater.java b/libjava/classpath/java/util/zip/Inflater.java
index e3e555ab995..f529dc691c6 100644
--- a/libjava/classpath/java/util/zip/Inflater.java
+++ b/libjava/classpath/java/util/zip/Inflater.java
@@ -311,37 +311,29 @@ public class Inflater
*/
public int inflate (byte[] buf, int off, int len) throws DataFormatException
{
- /* Special case: len may be zero */
- if (len == 0)
- return 0;
/* Check for correct buff, off, len triple */
if (0 > off || off > off + len || off + len > buf.length)
throw new ArrayIndexOutOfBoundsException();
int count = 0;
- int more;
- do
+ for (;;)
{
- if (mode != DECODE_CHKSUM)
- {
- /* Don't give away any output, if we are waiting for the
- * checksum in the input stream.
- *
- * With this trick we have always:
- * needsInput() and not finished()
- * implies more output can be produced.
- */
- more = outputWindow.copyOutput(buf, off, len);
- adler.update(buf, off, more);
- off += more;
- count += more;
- totalOut += more;
- len -= more;
- if (len == 0)
- return count;
- }
+ if (outputWindow.getAvailable() == 0)
+ {
+ if (!decode())
+ break;
+ }
+ else if (len > 0)
+ {
+ int more = outputWindow.copyOutput(buf, off, len);
+ adler.update(buf, off, more);
+ off += more;
+ count += more;
+ totalOut += more;
+ len -= more;
+ }
+ else
+ break;
}
- while (decode() || (outputWindow.getAvailable() > 0
- && mode != DECODE_CHKSUM));
return count;
}
diff --git a/libjava/classpath/javax/security/auth/kerberos/KerberosTicket.java b/libjava/classpath/javax/security/auth/kerberos/KerberosTicket.java
index 85e25374987..ff70b9f4e37 100644
--- a/libjava/classpath/javax/security/auth/kerberos/KerberosTicket.java
+++ b/libjava/classpath/javax/security/auth/kerberos/KerberosTicket.java
@@ -54,7 +54,7 @@ import javax.security.auth.Refreshable;
* This class represents a Kerberos ticket. See the Kerberos
* authentication RFC for more information:
* <a href="http://www.ietf.org/rfc/rfc1510.txt">RFC 1510</a>.
- *
+ *
* @since 1.4
*/
public class KerberosTicket
@@ -86,16 +86,16 @@ public class KerberosTicket
/**
* Create a new ticket given all the facts about it.
- *
+ *
* Note that flags may be null or "short"; any flags not specified
* will be taken to be false.
- *
+ *
* If the key is not renewable, then renewTill may be null.
- *
+ *
* If authTime is null, then it is taken to be the same as startTime.
- *
+ *
* If clientAddresses is null, then the ticket can be used anywhere.
- *
+ *
* @param asn1Encoding the contents of the ticket, as ASN1
* @param client the client principal
* @param server the server principal
@@ -279,7 +279,7 @@ public class KerberosTicket
{
return (Date) startTime.clone();
}
-
+
/**
* Return the end time for this ticket.
*/
@@ -287,7 +287,7 @@ public class KerberosTicket
{
return (Date) endTime.clone();
}
-
+
/**
* Return the renewal time for this ticket. For a non-renewable
* ticket, this will return null.
@@ -334,6 +334,39 @@ public class KerberosTicket
public String toString()
{
- return "FIXME bob";
+ return getClass().getName() +
+ "[client=" + client +
+ ",server=" + server +
+ ",sessionKey=" + sessionKey +
+ ",flags=" + flags +
+ ",authTime=" + authTime +
+ ",startTime= " + startTime +
+ ",endTime=" + endTime +
+ ",renewTill=" + renewTill +
+ ",clientAddresses=" + clientAddresses +
+ "]";
+ }
+
+ /**
+ * <p>
+ * Returns the type of the session key in accordance with
+ * RFC1510. This usually corresponds to the encryption
+ * algorithm used by the key, though more than one algorithm
+ * may use the same key type (e.g. DES with different checksum
+ * mechanisms and chaining modes). Negative values are reserved
+ * for local use. Non-negative values are for officially assigned
+ * type fields. The RFC defines:
+ * </p>
+ * <ul>
+ * <li>0 &mdash; null</li>
+ * <li>1 &mdash; DES (in CBC mode with either MD4 or MD5 checksums)</li>
+ * </ul>
+ *
+ * @return the type of session key used by this ticket.
+ */
+ public final int getSessionKeyType()
+ {
+ return sessionKey.type;
}
+
}
diff --git a/libjava/classpath/javax/security/auth/kerberos/KeyImpl.java b/libjava/classpath/javax/security/auth/kerberos/KeyImpl.java
index 6773dfa3e87..a7cf3d212c9 100644
--- a/libjava/classpath/javax/security/auth/kerberos/KeyImpl.java
+++ b/libjava/classpath/javax/security/auth/kerberos/KeyImpl.java
@@ -90,4 +90,13 @@ final class KeyImpl implements Serializable, SecretKey
// FIXME.
return null;
}
+
+ public String toString()
+ {
+ return getClass().getName() +
+ "[type=" + type +
+ ",algorithm=" + algorithm +
+ "]";
+ }
+
}
diff --git a/libjava/classpath/javax/swing/text/html/HTMLEditorKit.java b/libjava/classpath/javax/swing/text/html/HTMLEditorKit.java
index cc61889d76f..45381d60e87 100644
--- a/libjava/classpath/javax/swing/text/html/HTMLEditorKit.java
+++ b/libjava/classpath/javax/swing/text/html/HTMLEditorKit.java
@@ -1454,7 +1454,7 @@ public class HTMLEditorKit
try
{
styleSheet = new StyleSheet();
- Class c = HTMLEditorKit.class;
+ Class<?> c = HTMLEditorKit.class;
InputStream in = c.getResourceAsStream(DEFAULT_CSS);
InputStreamReader r = new InputStreamReader(in);
styleSheet.loadRules(r, null);
diff --git a/libjava/classpath/javax/swing/text/html/HTMLWriter.java b/libjava/classpath/javax/swing/text/html/HTMLWriter.java
index 6cc23df9aab..6a5e6ed58fe 100644
--- a/libjava/classpath/javax/swing/text/html/HTMLWriter.java
+++ b/libjava/classpath/javax/swing/text/html/HTMLWriter.java
@@ -79,9 +79,9 @@ public class HTMLWriter
private HTMLDocument htmlDoc = null;
/**
- * Used to keep track of which embeded has been written out.
+ * Used to keep track of which embedded has been written out.
*/
- private HashSet openEmbededTagHashSet = null;
+ private HashSet<HTML.Tag> openEmbeddedTagHashSet = null;
private String new_line_str = "" + NEWLINE;
@@ -95,7 +95,7 @@ public class HTMLWriter
private int doc_len = -1;
private int doc_offset_remaining = -1;
private int doc_len_remaining = -1;
- private HashSet htmlFragmentParentHashSet = null;
+ private HashSet<Element> htmlFragmentParentHashSet = null;
private Element startElem = null;
private Element endElem = null;
private boolean fg_pass_start_elem = false;
@@ -112,7 +112,7 @@ public class HTMLWriter
super(writer, doc);
outWriter = writer;
htmlDoc = doc;
- openEmbededTagHashSet = new HashSet();
+ openEmbeddedTagHashSet = new HashSet<HTML.Tag>();
} // public HTMLWriter(Writer writer, HTMLDocument doc)
/**
@@ -129,13 +129,13 @@ public class HTMLWriter
super(writer, doc, pos, len);
outWriter = writer;
htmlDoc = doc;
- openEmbededTagHashSet = new HashSet();
+ openEmbeddedTagHashSet = new HashSet<HTML.Tag>();
doc_pos = pos;
doc_offset_remaining = pos;
doc_len = len;
doc_len_remaining = len;
- htmlFragmentParentHashSet = new HashSet();
+ htmlFragmentParentHashSet = new HashSet<Element>();
} // public HTMLWriter(Writer writer, HTMLDocument doc, int pos, int len)
/**
@@ -197,7 +197,8 @@ public class HTMLWriter
} // else
// NOTE: close out remaining open embeded tags.
- Object[] tag_arr = openEmbededTagHashSet.toArray();
+ HTML.Tag[] tag_arr =
+ openEmbeddedTagHashSet.toArray(new HTML.Tag[openEmbeddedTagHashSet.size()]);
for (int i = 0; i < tag_arr.length; i++)
{
@@ -219,8 +220,8 @@ public class HTMLWriter
protected void writeAttributes(AttributeSet attrSet)
throws IOException
{
- Enumeration attrNameEnum = attrSet.getAttributeNames();
-
+ Enumeration<?> attrNameEnum = attrSet.getAttributeNames();
+
while (attrNameEnum.hasMoreElements())
{
Object key = attrNameEnum.nextElement();
@@ -502,7 +503,7 @@ public class HTMLWriter
protected void writeEmbeddedTags(AttributeSet attrSet)
throws IOException
{
- Enumeration attrNameEnum = attrSet.getAttributeNames();
+ Enumeration<?> attrNameEnum = attrSet.getAttributeNames();
while (attrNameEnum.hasMoreElements())
{
@@ -511,12 +512,12 @@ public class HTMLWriter
if (key instanceof HTML.Tag)
{
- if (!openEmbededTagHashSet.contains(key))
+ if (!openEmbeddedTagHashSet.contains(key))
{
writeRaw("<" + key);
writeAttributes((AttributeSet) value);
writeRaw(">");
- openEmbededTagHashSet.add(key);
+ openEmbeddedTagHashSet.add((HTML.Tag) key);
} // if(!openEmbededTagHashSet.contains(key))
} // if(key instanceof HTML.Tag)
} // while(attrNameEnum.hasMoreElements())
@@ -535,16 +536,17 @@ public class HTMLWriter
protected void closeOutUnwantedEmbeddedTags(AttributeSet attrSet)
throws IOException
{
- Object[] tag_arr = openEmbededTagHashSet.toArray();
+ HTML.Tag[] tag_arr =
+ openEmbeddedTagHashSet.toArray(new HTML.Tag[openEmbeddedTagHashSet.size()]);
for (int i = 0; i < tag_arr.length; i++)
{
- HTML.Tag key = (HTML.Tag) tag_arr[i];
+ HTML.Tag key = tag_arr[i];
if (!attrSet.isDefined(key))
{
writeRaw("</" + key.toString() + ">");
- openEmbededTagHashSet.remove(key);
+ openEmbeddedTagHashSet.remove(key);
} // if(!attrSet.isDefined(key))
} // for(int i = 0; i < tag_arr.length; i++)
@@ -645,7 +647,7 @@ public class HTMLWriter
if (matchNameAttribute(attrSet, HTML.Tag.TITLE))
{
boolean fg_is_end_tag = false;
- Enumeration attrNameEnum = attrSet.getAttributeNames();
+ Enumeration<?> attrNameEnum = attrSet.getAttributeNames();
while (attrNameEnum.hasMoreElements())
{
@@ -860,7 +862,7 @@ public class HTMLWriter
if (matchNameAttribute(attrSet, HTML.Tag.TITLE))
{
boolean fg_is_end_tag = false;
- Enumeration attrNameEnum = attrSet.getAttributeNames();
+ Enumeration<?> attrNameEnum = attrSet.getAttributeNames();
while (attrNameEnum.hasMoreElements())
{
@@ -996,7 +998,7 @@ public class HTMLWriter
private void writeAllAttributes(AttributeSet attrSet)
throws IOException
{
- Enumeration attrNameEnum = attrSet.getAttributeNames();
+ Enumeration<?> attrNameEnum = attrSet.getAttributeNames();
while (attrNameEnum.hasMoreElements())
{
diff --git a/libjava/classpath/javax/swing/text/html/ImageView.java b/libjava/classpath/javax/swing/text/html/ImageView.java
index bf906e4500e..bb6af4f451f 100644
--- a/libjava/classpath/javax/swing/text/html/ImageView.java
+++ b/libjava/classpath/javax/swing/text/html/ImageView.java
@@ -323,8 +323,6 @@ public class ImageView extends View
*/
public float getPreferredSpan(int axis)
{
- AttributeSet attrs = getAttributes();
-
Image image = getImage();
if (axis == View.X_AXIS)
@@ -522,7 +520,6 @@ public class ImageView extends View
Image newIm = getImage();
if (newIm != null)
{
- AttributeSet atts = getAttributes();
// Fetch width.
Length l = spans[X_AXIS];
if (l != null)
diff --git a/libjava/classpath/javax/swing/text/html/MinimalHTMLWriter.java b/libjava/classpath/javax/swing/text/html/MinimalHTMLWriter.java
index acb2c04acc2..9f5f019fa37 100644
--- a/libjava/classpath/javax/swing/text/html/MinimalHTMLWriter.java
+++ b/libjava/classpath/javax/swing/text/html/MinimalHTMLWriter.java
@@ -48,8 +48,9 @@ import javax.swing.text.Style;
import javax.swing.text.StyledDocument;
import java.io.Writer;
import java.io.IOException;
+import java.util.ArrayDeque;
+import java.util.Deque;
import java.util.Enumeration;
-import java.util.Stack;
import java.awt.Color;
/**
@@ -61,7 +62,7 @@ import java.awt.Color;
public class MinimalHTMLWriter extends AbstractWriter
{
private StyledDocument doc;
- private Stack tagStack;
+ private Deque<String> tagStack;
private boolean inFontTag = false;
/**
@@ -73,7 +74,7 @@ public class MinimalHTMLWriter extends AbstractWriter
{
super(w, doc);
this.doc = doc;
- tagStack = new Stack();
+ tagStack = new ArrayDeque<String>();
}
/**
@@ -87,7 +88,7 @@ public class MinimalHTMLWriter extends AbstractWriter
{
super(w, doc, pos, len);
this.doc = doc;
- tagStack = new Stack();
+ tagStack = new ArrayDeque<String>();
}
/**
@@ -315,7 +316,7 @@ public class MinimalHTMLWriter extends AbstractWriter
{
if(doc instanceof DefaultStyledDocument)
{
- Enumeration styles = ((DefaultStyledDocument)doc).getStyleNames();
+ Enumeration<?> styles = ((DefaultStyledDocument)doc).getStyleNames();
while(styles.hasMoreElements())
writeStyle(doc.getStyle((String)styles.nextElement()));
}
@@ -332,7 +333,7 @@ public class MinimalHTMLWriter extends AbstractWriter
*/
protected void writeAttributes(AttributeSet attr) throws IOException
{
- Enumeration attribs = attr.getAttributeNames();
+ Enumeration<?> attribs = attr.getAttributeNames();
while(attribs.hasMoreElements())
{
Object attribName = attribs.nextElement();
@@ -422,8 +423,8 @@ public class MinimalHTMLWriter extends AbstractWriter
*/
private void endOpenTags() throws IOException
{
- while(!tagStack.empty())
- write((String)tagStack.pop());
+ while(tagStack.size() > 0)
+ write(tagStack.pop());
if( inFontTag() )
{
diff --git a/libjava/classpath/javax/swing/text/html/MultiAttributeSet.java b/libjava/classpath/javax/swing/text/html/MultiAttributeSet.java
index 0f1145084e1..296144460ac 100644
--- a/libjava/classpath/javax/swing/text/html/MultiAttributeSet.java
+++ b/libjava/classpath/javax/swing/text/html/MultiAttributeSet.java
@@ -57,7 +57,7 @@ class MultiAttributeSet
* The Enumeration for the multiplexed names.
*/
private class MultiNameEnumeration
- implements Enumeration
+ implements Enumeration<Object>
{
/**
* The index of the current AttributeSet.
@@ -67,7 +67,7 @@ class MultiAttributeSet
/**
* The names Enumeration of the current AttributeSet.
*/
- private Enumeration current;
+ private Enumeration<?> current;
/**
* Creates a new instance.
@@ -147,7 +147,7 @@ class MultiAttributeSet
public boolean containsAttributes(AttributeSet attributes)
{
boolean ret = true;
- Enumeration e = attributes.getAttributeNames();
+ Enumeration<?> e = attributes.getAttributeNames();
while (ret && e.hasMoreElements())
{
Object key = e.nextElement();
@@ -186,7 +186,7 @@ class MultiAttributeSet
return n;
}
- public Enumeration getAttributeNames()
+ public Enumeration<?> getAttributeNames()
{
return new MultiNameEnumeration();
}
diff --git a/libjava/classpath/javax/swing/text/html/MultiStyle.java b/libjava/classpath/javax/swing/text/html/MultiStyle.java
index 3937bff75a9..2f43a19c282 100644
--- a/libjava/classpath/javax/swing/text/html/MultiStyle.java
+++ b/libjava/classpath/javax/swing/text/html/MultiStyle.java
@@ -51,7 +51,7 @@ import javax.swing.text.Style;
*
* @author Roman Kennke (kennke@aicas.com)
*/
-public class MultiStyle
+class MultiStyle
extends MultiAttributeSet
implements Style
{
@@ -118,7 +118,7 @@ public class MultiStyle
attributes.removeAttribute(name);
}
- public void removeAttributes(Enumeration names)
+ public void removeAttributes(Enumeration<?> names)
{
attributes.removeAttribute(names);
}
diff --git a/libjava/classpath/javax/swing/text/html/ObjectView.java b/libjava/classpath/javax/swing/text/html/ObjectView.java
index d6a77c06aad..9d900441bb1 100644
--- a/libjava/classpath/javax/swing/text/html/ObjectView.java
+++ b/libjava/classpath/javax/swing/text/html/ObjectView.java
@@ -88,7 +88,7 @@ public class ObjectView extends ComponentView
String classId = (String) atts.getAttribute("classid");
try
{
- Class objectClass = Class.forName(classId);
+ Class<?> objectClass = Class.forName(classId);
Object instance = objectClass.newInstance();
comp = (Component) instance;
}
diff --git a/libjava/classpath/javax/swing/text/html/StyleSheet.java b/libjava/classpath/javax/swing/text/html/StyleSheet.java
index 08578c80fad..c4ddddb7395 100644
--- a/libjava/classpath/javax/swing/text/html/StyleSheet.java
+++ b/libjava/classpath/javax/swing/text/html/StyleSheet.java
@@ -369,7 +369,7 @@ public class StyleSheet extends StyleContext
*
* @return the resolved style
*/
- private Style getResolvedStyle(String selector, List path, HTML.Tag tag)
+ private Style getResolvedStyle(String selector, List<Element> path, HTML.Tag tag)
{
Style style = resolvedStyles.get(selector);
if (style == null)
@@ -380,7 +380,7 @@ public class StyleSheet extends StyleContext
/**
* Resolves a style. This creates arrays that hold the tag names,
* class and id attributes and delegates the work to
- * {@link #resolveStyle(String, String[], Map[])}.
+ * {@link #resolveStyle(String, String[], List<Map<String,String>>)}.
*
* @param selector the selector
* @param path the Element path
@@ -388,14 +388,15 @@ public class StyleSheet extends StyleContext
*
* @return the resolved style
*/
- private Style resolveStyle(String selector, List path, HTML.Tag tag)
+ private Style resolveStyle(String selector, List<Element> path, HTML.Tag tag)
{
int count = path.size();
String[] tags = new String[count];
- Map[] attributes = new Map[count];
+ List<Map<String,String>> attributes =
+ new ArrayList<Map<String,String>>(count);
for (int i = 0; i < count; i++)
{
- Element el = (Element) path.get(i);
+ Element el = path.get(i);
AttributeSet atts = el.getAttributes();
if (i == 0 && el.isLeaf())
{
@@ -413,12 +414,11 @@ public class StyleSheet extends StyleContext
tags[i] = t.toString();
else
tags[i] = null;
- attributes[i] = attributeSetToMap(atts);
+ attributes.set(i, attributeSetToMap(atts));
}
else
{
tags[i] = null;
- attributes[i] = null;
}
}
tags[0] = tag.toString();
@@ -434,7 +434,8 @@ public class StyleSheet extends StyleContext
*
* @return the resolved style
*/
- private Style resolveStyle(String selector, String[] tags, Map[] attributes)
+ private Style resolveStyle(String selector, String[] tags,
+ List<Map<String,String>> attributes)
{
// FIXME: This style resolver is not correct. But it works good enough for
// the default.css.
@@ -462,10 +463,8 @@ public class StyleSheet extends StyleContext
// Sort selectors.
Collections.sort(styles);
- Style[] styleArray = new Style[styles.size()];
- styleArray = (Style[]) styles.toArray(styleArray);
- Style resolved = new MultiStyle(selector,
- (Style[]) styles.toArray(styleArray));
+ Style[] styleArray = styles.toArray(new Style[styles.size()]);
+ Style resolved = new MultiStyle(selector, styleArray);
resolvedStyles.put(selector, resolved);
return resolved;
}
@@ -481,9 +480,9 @@ public class StyleSheet extends StyleContext
public Style getRule(String selector)
{
CSSStyle best = null;
- for (Iterator i = css.iterator(); i.hasNext();)
+ for (Iterator<CSSStyle> i = css.iterator(); i.hasNext();)
{
- CSSStyle style = (CSSStyle) i.next();
+ CSSStyle style = i.next();
if (style.compareTo(best) < 0)
best = style;
}
@@ -584,7 +583,7 @@ public class StyleSheet extends StyleContext
public void addStyleSheet(StyleSheet ss)
{
if (linked == null)
- linked = new ArrayList();
+ linked = new ArrayList<StyleSheet>();
linked.add(ss);
}
@@ -1441,7 +1440,7 @@ public class StyleSheet extends StyleContext
*
* @return the converted map
*/
- private Map attributeSetToMap(AttributeSet atts)
+ private Map<String,String> attributeSetToMap(AttributeSet atts)
{
HashMap<String,String> map = new HashMap<String,String>();
Enumeration<?> keys = atts.getAttributeNames();
diff --git a/libjava/classpath/javax/swing/text/html/TableView.java b/libjava/classpath/javax/swing/text/html/TableView.java
index f87d7b35fc5..912240c28c4 100644
--- a/libjava/classpath/javax/swing/text/html/TableView.java
+++ b/libjava/classpath/javax/swing/text/html/TableView.java
@@ -181,7 +181,6 @@ class TableView
int spans[])
{
updateGrid();
- int numCols = offsets.length;
int realColumn = 0;
int colCount = getViewCount();
for (int i = 0; i < numColumns;)
diff --git a/libjava/classpath/javax/swing/tree/DefaultMutableTreeNode.java b/libjava/classpath/javax/swing/tree/DefaultMutableTreeNode.java
index 34a70c19b59..e4cc97838a9 100644
--- a/libjava/classpath/javax/swing/tree/DefaultMutableTreeNode.java
+++ b/libjava/classpath/javax/swing/tree/DefaultMutableTreeNode.java
@@ -293,6 +293,7 @@ public class DefaultMutableTreeNode
*
* @return an enumeration of tree nodes
*/
+ @SuppressWarnings("unchecked") // Required for API compatibility
public Enumeration children()
{
if (children.size() == 0)
@@ -320,7 +321,7 @@ public class DefaultMutableTreeNode
*/
public TreeNode getChildAt(int index)
{
- return (TreeNode) children.elementAt(index);
+ return children.elementAt(index);
}
/**
@@ -717,6 +718,7 @@ public class DefaultMutableTreeNode
*
* @return Enumeration
*/
+ @SuppressWarnings("unchecked") // Required for API compatibility
public Enumeration preorderEnumeration()
{
return new PreorderEnumeration(this);
@@ -727,6 +729,7 @@ public class DefaultMutableTreeNode
*
* @return Enumeration
*/
+ @SuppressWarnings("unchecked") // Required for API compatibility
public Enumeration postorderEnumeration()
{
return new PostorderEnumeration(this);
@@ -737,6 +740,7 @@ public class DefaultMutableTreeNode
*
* @return Enumeration
*/
+ @SuppressWarnings("unchecked") // Required for API compatibility
public Enumeration breadthFirstEnumeration()
{
return new BreadthFirstEnumeration(this);
@@ -747,6 +751,7 @@ public class DefaultMutableTreeNode
*
* @return Enumeration
*/
+ @SuppressWarnings("unchecked") // Required for API compatibility
public Enumeration depthFirstEnumeration()
{
return postorderEnumeration();
@@ -759,6 +764,7 @@ public class DefaultMutableTreeNode
*
* @return Enumeration
*/
+ @SuppressWarnings("unchecked") // Required for API compatibility
public Enumeration pathFromAncestorEnumeration(TreeNode node)
{
if (node == null)
@@ -806,7 +812,7 @@ public class DefaultMutableTreeNode
*/
public TreeNode getFirstChild()
{
- return (TreeNode) children.firstElement();
+ return children.firstElement();
}
/**
@@ -818,7 +824,7 @@ public class DefaultMutableTreeNode
*/
public TreeNode getLastChild()
{
- return (TreeNode) children.lastElement();
+ return children.lastElement();
}
/**
@@ -1036,7 +1042,7 @@ public class DefaultMutableTreeNode
public int getLeafCount()
{
int count = 0;
- Enumeration e = depthFirstEnumeration();
+ Enumeration<?> e = depthFirstEnumeration();
while (e.hasMoreElements())
{
diff --git a/libjava/classpath/javax/swing/tree/FixedHeightLayoutCache.java b/libjava/classpath/javax/swing/tree/FixedHeightLayoutCache.java
index 488809e0232..89f05d31c01 100644
--- a/libjava/classpath/javax/swing/tree/FixedHeightLayoutCache.java
+++ b/libjava/classpath/javax/swing/tree/FixedHeightLayoutCache.java
@@ -484,7 +484,7 @@ public class FixedHeightLayoutCache
{
if (dirty)
update();
- Vector p = new Vector(parentPath.getPathCount());
+ Vector<TreePath> p = new Vector<TreePath>(parentPath.getPathCount());
Object node;
NodeRecord nr;
@@ -493,7 +493,7 @@ public class FixedHeightLayoutCache
node = parentPath.getPathComponent(i);
nr = nodes.get(node);
if (nr.row >= 0)
- p.add(node);
+ p.add((TreePath) node);
}
return p.elements();
}
diff --git a/libjava/classpath/javax/swing/tree/TreeNode.java b/libjava/classpath/javax/swing/tree/TreeNode.java
index ae7380c703b..53d52f0a7cb 100644
--- a/libjava/classpath/javax/swing/tree/TreeNode.java
+++ b/libjava/classpath/javax/swing/tree/TreeNode.java
@@ -107,6 +107,7 @@ public interface TreeNode
*
* @return An enumeration of the children of this node.
*/
+ @SuppressWarnings("unchecked") // Required for API compatibility
Enumeration children();
}
diff --git a/libjava/classpath/javax/swing/tree/VariableHeightLayoutCache.java b/libjava/classpath/javax/swing/tree/VariableHeightLayoutCache.java
index 50e8e5ce92e..aac68692edc 100644
--- a/libjava/classpath/javax/swing/tree/VariableHeightLayoutCache.java
+++ b/libjava/classpath/javax/swing/tree/VariableHeightLayoutCache.java
@@ -381,10 +381,10 @@ public class VariableHeightLayoutCache
TreePath path = null;
// Search row in the nodes map. TODO: This is inefficient, optimize this.
- Enumeration nodesEnum = nodes.elements();
+ Enumeration<NodeRecord> nodesEnum = nodes.elements();
while (nodesEnum.hasMoreElements() && path == null)
{
- NodeRecord record = (NodeRecord) nodesEnum.nextElement();
+ NodeRecord record = nodesEnum.nextElement();
if (record.row == row)
path = record.getPath();
}
@@ -498,7 +498,7 @@ public class VariableHeightLayoutCache
{
if (dirty)
update();
- Vector p = new Vector(parentPath.getPathCount());
+ Vector<TreePath> p = new Vector<TreePath>(parentPath.getPathCount());
Object node;
NodeRecord nr;
@@ -507,7 +507,7 @@ public class VariableHeightLayoutCache
node = parentPath.getPathComponent(i);
nr = nodes.get(node);
if (nr != null && nr.row >= 0)
- p.add(node);
+ p.add((TreePath) node);
}
return p.elements();
}
diff --git a/libjava/classpath/javax/swing/undo/StateEdit.java b/libjava/classpath/javax/swing/undo/StateEdit.java
index 55282ab37c8..a032d02cdb8 100644
--- a/libjava/classpath/javax/swing/undo/StateEdit.java
+++ b/libjava/classpath/javax/swing/undo/StateEdit.java
@@ -248,7 +248,7 @@ public class StateEdit
*/
protected void removeRedundantState()
{
- Iterator i = preState.keySet().iterator();
+ Iterator<Object> i = preState.keySet().iterator();
while (i.hasNext())
{
Object key = i.next();
diff --git a/libjava/classpath/javax/swing/undo/UndoableEditSupport.java b/libjava/classpath/javax/swing/undo/UndoableEditSupport.java
index b5a93341954..2e5d909543a 100644
--- a/libjava/classpath/javax/swing/undo/UndoableEditSupport.java
+++ b/libjava/classpath/javax/swing/undo/UndoableEditSupport.java
@@ -167,7 +167,7 @@ public class UndoableEditSupport
protected void _postEdit(UndoableEdit edit)
{
UndoableEditEvent event;
- Iterator iter;
+ Iterator<UndoableEditListener> iter;
// Do nothing if we have no listeners.
if (listeners.isEmpty())
@@ -181,9 +181,9 @@ public class UndoableEditSupport
// Iterator, a java.util.ConcurrentModificationException; in the
// case of a direct loop over the Vector elements, some
// index-out-of-bounds exception).
- iter = ((Vector) listeners.clone()).iterator();
+ iter = new Vector<UndoableEditListener>(listeners).iterator();
while (iter.hasNext())
- ((UndoableEditListener) iter.next()).undoableEditHappened(event);
+ iter.next().undoableEditHappened(event);
}
diff --git a/libjava/classpath/javax/xml/stream/XMLEventFactory.java b/libjava/classpath/javax/xml/stream/XMLEventFactory.java
index 30e160793b9..7e7a98140a7 100644
--- a/libjava/classpath/javax/xml/stream/XMLEventFactory.java
+++ b/libjava/classpath/javax/xml/stream/XMLEventFactory.java
@@ -1,5 +1,5 @@
/* XMLEventFactory.java --
- Copyright (C) 2005,2006 Free Software Foundation, Inc.
+ Copyright (C) 2005,2006,2009 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -94,8 +94,14 @@ public abstract class XMLEventFactory
* system resource</li>
* <li>the default factory class</li>
* </ol>
+ * @param factoryId name of the factory to find, same as a property name
+ * @param classLoader the class loader to use
+ * @return the factory implementation
+ * @exception FactoryConfigurationError if an instance of this factory
+ * cannot be loaded
*/
- static XMLEventFactory newInstance(String factoryId, ClassLoader classLoader)
+ public static XMLEventFactory newInstance(String factoryId,
+ ClassLoader classLoader)
throws FactoryConfigurationError
{
ClassLoader loader = classLoader;
diff --git a/libjava/classpath/javax/xml/stream/XMLInputFactory.java b/libjava/classpath/javax/xml/stream/XMLInputFactory.java
index 437bf83b5ec..e57449d7716 100644
--- a/libjava/classpath/javax/xml/stream/XMLInputFactory.java
+++ b/libjava/classpath/javax/xml/stream/XMLInputFactory.java
@@ -1,5 +1,5 @@
/* XMLInputFactory.java --
- Copyright (C) 2005,2006 Free Software Foundation, Inc.
+ Copyright (C) 2005,2006,2009 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -206,6 +206,11 @@ public abstract class XMLInputFactory
* system resource</li>
* <li>the default factory class</li>
* </ol>
+ * @param factoryId name of the factory, same as a property name
+ * @param classLoader the class loader to use
+ * @return the factory implementation
+ * @exception FactoryConfigurationError if an instance of this factory
+ * cannot be loaded
*/
public static XMLInputFactory newInstance(String factoryId,
ClassLoader classLoader)
diff --git a/libjava/classpath/javax/xml/stream/XMLOutputFactory.java b/libjava/classpath/javax/xml/stream/XMLOutputFactory.java
index 908f84f262a..ef89b6497bd 100644
--- a/libjava/classpath/javax/xml/stream/XMLOutputFactory.java
+++ b/libjava/classpath/javax/xml/stream/XMLOutputFactory.java
@@ -1,5 +1,5 @@
/* XMLOutputFactory.java --
- Copyright (C) 2005,2006 Free Software Foundation, Inc.
+ Copyright (C) 2005,2006,2009 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -86,6 +86,16 @@ public abstract class XMLOutputFactory
/**
* Creates a new <b>output</b> factory.
+ * @see #newInstance(String,ClassLoader)
+ */
+ public static XMLOutputFactory newInstance()
+ throws FactoryConfigurationError
+ {
+ return newInstance(null, null);
+ }
+
+ /**
+ * Creates a new <b>output</b> factory.
* The implementation class to load is the first found in the following
* locations:
* <ol>
@@ -98,25 +108,35 @@ public abstract class XMLOutputFactory
* system resource</li>
* <li>the default factory class</li>
* </ol>
+ * @param factoryId the name of the factory, same as the property
+ * @param classLoader the class loader to use
+ * @return a new factory instance
+ * @exception FactoryConfigurationError if an instance of this factory
+ * could not be loaded
*/
- public static XMLOutputFactory newInstance()
+ public static XMLOutputFactory newInstance(String factoryId,
+ ClassLoader classLoader)
throws FactoryConfigurationError
{
- ClassLoader loader = Thread.currentThread().getContextClassLoader();
- if (loader == null)
+ if (classLoader == null)
{
- loader = XMLOutputFactory.class.getClassLoader();
+ classLoader = Thread.currentThread().getContextClassLoader();
+ }
+ if (classLoader == null)
+ {
+ classLoader = XMLOutputFactory.class.getClassLoader();
}
String className = null;
int count = 0;
do
{
- className = getFactoryClassName(loader, count++);
+ className = getFactoryClassName(classLoader, count++);
if (className != null)
{
try
{
- Class<?> t = (loader != null) ? loader.loadClass(className) :
+ Class<?> t = (classLoader != null) ?
+ classLoader.loadClass(className) :
Class.forName(className);
return (XMLOutputFactory) t.newInstance();
}
@@ -184,18 +204,6 @@ public abstract class XMLOutputFactory
}
/**
- * Creates a new <b>input</b> factory.
- * This appears to be an API design bug.
- * @see javax.xml.stream.XMLInputFactory.newInstance(String,ClassLoader)
- */
- public static XMLInputFactory newInstance(String factoryId,
- ClassLoader classLoader)
- throws FactoryConfigurationError
- {
- return XMLInputFactory.newInstance(factoryId, classLoader);
- }
-
- /**
* Creates a new stream writer.
*/
public abstract XMLStreamWriter createXMLStreamWriter(Writer stream)
diff --git a/libjava/classpath/javax/xml/stream/events/Namespace.java b/libjava/classpath/javax/xml/stream/events/Namespace.java
index 2275432159a..13dd92fdaf7 100644
--- a/libjava/classpath/javax/xml/stream/events/Namespace.java
+++ b/libjava/classpath/javax/xml/stream/events/Namespace.java
@@ -41,7 +41,7 @@ package javax.xml.stream.events;
* A namespace declaration event.
*/
public interface Namespace
- extends XMLEvent
+ extends Attribute
{
/**
diff --git a/libjava/classpath/javax/xml/stream/util/ReaderDelegate.java b/libjava/classpath/javax/xml/stream/util/StreamReaderDelegate.java
index d502866fbcc..1c407a2454b 100644
--- a/libjava/classpath/javax/xml/stream/util/ReaderDelegate.java
+++ b/libjava/classpath/javax/xml/stream/util/StreamReaderDelegate.java
@@ -1,5 +1,5 @@
-/* ReaderDelegate.java --
- Copyright (C) 2005,2006 Free Software Foundation, Inc.
+/* StreamReaderDelegate.java --
+ Copyright (C) 2005,2006,2009 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -47,7 +47,7 @@ import javax.xml.stream.XMLStreamReader;
/**
* Base class for XML stream reader filters.
*/
-public class ReaderDelegate
+public class StreamReaderDelegate
implements XMLStreamReader, XMLStreamConstants
{
@@ -56,14 +56,14 @@ public class ReaderDelegate
/**
* Constructs an empty filter with no parent set.
*/
- public ReaderDelegate()
+ public StreamReaderDelegate()
{
}
/**
* Constructs an empty filter with the specfied parent.
*/
- public ReaderDelegate(XMLStreamReader reader)
+ public StreamReaderDelegate(XMLStreamReader reader)
{
parent = reader;
}
diff --git a/libjava/classpath/lib/Makefile.in b/libjava/classpath/lib/Makefile.in
index 2248ce995a7..ccfd8a1e505 100644
--- a/libjava/classpath/lib/Makefile.in
+++ b/libjava/classpath/lib/Makefile.in
@@ -42,6 +42,9 @@ DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/../../config/lead-dot.m4 \
+ $(top_srcdir)/../../config/lib-ld.m4 \
+ $(top_srcdir)/../../config/lib-link.m4 \
+ $(top_srcdir)/../../config/lib-prefix.m4 \
$(top_srcdir)/../../config/multi.m4 \
$(top_srcdir)/../../config/no-executables.m4 \
$(top_srcdir)/../../config/override.m4 \
@@ -60,9 +63,7 @@ am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_func_which_gethostbyname_r.m4 \
$(top_srcdir)/m4/gcc_attribute.m4 $(top_srcdir)/m4/iconv.m4 \
- $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
- $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/../../mkinstalldirs
diff --git a/libjava/classpath/lib/gnu/java/locale/LocaleData.class b/libjava/classpath/lib/gnu/java/locale/LocaleData.class
index 64d83fd1a9d..ccee011a495 100644
--- a/libjava/classpath/lib/gnu/java/locale/LocaleData.class
+++ b/libjava/classpath/lib/gnu/java/locale/LocaleData.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/IppPrintService.class b/libjava/classpath/lib/gnu/javax/print/ipp/IppPrintService.class
index 7ec693ef159..3818d051778 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/IppPrintService.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/IppPrintService.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/IppRequest$RequestWriter.class b/libjava/classpath/lib/gnu/javax/print/ipp/IppRequest$RequestWriter.class
index a7697f9415a..982f6d1d4c6 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/IppRequest$RequestWriter.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/IppRequest$RequestWriter.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/IppResponse$ResponseReader.class b/libjava/classpath/lib/gnu/javax/print/ipp/IppResponse$ResponseReader.class
index 89113302b68..b94e6ca804e 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/IppResponse$ResponseReader.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/IppResponse$ResponseReader.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/IppResponse.class b/libjava/classpath/lib/gnu/javax/print/ipp/IppResponse.class
index 995c0e1441f..f92f1907f71 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/IppResponse.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/IppResponse.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/IppUtilities.class b/libjava/classpath/lib/gnu/javax/print/ipp/IppUtilities.class
index 9117509f816..92608e39bac 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/IppUtilities.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/IppUtilities.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/DetailedStatusMessage.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/DetailedStatusMessage.class
index a673700138b..b4db2b06420 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/DetailedStatusMessage.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/DetailedStatusMessage.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/DocumentAccessError.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/DocumentAccessError.class
index 810d80dfde7..c2f0f0aab3a 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/DocumentAccessError.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/DocumentAccessError.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/RequestedAttributes.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/RequestedAttributes.class
index 95b93f0f92d..c6edcb67004 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/RequestedAttributes.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/RequestedAttributes.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/StatusMessage.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/StatusMessage.class
index 529bf4eebd0..e353fdcfacc 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/StatusMessage.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/StatusMessage.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/UnknownAttribute.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/UnknownAttribute.class
index 61158195de3..14a4906f95e 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/UnknownAttribute.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/UnknownAttribute.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/CopiesDefault.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/CopiesDefault.class
index 70d93f6022e..aea1a990afb 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/CopiesDefault.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/CopiesDefault.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/DocumentFormatDefault.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/DocumentFormatDefault.class
index fd452d080ea..992178e5685 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/DocumentFormatDefault.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/DocumentFormatDefault.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/FinishingsDefault.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/FinishingsDefault.class
index 31904750b1d..9b401b789e8 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/FinishingsDefault.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/FinishingsDefault.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/JobHoldUntilDefault.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/JobHoldUntilDefault.class
index 4c24ab0bae4..5129f4d86c2 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/JobHoldUntilDefault.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/JobHoldUntilDefault.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/JobPriorityDefault.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/JobPriorityDefault.class
index 5a5542fb612..be34bf09f36 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/JobPriorityDefault.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/JobPriorityDefault.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/JobSheetsDefault.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/JobSheetsDefault.class
index 175d9df5ed9..7510767365e 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/JobSheetsDefault.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/JobSheetsDefault.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/MediaDefault.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/MediaDefault.class
index 1b569744f37..8b0fe5caa7f 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/MediaDefault.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/MediaDefault.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/MultipleDocumentHandlingDefault.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/MultipleDocumentHandlingDefault.class
index b0aaf09781a..9020b978618 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/MultipleDocumentHandlingDefault.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/MultipleDocumentHandlingDefault.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/NumberUpDefault.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/NumberUpDefault.class
index 85ab6b4a025..9bab05f2dab 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/NumberUpDefault.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/NumberUpDefault.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/OrientationRequestedDefault.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/OrientationRequestedDefault.class
index 06ea2a66c82..d9794418950 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/OrientationRequestedDefault.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/OrientationRequestedDefault.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/PrintQualityDefault.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/PrintQualityDefault.class
index aa0d7a04528..9c1bb3764c7 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/PrintQualityDefault.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/PrintQualityDefault.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/PrinterResolutionDefault.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/PrinterResolutionDefault.class
index 52518aae293..4982031eb7f 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/PrinterResolutionDefault.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/PrinterResolutionDefault.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/SidesDefault.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/SidesDefault.class
index ebb5f42d30a..5bd1131e339 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/SidesDefault.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/defaults/SidesDefault.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/AttributesCharset.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/AttributesCharset.class
index 2bb5b6f6e15..1fdc24b6159 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/AttributesCharset.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/AttributesCharset.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/AttributesNaturalLanguage.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/AttributesNaturalLanguage.class
index bfe2a71b35d..9f6aa0d7655 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/AttributesNaturalLanguage.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/AttributesNaturalLanguage.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/JobDetailedStatusMessages.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/JobDetailedStatusMessages.class
index cb8fb466771..eb4d398f66f 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/JobDetailedStatusMessages.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/JobDetailedStatusMessages.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/JobDocumentAccessErrors.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/JobDocumentAccessErrors.class
index 1d80bce239b..85d0de33a44 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/JobDocumentAccessErrors.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/JobDocumentAccessErrors.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/JobId.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/JobId.class
index 66dc5e1025c..1b791423e8e 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/JobId.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/JobId.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/JobMoreInfo.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/JobMoreInfo.class
index dd4d0972aa3..c483d97afd0 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/JobMoreInfo.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/JobMoreInfo.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/JobPrinterUri.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/JobPrinterUri.class
index f05531cccb9..05667181a98 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/JobPrinterUri.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/JobPrinterUri.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/JobStateMessage.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/JobStateMessage.class
index 26c28a9f320..9ad9fa1548c 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/JobStateMessage.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/JobStateMessage.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/JobUri.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/JobUri.class
index bcb38baf778..0d89cb0e21a 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/JobUri.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/job/JobUri.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/printer/CharsetConfigured.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/printer/CharsetConfigured.class
index 473e134dd01..4488f933f6e 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/printer/CharsetConfigured.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/printer/CharsetConfigured.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/printer/DocumentFormat.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/printer/DocumentFormat.class
index 164c6fef2a2..6bc358a9bf5 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/printer/DocumentFormat.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/printer/DocumentFormat.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/printer/MultipleOperationTimeOut.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/printer/MultipleOperationTimeOut.class
index d3fec69ffcb..b06f69373ff 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/printer/MultipleOperationTimeOut.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/printer/MultipleOperationTimeOut.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/printer/NaturalLanguageConfigured.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/printer/NaturalLanguageConfigured.class
index 421196e8ce8..a3a89be33c7 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/printer/NaturalLanguageConfigured.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/printer/NaturalLanguageConfigured.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/printer/PrinterCurrentTime.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/printer/PrinterCurrentTime.class
index 95d28bd4603..c9d4bb5c08e 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/printer/PrinterCurrentTime.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/printer/PrinterCurrentTime.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/printer/PrinterDriverInstaller.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/printer/PrinterDriverInstaller.class
index db550ba8905..1ecde0e1060 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/printer/PrinterDriverInstaller.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/printer/PrinterDriverInstaller.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/printer/PrinterStateMessage.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/printer/PrinterStateMessage.class
index 3c01302eaf7..be4f40c2816 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/printer/PrinterStateMessage.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/printer/PrinterStateMessage.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/printer/PrinterUpTime.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/printer/PrinterUpTime.class
index 55c5a0bb008..15764bbb7b3 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/printer/PrinterUpTime.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/printer/PrinterUpTime.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/CharsetSupported.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/CharsetSupported.class
index 1c79ec97fe3..91f62fbcee1 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/CharsetSupported.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/CharsetSupported.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/CompressionSupported.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/CompressionSupported.class
index eb72871d84b..3a8667304da 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/CompressionSupported.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/CompressionSupported.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/DocumentFormatSupported.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/DocumentFormatSupported.class
index f61ae2a2c9b..90c40390460 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/DocumentFormatSupported.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/DocumentFormatSupported.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/FinishingsSupported.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/FinishingsSupported.class
index ae13c0ebad4..aeb3c224102 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/FinishingsSupported.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/FinishingsSupported.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/GeneratedNaturalLanguageSupported.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/GeneratedNaturalLanguageSupported.class
index e699d06b143..6d883739be7 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/GeneratedNaturalLanguageSupported.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/GeneratedNaturalLanguageSupported.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/IppVersionsSupported.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/IppVersionsSupported.class
index 1d5c711ec48..a151b39f8a0 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/IppVersionsSupported.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/IppVersionsSupported.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/JobHoldUntilSupported.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/JobHoldUntilSupported.class
index beff50151c9..ace45a7daca 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/JobHoldUntilSupported.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/JobHoldUntilSupported.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/JobSheetsSupported.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/JobSheetsSupported.class
index f3fa0734ab5..c7c70d329b7 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/JobSheetsSupported.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/JobSheetsSupported.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/MediaSupported.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/MediaSupported.class
index 3732dcb9ee0..e6eda703775 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/MediaSupported.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/MediaSupported.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/MultipleDocumentHandlingSupported.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/MultipleDocumentHandlingSupported.class
index 583af160e22..5de71b11ee9 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/MultipleDocumentHandlingSupported.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/MultipleDocumentHandlingSupported.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/MultipleDocumentJobsSupported.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/MultipleDocumentJobsSupported.class
index 178d41ac7e7..9498a263d3a 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/MultipleDocumentJobsSupported.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/MultipleDocumentJobsSupported.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/OperationsSupported.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/OperationsSupported.class
index 90fdd259480..79cfb0f88b6 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/OperationsSupported.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/OperationsSupported.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/OrientationRequestedSupported.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/OrientationRequestedSupported.class
index b5e02a44882..15c6ba18647 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/OrientationRequestedSupported.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/OrientationRequestedSupported.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/PageRangesSupported.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/PageRangesSupported.class
index a29d08c318e..3f9078d1475 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/PageRangesSupported.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/PageRangesSupported.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/PrintQualitySupported.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/PrintQualitySupported.class
index 52db096290e..34ebd60df82 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/PrintQualitySupported.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/PrintQualitySupported.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/PrinterResolutionSupported.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/PrinterResolutionSupported.class
index 93ea94f318a..7ba27438a71 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/PrinterResolutionSupported.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/PrinterResolutionSupported.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/PrinterUriSupported.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/PrinterUriSupported.class
index 561eaffb240..f18d74852c8 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/PrinterUriSupported.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/PrinterUriSupported.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/SidesSupported.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/SidesSupported.class
index ac100801793..bf1bf2118e6 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/SidesSupported.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/SidesSupported.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/UriAuthenticationSupported.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/UriAuthenticationSupported.class
index c90e6345f5f..d160f9f7cd1 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/UriAuthenticationSupported.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/UriAuthenticationSupported.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/UriSecuritySupported.class b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/UriSecuritySupported.class
index fcaa2fffddd..0e088e215f8 100644
--- a/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/UriSecuritySupported.class
+++ b/libjava/classpath/lib/gnu/javax/print/ipp/attribute/supported/UriSecuritySupported.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/javax/swing/text/html/css/Selector.class b/libjava/classpath/lib/gnu/javax/swing/text/html/css/Selector.class
index 0b380a047e0..617ce9af3ad 100644
--- a/libjava/classpath/lib/gnu/javax/swing/text/html/css/Selector.class
+++ b/libjava/classpath/lib/gnu/javax/swing/text/html/css/Selector.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/xml/stream/FilteredStreamReader.class b/libjava/classpath/lib/gnu/xml/stream/FilteredStreamReader.class
index 52af9eb1d38..e3f8cd25d96 100644
--- a/libjava/classpath/lib/gnu/xml/stream/FilteredStreamReader.class
+++ b/libjava/classpath/lib/gnu/xml/stream/FilteredStreamReader.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/xml/stream/NamespaceImpl.class b/libjava/classpath/lib/gnu/xml/stream/NamespaceImpl.class
index dc1e8a43861..2d85ccaddbd 100644
--- a/libjava/classpath/lib/gnu/xml/stream/NamespaceImpl.class
+++ b/libjava/classpath/lib/gnu/xml/stream/NamespaceImpl.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/xml/stream/XIncludeFilter.class b/libjava/classpath/lib/gnu/xml/stream/XIncludeFilter.class
index 8ddbd943ebf..773d6623bb8 100644
--- a/libjava/classpath/lib/gnu/xml/stream/XIncludeFilter.class
+++ b/libjava/classpath/lib/gnu/xml/stream/XIncludeFilter.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/xml/stream/XMLEventAllocatorImpl.class b/libjava/classpath/lib/gnu/xml/stream/XMLEventAllocatorImpl.class
index e569c9c843e..c4c457a338c 100644
--- a/libjava/classpath/lib/gnu/xml/stream/XMLEventAllocatorImpl.class
+++ b/libjava/classpath/lib/gnu/xml/stream/XMLEventAllocatorImpl.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/xml/stream/XMLEventFactoryImpl.class b/libjava/classpath/lib/gnu/xml/stream/XMLEventFactoryImpl.class
index cbb14e6c529..440ddc6f655 100644
--- a/libjava/classpath/lib/gnu/xml/stream/XMLEventFactoryImpl.class
+++ b/libjava/classpath/lib/gnu/xml/stream/XMLEventFactoryImpl.class
Binary files differ
diff --git a/libjava/classpath/lib/gnu/xml/stream/XMLStreamWriterImpl.class b/libjava/classpath/lib/gnu/xml/stream/XMLStreamWriterImpl.class
index de4a722c113..12d5ffc1dca 100644
--- a/libjava/classpath/lib/gnu/xml/stream/XMLStreamWriterImpl.class
+++ b/libjava/classpath/lib/gnu/xml/stream/XMLStreamWriterImpl.class
Binary files differ
diff --git a/libjava/classpath/lib/java/util/Scanner.class b/libjava/classpath/lib/java/util/Scanner.class
index 1e95312c90e..65be0e897ee 100644
--- a/libjava/classpath/lib/java/util/Scanner.class
+++ b/libjava/classpath/lib/java/util/Scanner.class
Binary files differ
diff --git a/libjava/classpath/lib/java/util/TreeMap$3.class b/libjava/classpath/lib/java/util/TreeMap$3.class
index cd8444dcf7c..b1058054be3 100644
--- a/libjava/classpath/lib/java/util/TreeMap$3.class
+++ b/libjava/classpath/lib/java/util/TreeMap$3.class
Binary files differ
diff --git a/libjava/classpath/lib/java/util/regex/Matcher.class b/libjava/classpath/lib/java/util/regex/Matcher.class
index 0032b67ec14..d45d3475212 100644
--- a/libjava/classpath/lib/java/util/regex/Matcher.class
+++ b/libjava/classpath/lib/java/util/regex/Matcher.class
Binary files differ
diff --git a/libjava/classpath/lib/javax/security/auth/kerberos/KerberosTicket.class b/libjava/classpath/lib/javax/security/auth/kerberos/KerberosTicket.class
index d198c53a833..08c83dde41d 100644
--- a/libjava/classpath/lib/javax/security/auth/kerberos/KerberosTicket.class
+++ b/libjava/classpath/lib/javax/security/auth/kerberos/KerberosTicket.class
Binary files differ
diff --git a/libjava/classpath/lib/javax/security/auth/kerberos/KeyImpl.class b/libjava/classpath/lib/javax/security/auth/kerberos/KeyImpl.class
index 4e6b58739b4..21a1090fbb7 100644
--- a/libjava/classpath/lib/javax/security/auth/kerberos/KeyImpl.class
+++ b/libjava/classpath/lib/javax/security/auth/kerberos/KeyImpl.class
Binary files differ
diff --git a/libjava/classpath/lib/javax/swing/text/html/HTMLEditorKit.class b/libjava/classpath/lib/javax/swing/text/html/HTMLEditorKit.class
index ba5209e1a5b..bcbf306c922 100644
--- a/libjava/classpath/lib/javax/swing/text/html/HTMLEditorKit.class
+++ b/libjava/classpath/lib/javax/swing/text/html/HTMLEditorKit.class
Binary files differ
diff --git a/libjava/classpath/lib/javax/swing/text/html/HTMLWriter.class b/libjava/classpath/lib/javax/swing/text/html/HTMLWriter.class
index d213fcbc604..81822c38a3a 100644
--- a/libjava/classpath/lib/javax/swing/text/html/HTMLWriter.class
+++ b/libjava/classpath/lib/javax/swing/text/html/HTMLWriter.class
Binary files differ
diff --git a/libjava/classpath/lib/javax/swing/text/html/ImageView$1.class b/libjava/classpath/lib/javax/swing/text/html/ImageView$1.class
index 81ef92d48c5..e2596e2f471 100644
--- a/libjava/classpath/lib/javax/swing/text/html/ImageView$1.class
+++ b/libjava/classpath/lib/javax/swing/text/html/ImageView$1.class
Binary files differ
diff --git a/libjava/classpath/lib/javax/swing/text/html/ImageView.class b/libjava/classpath/lib/javax/swing/text/html/ImageView.class
index d3bc2f35e04..4e76a81b2b3 100644
--- a/libjava/classpath/lib/javax/swing/text/html/ImageView.class
+++ b/libjava/classpath/lib/javax/swing/text/html/ImageView.class
Binary files differ
diff --git a/libjava/classpath/lib/javax/swing/text/html/MinimalHTMLWriter.class b/libjava/classpath/lib/javax/swing/text/html/MinimalHTMLWriter.class
index 864c6d2597c..618b87947a4 100644
--- a/libjava/classpath/lib/javax/swing/text/html/MinimalHTMLWriter.class
+++ b/libjava/classpath/lib/javax/swing/text/html/MinimalHTMLWriter.class
Binary files differ
diff --git a/libjava/classpath/lib/javax/swing/text/html/MultiAttributeSet$MultiNameEnumeration.class b/libjava/classpath/lib/javax/swing/text/html/MultiAttributeSet$MultiNameEnumeration.class
index 8ed0c9e12dc..12c63bcdb04 100644
--- a/libjava/classpath/lib/javax/swing/text/html/MultiAttributeSet$MultiNameEnumeration.class
+++ b/libjava/classpath/lib/javax/swing/text/html/MultiAttributeSet$MultiNameEnumeration.class
Binary files differ
diff --git a/libjava/classpath/lib/javax/swing/text/html/MultiAttributeSet.class b/libjava/classpath/lib/javax/swing/text/html/MultiAttributeSet.class
index 535ec932b08..35de58ebf24 100644
--- a/libjava/classpath/lib/javax/swing/text/html/MultiAttributeSet.class
+++ b/libjava/classpath/lib/javax/swing/text/html/MultiAttributeSet.class
Binary files differ
diff --git a/libjava/classpath/lib/javax/swing/text/html/MultiStyle.class b/libjava/classpath/lib/javax/swing/text/html/MultiStyle.class
index 3904a2c29c3..ecf472579f6 100644
--- a/libjava/classpath/lib/javax/swing/text/html/MultiStyle.class
+++ b/libjava/classpath/lib/javax/swing/text/html/MultiStyle.class
Binary files differ
diff --git a/libjava/classpath/lib/javax/swing/text/html/ObjectView.class b/libjava/classpath/lib/javax/swing/text/html/ObjectView.class
index b2004547c1b..1e44c15de25 100644
--- a/libjava/classpath/lib/javax/swing/text/html/ObjectView.class
+++ b/libjava/classpath/lib/javax/swing/text/html/ObjectView.class
Binary files differ
diff --git a/libjava/classpath/lib/javax/swing/text/html/StyleSheet$BoxPainter.class b/libjava/classpath/lib/javax/swing/text/html/StyleSheet$BoxPainter.class
index 9ceb67c7a63..2109f1f4734 100644
--- a/libjava/classpath/lib/javax/swing/text/html/StyleSheet$BoxPainter.class
+++ b/libjava/classpath/lib/javax/swing/text/html/StyleSheet$BoxPainter.class
Binary files differ
diff --git a/libjava/classpath/lib/javax/swing/text/html/StyleSheet$ListPainter.class b/libjava/classpath/lib/javax/swing/text/html/StyleSheet$ListPainter.class
index 76409493a57..5c70650aa9a 100644
--- a/libjava/classpath/lib/javax/swing/text/html/StyleSheet$ListPainter.class
+++ b/libjava/classpath/lib/javax/swing/text/html/StyleSheet$ListPainter.class
Binary files differ
diff --git a/libjava/classpath/lib/javax/swing/text/html/StyleSheet.class b/libjava/classpath/lib/javax/swing/text/html/StyleSheet.class
index c56498c117d..fcdb02f9200 100644
--- a/libjava/classpath/lib/javax/swing/text/html/StyleSheet.class
+++ b/libjava/classpath/lib/javax/swing/text/html/StyleSheet.class
Binary files differ
diff --git a/libjava/classpath/lib/javax/swing/text/html/TableView$CellView.class b/libjava/classpath/lib/javax/swing/text/html/TableView$CellView.class
index 92c9880f9d8..09a1f0e7dd2 100644
--- a/libjava/classpath/lib/javax/swing/text/html/TableView$CellView.class
+++ b/libjava/classpath/lib/javax/swing/text/html/TableView$CellView.class
Binary files differ
diff --git a/libjava/classpath/lib/javax/swing/text/html/TableView$RowView.class b/libjava/classpath/lib/javax/swing/text/html/TableView$RowView.class
index e217b0d741c..98200acb11c 100644
--- a/libjava/classpath/lib/javax/swing/text/html/TableView$RowView.class
+++ b/libjava/classpath/lib/javax/swing/text/html/TableView$RowView.class
Binary files differ
diff --git a/libjava/classpath/lib/javax/swing/text/html/TableView.class b/libjava/classpath/lib/javax/swing/text/html/TableView.class
index 21efb02fc53..0a2f747374b 100644
--- a/libjava/classpath/lib/javax/swing/text/html/TableView.class
+++ b/libjava/classpath/lib/javax/swing/text/html/TableView.class
Binary files differ
diff --git a/libjava/classpath/lib/javax/swing/tree/DefaultMutableTreeNode$BreadthFirstEnumeration.class b/libjava/classpath/lib/javax/swing/tree/DefaultMutableTreeNode$BreadthFirstEnumeration.class
index 6f23724597d..25f7b08b78e 100644
--- a/libjava/classpath/lib/javax/swing/tree/DefaultMutableTreeNode$BreadthFirstEnumeration.class
+++ b/libjava/classpath/lib/javax/swing/tree/DefaultMutableTreeNode$BreadthFirstEnumeration.class
Binary files differ
diff --git a/libjava/classpath/lib/javax/swing/tree/DefaultMutableTreeNode$PostorderEnumeration.class b/libjava/classpath/lib/javax/swing/tree/DefaultMutableTreeNode$PostorderEnumeration.class
index 7917c51e95a..58240b4697f 100644
--- a/libjava/classpath/lib/javax/swing/tree/DefaultMutableTreeNode$PostorderEnumeration.class
+++ b/libjava/classpath/lib/javax/swing/tree/DefaultMutableTreeNode$PostorderEnumeration.class
Binary files differ
diff --git a/libjava/classpath/lib/javax/swing/tree/DefaultMutableTreeNode$PreorderEnumeration.class b/libjava/classpath/lib/javax/swing/tree/DefaultMutableTreeNode$PreorderEnumeration.class
index 891da01ae65..f370cc8fdcb 100644
--- a/libjava/classpath/lib/javax/swing/tree/DefaultMutableTreeNode$PreorderEnumeration.class
+++ b/libjava/classpath/lib/javax/swing/tree/DefaultMutableTreeNode$PreorderEnumeration.class
Binary files differ
diff --git a/libjava/classpath/lib/javax/swing/tree/DefaultMutableTreeNode.class b/libjava/classpath/lib/javax/swing/tree/DefaultMutableTreeNode.class
index 3a2d2889bff..61185f2d28e 100644
--- a/libjava/classpath/lib/javax/swing/tree/DefaultMutableTreeNode.class
+++ b/libjava/classpath/lib/javax/swing/tree/DefaultMutableTreeNode.class
Binary files differ
diff --git a/libjava/classpath/lib/javax/swing/tree/FixedHeightLayoutCache.class b/libjava/classpath/lib/javax/swing/tree/FixedHeightLayoutCache.class
index 7bb67005cf5..d493e827fb6 100644
--- a/libjava/classpath/lib/javax/swing/tree/FixedHeightLayoutCache.class
+++ b/libjava/classpath/lib/javax/swing/tree/FixedHeightLayoutCache.class
Binary files differ
diff --git a/libjava/classpath/lib/javax/swing/tree/VariableHeightLayoutCache.class b/libjava/classpath/lib/javax/swing/tree/VariableHeightLayoutCache.class
index 607238c1744..fae368fe419 100644
--- a/libjava/classpath/lib/javax/swing/tree/VariableHeightLayoutCache.class
+++ b/libjava/classpath/lib/javax/swing/tree/VariableHeightLayoutCache.class
Binary files differ
diff --git a/libjava/classpath/lib/javax/swing/undo/StateEdit.class b/libjava/classpath/lib/javax/swing/undo/StateEdit.class
index 9a5067181d7..c5c079cee89 100644
--- a/libjava/classpath/lib/javax/swing/undo/StateEdit.class
+++ b/libjava/classpath/lib/javax/swing/undo/StateEdit.class
Binary files differ
diff --git a/libjava/classpath/lib/javax/swing/undo/UndoableEditSupport.class b/libjava/classpath/lib/javax/swing/undo/UndoableEditSupport.class
index 494247e4249..e4d6664394e 100644
--- a/libjava/classpath/lib/javax/swing/undo/UndoableEditSupport.class
+++ b/libjava/classpath/lib/javax/swing/undo/UndoableEditSupport.class
Binary files differ
diff --git a/libjava/classpath/lib/javax/xml/stream/XMLEventFactory.class b/libjava/classpath/lib/javax/xml/stream/XMLEventFactory.class
index 1059715baf4..4207957c090 100644
--- a/libjava/classpath/lib/javax/xml/stream/XMLEventFactory.class
+++ b/libjava/classpath/lib/javax/xml/stream/XMLEventFactory.class
Binary files differ
diff --git a/libjava/classpath/lib/javax/xml/stream/XMLInputFactory.class b/libjava/classpath/lib/javax/xml/stream/XMLInputFactory.class
index 24d1a36a604..53d2e006d63 100644
--- a/libjava/classpath/lib/javax/xml/stream/XMLInputFactory.class
+++ b/libjava/classpath/lib/javax/xml/stream/XMLInputFactory.class
Binary files differ
diff --git a/libjava/classpath/lib/javax/xml/stream/XMLOutputFactory.class b/libjava/classpath/lib/javax/xml/stream/XMLOutputFactory.class
index dab5cee5a12..2279f6b7939 100644
--- a/libjava/classpath/lib/javax/xml/stream/XMLOutputFactory.class
+++ b/libjava/classpath/lib/javax/xml/stream/XMLOutputFactory.class
Binary files differ
diff --git a/libjava/classpath/lib/javax/xml/stream/events/Namespace.class b/libjava/classpath/lib/javax/xml/stream/events/Namespace.class
index 9871cf6c8a0..54b318e437f 100644
--- a/libjava/classpath/lib/javax/xml/stream/events/Namespace.class
+++ b/libjava/classpath/lib/javax/xml/stream/events/Namespace.class
Binary files differ
diff --git a/libjava/classpath/lib/javax/xml/stream/util/StreamReaderDelegate.class b/libjava/classpath/lib/javax/xml/stream/util/StreamReaderDelegate.class
new file mode 100644
index 00000000000..90ce1d54945
--- /dev/null
+++ b/libjava/classpath/lib/javax/xml/stream/util/StreamReaderDelegate.class
Binary files differ
diff --git a/libjava/classpath/lib/org/ietf/jgss/GSSManager.class b/libjava/classpath/lib/org/ietf/jgss/GSSManager.class
index a30da157dbe..e9acdb7eedc 100644
--- a/libjava/classpath/lib/org/ietf/jgss/GSSManager.class
+++ b/libjava/classpath/lib/org/ietf/jgss/GSSManager.class
Binary files differ
diff --git a/libjava/classpath/lib/org/omg/CORBA/LocalObject.class b/libjava/classpath/lib/org/omg/CORBA/LocalObject.class
index f666fb8fc32..f2a0dd036bd 100644
--- a/libjava/classpath/lib/org/omg/CORBA/LocalObject.class
+++ b/libjava/classpath/lib/org/omg/CORBA/LocalObject.class
Binary files differ
diff --git a/libjava/classpath/lib/org/omg/CORBA/portable/Delegate.class b/libjava/classpath/lib/org/omg/CORBA/portable/Delegate.class
index 7e5cf6ae038..8a4b11e483c 100644
--- a/libjava/classpath/lib/org/omg/CORBA/portable/Delegate.class
+++ b/libjava/classpath/lib/org/omg/CORBA/portable/Delegate.class
Binary files differ
diff --git a/libjava/classpath/lib/org/omg/CORBA/portable/InputStream.class b/libjava/classpath/lib/org/omg/CORBA/portable/InputStream.class
index a60458485e8..87babc4cef5 100644
--- a/libjava/classpath/lib/org/omg/CORBA/portable/InputStream.class
+++ b/libjava/classpath/lib/org/omg/CORBA/portable/InputStream.class
Binary files differ
diff --git a/libjava/classpath/lib/org/omg/CORBA/portable/ObjectImpl.class b/libjava/classpath/lib/org/omg/CORBA/portable/ObjectImpl.class
index 3c4203072c4..c206361b427 100644
--- a/libjava/classpath/lib/org/omg/CORBA/portable/ObjectImpl.class
+++ b/libjava/classpath/lib/org/omg/CORBA/portable/ObjectImpl.class
Binary files differ
diff --git a/libjava/classpath/lib/org/omg/CORBA_2_3/portable/InputStream.class b/libjava/classpath/lib/org/omg/CORBA_2_3/portable/InputStream.class
index 707fdbe5f3b..29cc11f66d3 100644
--- a/libjava/classpath/lib/org/omg/CORBA_2_3/portable/InputStream.class
+++ b/libjava/classpath/lib/org/omg/CORBA_2_3/portable/InputStream.class
Binary files differ
diff --git a/libjava/classpath/lib/org/omg/CORBA_2_3/portable/OutputStream.class b/libjava/classpath/lib/org/omg/CORBA_2_3/portable/OutputStream.class
index 7dd148569c1..4e8f95bde05 100644
--- a/libjava/classpath/lib/org/omg/CORBA_2_3/portable/OutputStream.class
+++ b/libjava/classpath/lib/org/omg/CORBA_2_3/portable/OutputStream.class
Binary files differ
diff --git a/libjava/classpath/lib/org/omg/DynamicAny/_DynAnyFactoryStub.class b/libjava/classpath/lib/org/omg/DynamicAny/_DynAnyFactoryStub.class
index f86463f4847..7054ff8eaf3 100644
--- a/libjava/classpath/lib/org/omg/DynamicAny/_DynAnyFactoryStub.class
+++ b/libjava/classpath/lib/org/omg/DynamicAny/_DynAnyFactoryStub.class
Binary files differ
diff --git a/libjava/classpath/lib/org/omg/DynamicAny/_DynAnyStub.class b/libjava/classpath/lib/org/omg/DynamicAny/_DynAnyStub.class
index 5e1fafded16..1cf45304ba9 100644
--- a/libjava/classpath/lib/org/omg/DynamicAny/_DynAnyStub.class
+++ b/libjava/classpath/lib/org/omg/DynamicAny/_DynAnyStub.class
Binary files differ
diff --git a/libjava/classpath/lib/org/omg/DynamicAny/_DynArrayStub.class b/libjava/classpath/lib/org/omg/DynamicAny/_DynArrayStub.class
index 4d3a705dd74..dda829bb18b 100644
--- a/libjava/classpath/lib/org/omg/DynamicAny/_DynArrayStub.class
+++ b/libjava/classpath/lib/org/omg/DynamicAny/_DynArrayStub.class
Binary files differ
diff --git a/libjava/classpath/lib/org/omg/DynamicAny/_DynEnumStub.class b/libjava/classpath/lib/org/omg/DynamicAny/_DynEnumStub.class
index c005cef95e1..bfc56e32358 100644
--- a/libjava/classpath/lib/org/omg/DynamicAny/_DynEnumStub.class
+++ b/libjava/classpath/lib/org/omg/DynamicAny/_DynEnumStub.class
Binary files differ
diff --git a/libjava/classpath/lib/org/omg/DynamicAny/_DynFixedStub.class b/libjava/classpath/lib/org/omg/DynamicAny/_DynFixedStub.class
index 9a6d99cd331..9a876ed7dd6 100644
--- a/libjava/classpath/lib/org/omg/DynamicAny/_DynFixedStub.class
+++ b/libjava/classpath/lib/org/omg/DynamicAny/_DynFixedStub.class
Binary files differ
diff --git a/libjava/classpath/lib/org/omg/DynamicAny/_DynSequenceStub.class b/libjava/classpath/lib/org/omg/DynamicAny/_DynSequenceStub.class
index 6fe1051030b..b126b845ea0 100644
--- a/libjava/classpath/lib/org/omg/DynamicAny/_DynSequenceStub.class
+++ b/libjava/classpath/lib/org/omg/DynamicAny/_DynSequenceStub.class
Binary files differ
diff --git a/libjava/classpath/lib/org/omg/DynamicAny/_DynStructStub.class b/libjava/classpath/lib/org/omg/DynamicAny/_DynStructStub.class
index 2cf9fa60d60..b0cff448453 100644
--- a/libjava/classpath/lib/org/omg/DynamicAny/_DynStructStub.class
+++ b/libjava/classpath/lib/org/omg/DynamicAny/_DynStructStub.class
Binary files differ
diff --git a/libjava/classpath/lib/org/omg/DynamicAny/_DynUnionStub.class b/libjava/classpath/lib/org/omg/DynamicAny/_DynUnionStub.class
index c1428a3d7e4..655304522c7 100644
--- a/libjava/classpath/lib/org/omg/DynamicAny/_DynUnionStub.class
+++ b/libjava/classpath/lib/org/omg/DynamicAny/_DynUnionStub.class
Binary files differ
diff --git a/libjava/classpath/lib/org/omg/DynamicAny/_DynValueStub.class b/libjava/classpath/lib/org/omg/DynamicAny/_DynValueStub.class
index a6f9e5d0718..f220cf7ec8e 100644
--- a/libjava/classpath/lib/org/omg/DynamicAny/_DynValueStub.class
+++ b/libjava/classpath/lib/org/omg/DynamicAny/_DynValueStub.class
Binary files differ
diff --git a/libjava/classpath/lib/org/omg/PortableServer/_ServantActivatorStub.class b/libjava/classpath/lib/org/omg/PortableServer/_ServantActivatorStub.class
index 51fbbae24d6..19b0a7c974d 100644
--- a/libjava/classpath/lib/org/omg/PortableServer/_ServantActivatorStub.class
+++ b/libjava/classpath/lib/org/omg/PortableServer/_ServantActivatorStub.class
Binary files differ
diff --git a/libjava/classpath/lib/org/omg/PortableServer/_ServantLocatorStub.class b/libjava/classpath/lib/org/omg/PortableServer/_ServantLocatorStub.class
index 24aa49d5e78..2060cb2dcad 100644
--- a/libjava/classpath/lib/org/omg/PortableServer/_ServantLocatorStub.class
+++ b/libjava/classpath/lib/org/omg/PortableServer/_ServantLocatorStub.class
Binary files differ
diff --git a/libjava/classpath/m4/ac_prog_antlr.m4 b/libjava/classpath/m4/ac_prog_antlr.m4
index e2c10780ae3..df377e8b6e6 100644
--- a/libjava/classpath/m4/ac_prog_antlr.m4
+++ b/libjava/classpath/m4/ac_prog_antlr.m4
@@ -24,7 +24,11 @@ AC_DEFUN([AC_PROG_ANTLR],[
if test -z "$JAVA"; then
AC_MSG_ERROR(Failed to find either an antlr binary or a suitable Java runtime for ANTLR.)
else
- ANTLR="$JAVA -classpath $ANTLR_JAR antlr.Tool"
+ if test -z "$ANTLR_JAR"; then
+ AC_MSG_ERROR(Failed to find either an antlr binary or a suitable antlr jar file.)
+ else
+ ANTLR="$JAVA -classpath $ANTLR_JAR antlr.Tool"
+ fi
fi
fi
AC_SUBST(ANTLR)
diff --git a/libjava/classpath/m4/ac_prog_java.m4 b/libjava/classpath/m4/ac_prog_java.m4
index 356d99d8084..12aa07c133c 100644
--- a/libjava/classpath/m4/ac_prog_java.m4
+++ b/libjava/classpath/m4/ac_prog_java.m4
@@ -12,6 +12,5 @@ else
test "x$JAVA" = x && AC_CHECK_PROGS(JAVA, cacao$EXEEXT jamvm$EXEEXT kaffe$EXEEXT gij$EXEEXT java$EXEEXT, $JAVAPREFIX)
fi
test "x$JAVA" = x && AC_MSG_ERROR([no acceptable Java virtual machine found in \$PATH])
-AC_PROG_JAVA_WORKS
AC_PROVIDE([$0])dnl
])
diff --git a/libjava/classpath/m4/ac_prog_java_works.m4 b/libjava/classpath/m4/ac_prog_java_works.m4
index ffde1ffc4ab..d3f274478d0 100644
--- a/libjava/classpath/m4/ac_prog_java_works.m4
+++ b/libjava/classpath/m4/ac_prog_java_works.m4
@@ -1,7 +1,8 @@
dnl Available from the GNU Autoconf Macro Archive at:
dnl http://www.gnu.org/software/ac-archive/htmldoc/ac_prog_java_works.html
dnl
-AC_DEFUN([AC_PROG_JAVA_WORKS], [
+AC_DEFUN_ONCE([AC_PROG_JAVA_WORKS], [
+AC_REQUIRE([AC_PROG_JAVA])
AC_CHECK_PROG(uudecode, uudecode$EXEEXT, yes)
if test x$uudecode = xyes; then
AC_CACHE_CHECK([if uudecode can decode base 64 file], ac_cv_prog_uudecode_base64, [
@@ -45,9 +46,6 @@ if test x$ac_cv_prog_uudecode_base64 != xyes; then
if test x$ac_cv_prog_javac_works = xno; then
AC_MSG_ERROR([Cannot compile java source. $JAVAC does not work properly])
fi
- if test x$ac_cv_prog_javac_works = x; then
- AC_PROG_JAVAC
- fi
fi
AC_CACHE_CHECK(if $JAVA works, ac_cv_prog_java_works, [
JAVA_TEST=Test.java
@@ -63,6 +61,7 @@ public static void main (String args[]) {
EOF
changequote([, ])dnl
if test x$ac_cv_prog_uudecode_base64 != xyes; then
+ AC_REQUIRE([AC_PROG_JAVAC_WORKS])
if AC_TRY_COMMAND($JAVAC $JAVACFLAGS $JAVA_TEST) && test -s $CLASS_TEST; then
:
else
@@ -86,8 +85,8 @@ AC_PROVIDE([$0])dnl
dnl Available from the GNU Autoconf Macro Archive at:
dnl http://www.gnu.org/software/ac-archive/htmldoc/ac_try_compile_java.html
dnl
-AC_DEFUN([AC_TRY_COMPILE_JAVA],[
-AC_REQUIRE([AC_PROG_JAVAC])dnl
+AC_DEFUN_ONCE([AC_TRY_COMPILE_JAVA],[
+AC_REQUIRE([AC_PROG_JAVAC_WORKS])dnl
cat << \EOF > Test.java
/* [#]line __oline__ "configure" */
ifelse([$1], , , [import $1;])
diff --git a/libjava/classpath/m4/ac_prog_javac.m4 b/libjava/classpath/m4/ac_prog_javac.m4
index 0c505dae840..2162c1d8d8a 100644
--- a/libjava/classpath/m4/ac_prog_javac.m4
+++ b/libjava/classpath/m4/ac_prog_javac.m4
@@ -34,7 +34,7 @@ dnl @license GPLWithACException
dnl
dnl Modified to remove jikes by Andrew John Hughes on 2008-02-11
-AC_DEFUN([AC_PROG_JAVAC],[
+AC_DEFUN_ONCE([AC_PROG_JAVAC],[
AC_REQUIRE([AC_EXEEXT])dnl
ECJ_OPTS="-warn:-deprecation,serial,unusedImport"
JAVAC_OPTS="-Xlint:unchecked,cast,divzero,empty,finally,overrides"
@@ -46,16 +46,15 @@ else
fi
test "x$JAVAC" = x && AC_MSG_ERROR([no acceptable Java compiler found in \$PATH])
AC_CACHE_CHECK([if $JAVAC is a version of gcj], ac_cv_prog_javac_is_gcj, [
-if $JAVAC --version | grep gcj > /dev/null; then
+if $JAVAC --version 2>&1 | grep gcj >&AS_MESSAGE_LOG_FD ; then
ac_cv_prog_javac_is_gcj=yes;
JAVAC="$JAVAC $GCJ_OPTS";
-fi])
+else
+ ac_cv_prog_javac_is_gcj=no;
+fi
+])
AC_SUBST(JAVAC_IS_GCJ, $ac_cv_prog_javac_is_gcj)
AM_CONDITIONAL(GCJ_JAVAC, test x"${JAVAC_IS_GCJ}" = xyes)
-dnl GCJ LOCAL
-if test "$enable_java_maintainer_mode" = yes; then
-AC_PROG_JAVAC_WORKS
-fi
dnl END GCJ LOCAL
AC_PROVIDE([$0])dnl
])
diff --git a/libjava/classpath/m4/ac_prog_javac_works.m4 b/libjava/classpath/m4/ac_prog_javac_works.m4
index a03f476e3f8..7fb298d49be 100644
--- a/libjava/classpath/m4/ac_prog_javac_works.m4
+++ b/libjava/classpath/m4/ac_prog_javac_works.m4
@@ -16,7 +16,8 @@ dnl @license GPLWithACException
dnl
dnl Modified to test for 1.5 by Andrew John Hughes on 2008-02-11
-AC_DEFUN([AC_PROG_JAVAC_WORKS],[
+AC_DEFUN_ONCE([AC_PROG_JAVAC_WORKS],[
+AC_REQUIRE([AC_PROG_JAVAC])
AC_CACHE_CHECK([if $JAVAC works], ac_cv_prog_javac_works, [
JAVA_TEST=Object.java
CLASS_TEST=Object.class
diff --git a/libjava/classpath/m4/lib-ld.m4 b/libjava/classpath/m4/lib-ld.m4
deleted file mode 100644
index 11d0ce77342..00000000000
--- a/libjava/classpath/m4/lib-ld.m4
+++ /dev/null
@@ -1,110 +0,0 @@
-# lib-ld.m4 serial 2 (gettext-0.12)
-dnl Copyright (C) 1996-2003 Free Software Foundation, Inc.
-dnl This file is free software, distributed under the terms of the GNU
-dnl General Public License. As a special exception to the GNU General
-dnl Public License, this file may be distributed as part of a program
-dnl that contains a configuration script generated by Autoconf, under
-dnl the same distribution terms as the rest of that program.
-
-dnl Subroutines of libtool.m4,
-dnl with replacements s/AC_/AC_LIB/ and s/lt_cv/acl_cv/ to avoid collision
-dnl with libtool.m4.
-
-dnl From libtool-1.4. Sets the variable with_gnu_ld to yes or no.
-AC_DEFUN([AC_LIB_PROG_LD_GNU],
-[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], acl_cv_prog_gnu_ld,
-[# I'd rather use --version here, but apparently some GNU ld's only accept -v.
-if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then
- acl_cv_prog_gnu_ld=yes
-else
- acl_cv_prog_gnu_ld=no
-fi])
-with_gnu_ld=$acl_cv_prog_gnu_ld
-])
-
-dnl From libtool-1.4. Sets the variable LD.
-AC_DEFUN([AC_LIB_PROG_LD],
-[AC_ARG_WITH(gnu-ld,
-[ --with-gnu-ld assume the C compiler uses GNU ld [default=no]],
-test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no)
-AC_REQUIRE([AC_PROG_CC])dnl
-AC_REQUIRE([AC_CANONICAL_HOST])dnl
-# Prepare PATH_SEPARATOR.
-# The user is always right.
-if test "${PATH_SEPARATOR+set}" != set; then
- echo "#! /bin/sh" >conf$$.sh
- echo "exit 0" >>conf$$.sh
- chmod +x conf$$.sh
- if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
- PATH_SEPARATOR=';'
- else
- PATH_SEPARATOR=:
- fi
- rm -f conf$$.sh
-fi
-ac_prog=ld
-if test "$GCC" = yes; then
- # Check if gcc -print-prog-name=ld gives a path.
- AC_MSG_CHECKING([for ld used by GCC])
- case $host in
- *-*-mingw*)
- # gcc leaves a trailing carriage return which upsets mingw
- ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
- *)
- ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
- esac
- case $ac_prog in
- # Accept absolute paths.
- [[\\/]* | [A-Za-z]:[\\/]*)]
- [re_direlt='/[^/][^/]*/\.\./']
- # Canonicalize the path of ld
- ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'`
- while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do
- ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"`
- done
- test -z "$LD" && LD="$ac_prog"
- ;;
- "")
- # If it fails, then pretend we aren't using GCC.
- ac_prog=ld
- ;;
- *)
- # If it is relative, then search for the first ld in PATH.
- with_gnu_ld=unknown
- ;;
- esac
-elif test "$with_gnu_ld" = yes; then
- AC_MSG_CHECKING([for GNU ld])
-else
- AC_MSG_CHECKING([for non-GNU ld])
-fi
-AC_CACHE_VAL(acl_cv_path_LD,
-[if test -z "$LD"; then
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
- for ac_dir in $PATH; do
- test -z "$ac_dir" && ac_dir=.
- if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
- acl_cv_path_LD="$ac_dir/$ac_prog"
- # Check to see if the program is GNU ld. I'd rather use --version,
- # but apparently some GNU ld's only accept -v.
- # Break only if it was the GNU/non-GNU ld that we prefer.
- if "$acl_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then
- test "$with_gnu_ld" != no && break
- else
- test "$with_gnu_ld" != yes && break
- fi
- fi
- done
- IFS="$ac_save_ifs"
-else
- acl_cv_path_LD="$LD" # Let the user override the test with a path.
-fi])
-LD="$acl_cv_path_LD"
-if test -n "$LD"; then
- AC_MSG_RESULT($LD)
-else
- AC_MSG_RESULT(no)
-fi
-test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
-AC_LIB_PROG_LD_GNU
-])
diff --git a/libjava/classpath/m4/lib-link.m4 b/libjava/classpath/m4/lib-link.m4
deleted file mode 100644
index eeb200d266d..00000000000
--- a/libjava/classpath/m4/lib-link.m4
+++ /dev/null
@@ -1,551 +0,0 @@
-# lib-link.m4 serial 4 (gettext-0.12)
-dnl Copyright (C) 2001-2003 Free Software Foundation, Inc.
-dnl This file is free software, distributed under the terms of the GNU
-dnl General Public License. As a special exception to the GNU General
-dnl Public License, this file may be distributed as part of a program
-dnl that contains a configuration script generated by Autoconf, under
-dnl the same distribution terms as the rest of that program.
-
-dnl From Bruno Haible.
-
-dnl AC_LIB_LINKFLAGS(name [, dependencies]) searches for libname and
-dnl the libraries corresponding to explicit and implicit dependencies.
-dnl Sets and AC_SUBSTs the LIB${NAME} and LTLIB${NAME} variables and
-dnl augments the CPPFLAGS variable.
-AC_DEFUN([AC_LIB_LINKFLAGS],
-[
- AC_REQUIRE([AC_LIB_PREPARE_PREFIX])
- AC_REQUIRE([AC_LIB_RPATH])
- define([Name],[translit([$1],[./-], [___])])
- define([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-],
- [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])])
- AC_CACHE_CHECK([how to link with lib[]$1], [ac_cv_lib[]Name[]_libs], [
- AC_LIB_LINKFLAGS_BODY([$1], [$2])
- ac_cv_lib[]Name[]_libs="$LIB[]NAME"
- ac_cv_lib[]Name[]_ltlibs="$LTLIB[]NAME"
- ac_cv_lib[]Name[]_cppflags="$INC[]NAME"
- ])
- LIB[]NAME="$ac_cv_lib[]Name[]_libs"
- LTLIB[]NAME="$ac_cv_lib[]Name[]_ltlibs"
- INC[]NAME="$ac_cv_lib[]Name[]_cppflags"
- AC_LIB_APPENDTOVAR([CPPFLAGS], [$INC]NAME)
- AC_SUBST([LIB]NAME)
- AC_SUBST([LTLIB]NAME)
- dnl Also set HAVE_LIB[]NAME so that AC_LIB_HAVE_LINKFLAGS can reuse the
- dnl results of this search when this library appears as a dependency.
- HAVE_LIB[]NAME=yes
- undefine([Name])
- undefine([NAME])
-])
-
-dnl AC_LIB_HAVE_LINKFLAGS(name, dependencies, includes, testcode)
-dnl searches for libname and the libraries corresponding to explicit and
-dnl implicit dependencies, together with the specified include files and
-dnl the ability to compile and link the specified testcode. If found, it
-dnl sets and AC_SUBSTs HAVE_LIB${NAME}=yes and the LIB${NAME} and
-dnl LTLIB${NAME} variables and augments the CPPFLAGS variable, and
-dnl #defines HAVE_LIB${NAME} to 1. Otherwise, it sets and AC_SUBSTs
-dnl HAVE_LIB${NAME}=no and LIB${NAME} and LTLIB${NAME} to empty.
-AC_DEFUN([AC_LIB_HAVE_LINKFLAGS],
-[
- AC_REQUIRE([AC_LIB_PREPARE_PREFIX])
- AC_REQUIRE([AC_LIB_RPATH])
- define([Name],[translit([$1],[./-], [___])])
- define([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-],
- [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])])
-
- dnl Search for lib[]Name and define LIB[]NAME, LTLIB[]NAME and INC[]NAME
- dnl accordingly.
- AC_LIB_LINKFLAGS_BODY([$1], [$2])
-
- dnl Add $INC[]NAME to CPPFLAGS before performing the following checks,
- dnl because if the user has installed lib[]Name and not disabled its use
- dnl via --without-lib[]Name-prefix, he wants to use it.
- ac_save_CPPFLAGS="$CPPFLAGS"
- AC_LIB_APPENDTOVAR([CPPFLAGS], [$INC]NAME)
-
- AC_CACHE_CHECK([for lib[]$1], [ac_cv_lib[]Name], [
- ac_save_LIBS="$LIBS"
- LIBS="$LIBS $LIB[]NAME"
- AC_TRY_LINK([$3], [$4], [ac_cv_lib[]Name=yes], [ac_cv_lib[]Name=no])
- LIBS="$ac_save_LIBS"
- ])
- if test "$ac_cv_lib[]Name" = yes; then
- HAVE_LIB[]NAME=yes
- AC_DEFINE([HAVE_LIB]NAME, 1, [Define if you have the $1 library.])
- AC_MSG_CHECKING([how to link with lib[]$1])
- AC_MSG_RESULT([$LIB[]NAME])
- else
- HAVE_LIB[]NAME=no
- dnl If $LIB[]NAME didn't lead to a usable library, we don't need
- dnl $INC[]NAME either.
- CPPFLAGS="$ac_save_CPPFLAGS"
- LIB[]NAME=
- LTLIB[]NAME=
- fi
- AC_SUBST([HAVE_LIB]NAME)
- AC_SUBST([LIB]NAME)
- AC_SUBST([LTLIB]NAME)
- undefine([Name])
- undefine([NAME])
-])
-
-dnl Determine the platform dependent parameters needed to use rpath:
-dnl libext, shlibext, hardcode_libdir_flag_spec, hardcode_libdir_separator,
-dnl hardcode_direct, hardcode_minus_L.
-AC_DEFUN([AC_LIB_RPATH],
-[
- AC_REQUIRE([AC_PROG_CC]) dnl we use $CC, $GCC, $LDFLAGS
- AC_REQUIRE([AC_LIB_PROG_LD]) dnl we use $LD, $with_gnu_ld
- AC_REQUIRE([AC_CANONICAL_HOST]) dnl we use $host
- AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT]) dnl we use $ac_aux_dir
- AC_CACHE_CHECK([for shared library run path origin], acl_cv_rpath, [
- CC="$CC" GCC="$GCC" LDFLAGS="$LDFLAGS" LD="$LD" with_gnu_ld="$with_gnu_ld" \
- ${CONFIG_SHELL-/bin/sh} "$ac_aux_dir/config.rpath" "$host" > conftest.sh
- . ./conftest.sh
- rm -f ./conftest.sh
- acl_cv_rpath=done
- ])
- wl="$acl_cv_wl"
- libext="$acl_cv_libext"
- shlibext="$acl_cv_shlibext"
- hardcode_libdir_flag_spec="$acl_cv_hardcode_libdir_flag_spec"
- hardcode_libdir_separator="$acl_cv_hardcode_libdir_separator"
- hardcode_direct="$acl_cv_hardcode_direct"
- hardcode_minus_L="$acl_cv_hardcode_minus_L"
- dnl Determine whether the user wants rpath handling at all.
- AC_ARG_ENABLE(rpath,
- [ --disable-rpath do not hardcode runtime library paths],
- :, enable_rpath=yes)
-])
-
-dnl AC_LIB_LINKFLAGS_BODY(name [, dependencies]) searches for libname and
-dnl the libraries corresponding to explicit and implicit dependencies.
-dnl Sets the LIB${NAME}, LTLIB${NAME} and INC${NAME} variables.
-AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
-[
- define([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-],
- [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])])
- dnl By default, look in $includedir and $libdir.
- use_additional=yes
- AC_LIB_WITH_FINAL_PREFIX([
- eval additional_includedir=\"$includedir\"
- eval additional_libdir=\"$libdir\"
- ])
- AC_LIB_ARG_WITH([lib$1-prefix],
-[ --with-lib$1-prefix[=DIR] search for lib$1 in DIR/include and DIR/lib
- --without-lib$1-prefix don't search for lib$1 in includedir and libdir],
-[
- if test "X$withval" = "Xno"; then
- use_additional=no
- else
- if test "X$withval" = "X"; then
- AC_LIB_WITH_FINAL_PREFIX([
- eval additional_includedir=\"$includedir\"
- eval additional_libdir=\"$libdir\"
- ])
- else
- additional_includedir="$withval/include"
- additional_libdir="$withval/lib"
- fi
- fi
-])
- dnl Search the library and its dependencies in $additional_libdir and
- dnl $LDFLAGS. Using breadth-first-seach.
- LIB[]NAME=
- LTLIB[]NAME=
- INC[]NAME=
- rpathdirs=
- ltrpathdirs=
- names_already_handled=
- names_next_round='$1 $2'
- while test -n "$names_next_round"; do
- names_this_round="$names_next_round"
- names_next_round=
- for name in $names_this_round; do
- already_handled=
- for n in $names_already_handled; do
- if test "$n" = "$name"; then
- already_handled=yes
- break
- fi
- done
- if test -z "$already_handled"; then
- names_already_handled="$names_already_handled $name"
- dnl See if it was already located by an earlier AC_LIB_LINKFLAGS
- dnl or AC_LIB_HAVE_LINKFLAGS call.
- uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./-|ABCDEFGHIJKLMNOPQRSTUVWXYZ___|'`
- eval value=\"\$HAVE_LIB$uppername\"
- if test -n "$value"; then
- if test "$value" = yes; then
- eval value=\"\$LIB$uppername\"
- test -z "$value" || LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$value"
- eval value=\"\$LTLIB$uppername\"
- test -z "$value" || LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }$value"
- else
- dnl An earlier call to AC_LIB_HAVE_LINKFLAGS has determined
- dnl that this library doesn't exist. So just drop it.
- :
- fi
- else
- dnl Search the library lib$name in $additional_libdir and $LDFLAGS
- dnl and the already constructed $LIBNAME/$LTLIBNAME.
- found_dir=
- found_la=
- found_so=
- found_a=
- if test $use_additional = yes; then
- if test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext"; then
- found_dir="$additional_libdir"
- found_so="$additional_libdir/lib$name.$shlibext"
- if test -f "$additional_libdir/lib$name.la"; then
- found_la="$additional_libdir/lib$name.la"
- fi
- else
- if test -f "$additional_libdir/lib$name.$libext"; then
- found_dir="$additional_libdir"
- found_a="$additional_libdir/lib$name.$libext"
- if test -f "$additional_libdir/lib$name.la"; then
- found_la="$additional_libdir/lib$name.la"
- fi
- fi
- fi
- fi
- if test "X$found_dir" = "X"; then
- for x in $LDFLAGS $LTLIB[]NAME; do
- AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
- case "$x" in
- -L*)
- dir=`echo "X$x" | sed -e 's/^X-L//'`
- if test -n "$shlibext" && test -f "$dir/lib$name.$shlibext"; then
- found_dir="$dir"
- found_so="$dir/lib$name.$shlibext"
- if test -f "$dir/lib$name.la"; then
- found_la="$dir/lib$name.la"
- fi
- else
- if test -f "$dir/lib$name.$libext"; then
- found_dir="$dir"
- found_a="$dir/lib$name.$libext"
- if test -f "$dir/lib$name.la"; then
- found_la="$dir/lib$name.la"
- fi
- fi
- fi
- ;;
- esac
- if test "X$found_dir" != "X"; then
- break
- fi
- done
- fi
- if test "X$found_dir" != "X"; then
- dnl Found the library.
- LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-L$found_dir -l$name"
- if test "X$found_so" != "X"; then
- dnl Linking with a shared library. We attempt to hardcode its
- dnl directory into the executable's runpath, unless it's the
- dnl standard /usr/lib.
- if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/lib"; then
- dnl No hardcoding is needed.
- LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so"
- else
- dnl Use an explicit option to hardcode DIR into the resulting
- dnl binary.
- dnl Potentially add DIR to ltrpathdirs.
- dnl The ltrpathdirs will be appended to $LTLIBNAME at the end.
- haveit=
- for x in $ltrpathdirs; do
- if test "X$x" = "X$found_dir"; then
- haveit=yes
- break
- fi
- done
- if test -z "$haveit"; then
- ltrpathdirs="$ltrpathdirs $found_dir"
- fi
- dnl The hardcoding into $LIBNAME is system dependent.
- if test "$hardcode_direct" = yes; then
- dnl Using DIR/libNAME.so during linking hardcodes DIR into the
- dnl resulting binary.
- LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so"
- else
- if test -n "$hardcode_libdir_flag_spec" && test "$hardcode_minus_L" = no; then
- dnl Use an explicit option to hardcode DIR into the resulting
- dnl binary.
- LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so"
- dnl Potentially add DIR to rpathdirs.
- dnl The rpathdirs will be appended to $LIBNAME at the end.
- haveit=
- for x in $rpathdirs; do
- if test "X$x" = "X$found_dir"; then
- haveit=yes
- break
- fi
- done
- if test -z "$haveit"; then
- rpathdirs="$rpathdirs $found_dir"
- fi
- else
- dnl Rely on "-L$found_dir".
- dnl But don't add it if it's already contained in the LDFLAGS
- dnl or the already constructed $LIBNAME
- haveit=
- for x in $LDFLAGS $LIB[]NAME; do
- AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
- if test "X$x" = "X-L$found_dir"; then
- haveit=yes
- break
- fi
- done
- if test -z "$haveit"; then
- LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$found_dir"
- fi
- if test "$hardcode_minus_L" != no; then
- dnl FIXME: Not sure whether we should use
- dnl "-L$found_dir -l$name" or "-L$found_dir $found_so"
- dnl here.
- LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so"
- else
- dnl We cannot use $hardcode_runpath_var and LD_RUN_PATH
- dnl here, because this doesn't fit in flags passed to the
- dnl compiler. So give up. No hardcoding. This affects only
- dnl very old systems.
- dnl FIXME: Not sure whether we should use
- dnl "-L$found_dir -l$name" or "-L$found_dir $found_so"
- dnl here.
- LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-l$name"
- fi
- fi
- fi
- fi
- else
- if test "X$found_a" != "X"; then
- dnl Linking with a static library.
- LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_a"
- else
- dnl We shouldn't come here, but anyway it's good to have a
- dnl fallback.
- LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$found_dir -l$name"
- fi
- fi
- dnl Assume the include files are nearby.
- additional_includedir=
- case "$found_dir" in
- */lib | */lib/)
- basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e 's,/lib/*$,,'`
- additional_includedir="$basedir/include"
- ;;
- esac
- if test "X$additional_includedir" != "X"; then
- dnl Potentially add $additional_includedir to $INCNAME.
- dnl But don't add it
- dnl 1. if it's the standard /usr/include,
- dnl 2. if it's /usr/local/include and we are using GCC on Linux,
- dnl 3. if it's already present in $CPPFLAGS or the already
- dnl constructed $INCNAME,
- dnl 4. if it doesn't exist as a directory.
- if test "X$additional_includedir" != "X/usr/include"; then
- haveit=
- if test "X$additional_includedir" = "X/usr/local/include"; then
- if test -n "$GCC"; then
- case $host_os in
- linux*) haveit=yes;;
- esac
- fi
- fi
- if test -z "$haveit"; then
- for x in $CPPFLAGS $INC[]NAME; do
- AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
- if test "X$x" = "X-I$additional_includedir"; then
- haveit=yes
- break
- fi
- done
- if test -z "$haveit"; then
- if test -d "$additional_includedir"; then
- dnl Really add $additional_includedir to $INCNAME.
- INC[]NAME="${INC[]NAME}${INC[]NAME:+ }-I$additional_includedir"
- fi
- fi
- fi
- fi
- fi
- dnl Look for dependencies.
- if test -n "$found_la"; then
- dnl Read the .la file. It defines the variables
- dnl dlname, library_names, old_library, dependency_libs, current,
- dnl age, revision, installed, dlopen, dlpreopen, libdir.
- save_libdir="$libdir"
- case "$found_la" in
- */* | *\\*) . "$found_la" ;;
- *) . "./$found_la" ;;
- esac
- libdir="$save_libdir"
- dnl We use only dependency_libs.
- for dep in $dependency_libs; do
- case "$dep" in
- -L*)
- additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'`
- dnl Potentially add $additional_libdir to $LIBNAME and $LTLIBNAME.
- dnl But don't add it
- dnl 1. if it's the standard /usr/lib,
- dnl 2. if it's /usr/local/lib and we are using GCC on Linux,
- dnl 3. if it's already present in $LDFLAGS or the already
- dnl constructed $LIBNAME,
- dnl 4. if it doesn't exist as a directory.
- if test "X$additional_libdir" != "X/usr/lib"; then
- haveit=
- if test "X$additional_libdir" = "X/usr/local/lib"; then
- if test -n "$GCC"; then
- case $host_os in
- linux*) haveit=yes;;
- esac
- fi
- fi
- if test -z "$haveit"; then
- haveit=
- for x in $LDFLAGS $LIB[]NAME; do
- AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
- if test "X$x" = "X-L$additional_libdir"; then
- haveit=yes
- break
- fi
- done
- if test -z "$haveit"; then
- if test -d "$additional_libdir"; then
- dnl Really add $additional_libdir to $LIBNAME.
- LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$additional_libdir"
- fi
- fi
- haveit=
- for x in $LDFLAGS $LTLIB[]NAME; do
- AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
- if test "X$x" = "X-L$additional_libdir"; then
- haveit=yes
- break
- fi
- done
- if test -z "$haveit"; then
- if test -d "$additional_libdir"; then
- dnl Really add $additional_libdir to $LTLIBNAME.
- LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-L$additional_libdir"
- fi
- fi
- fi
- fi
- ;;
- -R*)
- dir=`echo "X$dep" | sed -e 's/^X-R//'`
- if test "$enable_rpath" != no; then
- dnl Potentially add DIR to rpathdirs.
- dnl The rpathdirs will be appended to $LIBNAME at the end.
- haveit=
- for x in $rpathdirs; do
- if test "X$x" = "X$dir"; then
- haveit=yes
- break
- fi
- done
- if test -z "$haveit"; then
- rpathdirs="$rpathdirs $dir"
- fi
- dnl Potentially add DIR to ltrpathdirs.
- dnl The ltrpathdirs will be appended to $LTLIBNAME at the end.
- haveit=
- for x in $ltrpathdirs; do
- if test "X$x" = "X$dir"; then
- haveit=yes
- break
- fi
- done
- if test -z "$haveit"; then
- ltrpathdirs="$ltrpathdirs $dir"
- fi
- fi
- ;;
- -l*)
- dnl Handle this in the next round.
- names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'`
- ;;
- *.la)
- dnl Handle this in the next round. Throw away the .la's
- dnl directory; it is already contained in a preceding -L
- dnl option.
- names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'`
- ;;
- *)
- dnl Most likely an immediate library name.
- LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$dep"
- LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }$dep"
- ;;
- esac
- done
- fi
- else
- dnl Didn't find the library; assume it is in the system directories
- dnl known to the linker and runtime loader. (All the system
- dnl directories known to the linker should also be known to the
- dnl runtime loader, otherwise the system is severely misconfigured.)
- LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-l$name"
- LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-l$name"
- fi
- fi
- fi
- done
- done
- if test "X$rpathdirs" != "X"; then
- if test -n "$hardcode_libdir_separator"; then
- dnl Weird platform: only the last -rpath option counts, the user must
- dnl pass all path elements in one option. We can arrange that for a
- dnl single library, but not when more than one $LIBNAMEs are used.
- alldirs=
- for found_dir in $rpathdirs; do
- alldirs="${alldirs}${alldirs:+$hardcode_libdir_separator}$found_dir"
- done
- dnl Note: hardcode_libdir_flag_spec uses $libdir and $wl.
- acl_save_libdir="$libdir"
- libdir="$alldirs"
- eval flag=\"$hardcode_libdir_flag_spec\"
- libdir="$acl_save_libdir"
- LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$flag"
- else
- dnl The -rpath options are cumulative.
- for found_dir in $rpathdirs; do
- acl_save_libdir="$libdir"
- libdir="$found_dir"
- eval flag=\"$hardcode_libdir_flag_spec\"
- libdir="$acl_save_libdir"
- LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$flag"
- done
- fi
- fi
- if test "X$ltrpathdirs" != "X"; then
- dnl When using libtool, the option that works for both libraries and
- dnl executables is -R. The -R options are cumulative.
- for found_dir in $ltrpathdirs; do
- LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-R$found_dir"
- done
- fi
-])
-
-dnl AC_LIB_APPENDTOVAR(VAR, CONTENTS) appends the elements of CONTENTS to VAR,
-dnl unless already present in VAR.
-dnl Works only for CPPFLAGS, not for LIB* variables because that sometimes
-dnl contains two or three consecutive elements that belong together.
-AC_DEFUN([AC_LIB_APPENDTOVAR],
-[
- for element in [$2]; do
- haveit=
- for x in $[$1]; do
- AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
- if test "X$x" = "X$element"; then
- haveit=yes
- break
- fi
- done
- if test -z "$haveit"; then
- [$1]="${[$1]}${[$1]:+ }$element"
- fi
- done
-])
diff --git a/libjava/classpath/m4/lib-prefix.m4 b/libjava/classpath/m4/lib-prefix.m4
deleted file mode 100644
index c719bc80900..00000000000
--- a/libjava/classpath/m4/lib-prefix.m4
+++ /dev/null
@@ -1,155 +0,0 @@
-# lib-prefix.m4 serial 2 (gettext-0.12)
-dnl Copyright (C) 2001-2003 Free Software Foundation, Inc.
-dnl This file is free software, distributed under the terms of the GNU
-dnl General Public License. As a special exception to the GNU General
-dnl Public License, this file may be distributed as part of a program
-dnl that contains a configuration script generated by Autoconf, under
-dnl the same distribution terms as the rest of that program.
-
-dnl From Bruno Haible.
-
-dnl AC_LIB_ARG_WITH is synonymous to AC_ARG_WITH in autoconf-2.13, and
-dnl similar to AC_ARG_WITH in autoconf 2.52...2.57 except that is doesn't
-dnl require excessive bracketing.
-ifdef([AC_HELP_STRING],
-[AC_DEFUN([AC_LIB_ARG_WITH], [AC_ARG_WITH([$1],[[$2]],[$3],[$4])])],
-[AC_DEFUN([AC_LIB_ARG_WITH], [AC_ARG_WITH([$1],[$2],[$3],[$4])])])
-
-dnl AC_LIB_PREFIX adds to the CPPFLAGS and LDFLAGS the flags that are needed
-dnl to access previously installed libraries. The basic assumption is that
-dnl a user will want packages to use other packages he previously installed
-dnl with the same --prefix option.
-dnl This macro is not needed if only AC_LIB_LINKFLAGS is used to locate
-dnl libraries, but is otherwise very convenient.
-AC_DEFUN([AC_LIB_PREFIX],
-[
- AC_BEFORE([$0], [AC_LIB_LINKFLAGS])
- AC_REQUIRE([AC_PROG_CC])
- AC_REQUIRE([AC_CANONICAL_HOST])
- AC_REQUIRE([AC_LIB_PREPARE_PREFIX])
- dnl By default, look in $includedir and $libdir.
- use_additional=yes
- AC_LIB_WITH_FINAL_PREFIX([
- eval additional_includedir=\"$includedir\"
- eval additional_libdir=\"$libdir\"
- ])
- AC_LIB_ARG_WITH([lib-prefix],
-[ --with-lib-prefix[=DIR] search for libraries in DIR/include and DIR/lib
- --without-lib-prefix don't search for libraries in includedir and libdir],
-[
- if test "X$withval" = "Xno"; then
- use_additional=no
- else
- if test "X$withval" = "X"; then
- AC_LIB_WITH_FINAL_PREFIX([
- eval additional_includedir=\"$includedir\"
- eval additional_libdir=\"$libdir\"
- ])
- else
- additional_includedir="$withval/include"
- additional_libdir="$withval/lib"
- fi
- fi
-])
- if test $use_additional = yes; then
- dnl Potentially add $additional_includedir to $CPPFLAGS.
- dnl But don't add it
- dnl 1. if it's the standard /usr/include,
- dnl 2. if it's already present in $CPPFLAGS,
- dnl 3. if it's /usr/local/include and we are using GCC on Linux,
- dnl 4. if it doesn't exist as a directory.
- if test "X$additional_includedir" != "X/usr/include"; then
- haveit=
- for x in $CPPFLAGS; do
- AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
- if test "X$x" = "X-I$additional_includedir"; then
- haveit=yes
- break
- fi
- done
- if test -z "$haveit"; then
- if test "X$additional_includedir" = "X/usr/local/include"; then
- if test -n "$GCC"; then
- case $host_os in
- linux*) haveit=yes;;
- esac
- fi
- fi
- if test -z "$haveit"; then
- if test -d "$additional_includedir"; then
- dnl Really add $additional_includedir to $CPPFLAGS.
- CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }-I$additional_includedir"
- fi
- fi
- fi
- fi
- dnl Potentially add $additional_libdir to $LDFLAGS.
- dnl But don't add it
- dnl 1. if it's the standard /usr/lib,
- dnl 2. if it's already present in $LDFLAGS,
- dnl 3. if it's /usr/local/lib and we are using GCC on Linux,
- dnl 4. if it doesn't exist as a directory.
- if test "X$additional_libdir" != "X/usr/lib"; then
- haveit=
- for x in $LDFLAGS; do
- AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
- if test "X$x" = "X-L$additional_libdir"; then
- haveit=yes
- break
- fi
- done
- if test -z "$haveit"; then
- if test "X$additional_libdir" = "X/usr/local/lib"; then
- if test -n "$GCC"; then
- case $host_os in
- linux*) haveit=yes;;
- esac
- fi
- fi
- if test -z "$haveit"; then
- if test -d "$additional_libdir"; then
- dnl Really add $additional_libdir to $LDFLAGS.
- LDFLAGS="${LDFLAGS}${LDFLAGS:+ }-L$additional_libdir"
- fi
- fi
- fi
- fi
- fi
-])
-
-dnl AC_LIB_PREPARE_PREFIX creates variables acl_final_prefix,
-dnl acl_final_exec_prefix, containing the values to which $prefix and
-dnl $exec_prefix will expand at the end of the configure script.
-AC_DEFUN([AC_LIB_PREPARE_PREFIX],
-[
- dnl Unfortunately, prefix and exec_prefix get only finally determined
- dnl at the end of configure.
- if test "X$prefix" = "XNONE"; then
- acl_final_prefix="$ac_default_prefix"
- else
- acl_final_prefix="$prefix"
- fi
- if test "X$exec_prefix" = "XNONE"; then
- acl_final_exec_prefix='${prefix}'
- else
- acl_final_exec_prefix="$exec_prefix"
- fi
- acl_save_prefix="$prefix"
- prefix="$acl_final_prefix"
- eval acl_final_exec_prefix=\"$acl_final_exec_prefix\"
- prefix="$acl_save_prefix"
-])
-
-dnl AC_LIB_WITH_FINAL_PREFIX([statement]) evaluates statement, with the
-dnl variables prefix and exec_prefix bound to the values they will have
-dnl at the end of the configure script.
-AC_DEFUN([AC_LIB_WITH_FINAL_PREFIX],
-[
- acl_save_prefix="$prefix"
- prefix="$acl_final_prefix"
- acl_save_exec_prefix="$exec_prefix"
- exec_prefix="$acl_final_exec_prefix"
- $1
- exec_prefix="$acl_save_exec_prefix"
- prefix="$acl_save_prefix"
-])
diff --git a/libjava/classpath/missing b/libjava/classpath/missing
index 1c8ff7049d8..28055d2ae6f 100755
--- a/libjava/classpath/missing
+++ b/libjava/classpath/missing
@@ -1,10 +1,10 @@
#! /bin/sh
# Common stub for a few missing GNU programs while installing.
-scriptversion=2006-05-10.23
+scriptversion=2009-04-28.21; # UTC
-# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006
-# Free Software Foundation, Inc.
+# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006,
+# 2008, 2009 Free Software Foundation, Inc.
# Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
# This program is free software; you can redistribute it and/or modify
@@ -18,9 +18,7 @@ scriptversion=2006-05-10.23
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-# 02110-1301, USA.
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
@@ -89,6 +87,9 @@ Supported PROGRAM values:
tar try tar, gnutar, gtar, then tar without non-portable flags
yacc create \`y.tab.[ch]', if possible, from existing .[ch]
+Version suffixes to PROGRAM as well as the prefixes \`gnu-', \`gnu', and
+\`g' are ignored when checking the name.
+
Send bug reports to <bug-automake@gnu.org>."
exit $?
;;
@@ -106,15 +107,22 @@ Send bug reports to <bug-automake@gnu.org>."
esac
+# normalize program name to check for.
+program=`echo "$1" | sed '
+ s/^gnu-//; t
+ s/^gnu//; t
+ s/^g//; t'`
+
# Now exit if we have it, but it failed. Also exit now if we
# don't have it and --version was passed (most likely to detect
-# the program).
+# the program). This is about non-GNU programs, so use $1 not
+# $program.
case $1 in
- lex|yacc)
+ lex*|yacc*)
# Not GNU programs, they don't have --version.
;;
- tar)
+ tar*)
if test -n "$run"; then
echo 1>&2 "ERROR: \`tar' requires --run"
exit 1
@@ -138,7 +146,7 @@ esac
# If it does not exist, or fails to run (possibly an outdated version),
# try to emulate it.
-case $1 in
+case $program in
aclocal*)
echo 1>&2 "\
WARNING: \`$1' is $msg. You should only need it if
@@ -148,7 +156,7 @@ WARNING: \`$1' is $msg. You should only need it if
touch aclocal.m4
;;
- autoconf)
+ autoconf*)
echo 1>&2 "\
WARNING: \`$1' is $msg. You should only need it if
you modified \`${configure_ac}'. You might want to install the
@@ -157,7 +165,7 @@ WARNING: \`$1' is $msg. You should only need it if
touch configure
;;
- autoheader)
+ autoheader*)
echo 1>&2 "\
WARNING: \`$1' is $msg. You should only need it if
you modified \`acconfig.h' or \`${configure_ac}'. You might want
@@ -187,7 +195,7 @@ WARNING: \`$1' is $msg. You should only need it if
while read f; do touch "$f"; done
;;
- autom4te)
+ autom4te*)
echo 1>&2 "\
WARNING: \`$1' is needed, but is $msg.
You might have modified some files without having the
@@ -210,7 +218,7 @@ WARNING: \`$1' is needed, but is $msg.
fi
;;
- bison|yacc)
+ bison*|yacc*)
echo 1>&2 "\
WARNING: \`$1' $msg. You should only need it if
you modified a \`.y' file. You may need the \`Bison' package
@@ -240,7 +248,7 @@ WARNING: \`$1' $msg. You should only need it if
fi
;;
- lex|flex)
+ lex*|flex*)
echo 1>&2 "\
WARNING: \`$1' is $msg. You should only need it if
you modified a \`.l' file. You may need the \`Flex' package
@@ -263,7 +271,7 @@ WARNING: \`$1' is $msg. You should only need it if
fi
;;
- help2man)
+ help2man*)
echo 1>&2 "\
WARNING: \`$1' is $msg. You should only need it if
you modified a dependency of a manual page. You may need the
@@ -277,11 +285,11 @@ WARNING: \`$1' is $msg. You should only need it if
else
test -z "$file" || exec >$file
echo ".ab help2man is required to generate this page"
- exit 1
+ exit $?
fi
;;
- makeinfo)
+ makeinfo*)
echo 1>&2 "\
WARNING: \`$1' is $msg. You should only need it if
you modified a \`.texi' or \`.texinfo' file, or any other file
@@ -310,7 +318,7 @@ WARNING: \`$1' is $msg. You should only need it if
touch $file
;;
- tar)
+ tar*)
shift
# We have already tried tar in the generic part.
@@ -363,5 +371,6 @@ exit 0
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-end: "$"
+# time-stamp-time-zone: "UTC"
+# time-stamp-end: "; # UTC"
# End:
diff --git a/libjava/classpath/native/Makefile.in b/libjava/classpath/native/Makefile.in
index a55b702cc8a..8761df3e5d3 100644
--- a/libjava/classpath/native/Makefile.in
+++ b/libjava/classpath/native/Makefile.in
@@ -39,6 +39,9 @@ DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/../../config/lead-dot.m4 \
+ $(top_srcdir)/../../config/lib-ld.m4 \
+ $(top_srcdir)/../../config/lib-link.m4 \
+ $(top_srcdir)/../../config/lib-prefix.m4 \
$(top_srcdir)/../../config/multi.m4 \
$(top_srcdir)/../../config/no-executables.m4 \
$(top_srcdir)/../../config/override.m4 \
@@ -57,9 +60,7 @@ am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_func_which_gethostbyname_r.m4 \
$(top_srcdir)/m4/gcc_attribute.m4 $(top_srcdir)/m4/iconv.m4 \
- $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
- $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/../../mkinstalldirs
diff --git a/libjava/classpath/native/fdlibm/Makefile.in b/libjava/classpath/native/fdlibm/Makefile.in
index d4790fb315a..0fa84e35a6a 100644
--- a/libjava/classpath/native/fdlibm/Makefile.in
+++ b/libjava/classpath/native/fdlibm/Makefile.in
@@ -40,6 +40,9 @@ DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/../../config/lead-dot.m4 \
+ $(top_srcdir)/../../config/lib-ld.m4 \
+ $(top_srcdir)/../../config/lib-link.m4 \
+ $(top_srcdir)/../../config/lib-prefix.m4 \
$(top_srcdir)/../../config/multi.m4 \
$(top_srcdir)/../../config/no-executables.m4 \
$(top_srcdir)/../../config/override.m4 \
@@ -58,9 +61,7 @@ am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_func_which_gethostbyname_r.m4 \
$(top_srcdir)/m4/gcc_attribute.m4 $(top_srcdir)/m4/iconv.m4 \
- $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
- $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/../../mkinstalldirs
diff --git a/libjava/classpath/native/jawt/Makefile.in b/libjava/classpath/native/jawt/Makefile.in
index 40025986ebf..1965c7d041b 100644
--- a/libjava/classpath/native/jawt/Makefile.in
+++ b/libjava/classpath/native/jawt/Makefile.in
@@ -40,6 +40,9 @@ DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/../../config/lead-dot.m4 \
+ $(top_srcdir)/../../config/lib-ld.m4 \
+ $(top_srcdir)/../../config/lib-link.m4 \
+ $(top_srcdir)/../../config/lib-prefix.m4 \
$(top_srcdir)/../../config/multi.m4 \
$(top_srcdir)/../../config/no-executables.m4 \
$(top_srcdir)/../../config/override.m4 \
@@ -58,9 +61,7 @@ am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_func_which_gethostbyname_r.m4 \
$(top_srcdir)/m4/gcc_attribute.m4 $(top_srcdir)/m4/iconv.m4 \
- $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
- $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/../../mkinstalldirs
diff --git a/libjava/classpath/native/jni/Makefile.in b/libjava/classpath/native/jni/Makefile.in
index fb2a84dca5b..542704bf4ba 100644
--- a/libjava/classpath/native/jni/Makefile.in
+++ b/libjava/classpath/native/jni/Makefile.in
@@ -39,6 +39,9 @@ DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/../../config/lead-dot.m4 \
+ $(top_srcdir)/../../config/lib-ld.m4 \
+ $(top_srcdir)/../../config/lib-link.m4 \
+ $(top_srcdir)/../../config/lib-prefix.m4 \
$(top_srcdir)/../../config/multi.m4 \
$(top_srcdir)/../../config/no-executables.m4 \
$(top_srcdir)/../../config/override.m4 \
@@ -57,9 +60,7 @@ am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_func_which_gethostbyname_r.m4 \
$(top_srcdir)/m4/gcc_attribute.m4 $(top_srcdir)/m4/iconv.m4 \
- $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
- $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/../../mkinstalldirs
diff --git a/libjava/classpath/native/jni/classpath/Makefile.in b/libjava/classpath/native/jni/classpath/Makefile.in
index 2923747ec32..5df9d61b00e 100644
--- a/libjava/classpath/native/jni/classpath/Makefile.in
+++ b/libjava/classpath/native/jni/classpath/Makefile.in
@@ -40,6 +40,9 @@ DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/../../config/lead-dot.m4 \
+ $(top_srcdir)/../../config/lib-ld.m4 \
+ $(top_srcdir)/../../config/lib-link.m4 \
+ $(top_srcdir)/../../config/lib-prefix.m4 \
$(top_srcdir)/../../config/multi.m4 \
$(top_srcdir)/../../config/no-executables.m4 \
$(top_srcdir)/../../config/override.m4 \
@@ -58,9 +61,7 @@ am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_func_which_gethostbyname_r.m4 \
$(top_srcdir)/m4/gcc_attribute.m4 $(top_srcdir)/m4/iconv.m4 \
- $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
- $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/../../mkinstalldirs
diff --git a/libjava/classpath/native/jni/gconf-peer/Makefile.in b/libjava/classpath/native/jni/gconf-peer/Makefile.in
index 8a86ed5a341..431f0a87ad9 100644
--- a/libjava/classpath/native/jni/gconf-peer/Makefile.in
+++ b/libjava/classpath/native/jni/gconf-peer/Makefile.in
@@ -40,6 +40,9 @@ DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/../../config/lead-dot.m4 \
+ $(top_srcdir)/../../config/lib-ld.m4 \
+ $(top_srcdir)/../../config/lib-link.m4 \
+ $(top_srcdir)/../../config/lib-prefix.m4 \
$(top_srcdir)/../../config/multi.m4 \
$(top_srcdir)/../../config/no-executables.m4 \
$(top_srcdir)/../../config/override.m4 \
@@ -58,9 +61,7 @@ am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_func_which_gethostbyname_r.m4 \
$(top_srcdir)/m4/gcc_attribute.m4 $(top_srcdir)/m4/iconv.m4 \
- $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
- $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/../../mkinstalldirs
diff --git a/libjava/classpath/native/jni/gstreamer-peer/Makefile.in b/libjava/classpath/native/jni/gstreamer-peer/Makefile.in
index 349c95c18a9..8f3afc61c31 100644
--- a/libjava/classpath/native/jni/gstreamer-peer/Makefile.in
+++ b/libjava/classpath/native/jni/gstreamer-peer/Makefile.in
@@ -40,6 +40,9 @@ DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/../../config/lead-dot.m4 \
+ $(top_srcdir)/../../config/lib-ld.m4 \
+ $(top_srcdir)/../../config/lib-link.m4 \
+ $(top_srcdir)/../../config/lib-prefix.m4 \
$(top_srcdir)/../../config/multi.m4 \
$(top_srcdir)/../../config/no-executables.m4 \
$(top_srcdir)/../../config/override.m4 \
@@ -58,9 +61,7 @@ am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_func_which_gethostbyname_r.m4 \
$(top_srcdir)/m4/gcc_attribute.m4 $(top_srcdir)/m4/iconv.m4 \
- $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
- $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/../../mkinstalldirs
diff --git a/libjava/classpath/native/jni/gtk-peer/Makefile.in b/libjava/classpath/native/jni/gtk-peer/Makefile.in
index 59242f85f8b..2ca2fe57af0 100644
--- a/libjava/classpath/native/jni/gtk-peer/Makefile.in
+++ b/libjava/classpath/native/jni/gtk-peer/Makefile.in
@@ -40,6 +40,9 @@ DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/../../config/lead-dot.m4 \
+ $(top_srcdir)/../../config/lib-ld.m4 \
+ $(top_srcdir)/../../config/lib-link.m4 \
+ $(top_srcdir)/../../config/lib-prefix.m4 \
$(top_srcdir)/../../config/multi.m4 \
$(top_srcdir)/../../config/no-executables.m4 \
$(top_srcdir)/../../config/override.m4 \
@@ -58,9 +61,7 @@ am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_func_which_gethostbyname_r.m4 \
$(top_srcdir)/m4/gcc_attribute.m4 $(top_srcdir)/m4/iconv.m4 \
- $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
- $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/../../mkinstalldirs
diff --git a/libjava/classpath/native/jni/java-io/Makefile.in b/libjava/classpath/native/jni/java-io/Makefile.in
index 86dd1a468b2..0052aeeb825 100644
--- a/libjava/classpath/native/jni/java-io/Makefile.in
+++ b/libjava/classpath/native/jni/java-io/Makefile.in
@@ -40,6 +40,9 @@ DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/../../config/lead-dot.m4 \
+ $(top_srcdir)/../../config/lib-ld.m4 \
+ $(top_srcdir)/../../config/lib-link.m4 \
+ $(top_srcdir)/../../config/lib-prefix.m4 \
$(top_srcdir)/../../config/multi.m4 \
$(top_srcdir)/../../config/no-executables.m4 \
$(top_srcdir)/../../config/override.m4 \
@@ -58,9 +61,7 @@ am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_func_which_gethostbyname_r.m4 \
$(top_srcdir)/m4/gcc_attribute.m4 $(top_srcdir)/m4/iconv.m4 \
- $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
- $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/../../mkinstalldirs
diff --git a/libjava/classpath/native/jni/java-lang/Makefile.in b/libjava/classpath/native/jni/java-lang/Makefile.in
index b33a74fc48a..ea9c3af09a2 100644
--- a/libjava/classpath/native/jni/java-lang/Makefile.in
+++ b/libjava/classpath/native/jni/java-lang/Makefile.in
@@ -40,6 +40,9 @@ DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/../../config/lead-dot.m4 \
+ $(top_srcdir)/../../config/lib-ld.m4 \
+ $(top_srcdir)/../../config/lib-link.m4 \
+ $(top_srcdir)/../../config/lib-prefix.m4 \
$(top_srcdir)/../../config/multi.m4 \
$(top_srcdir)/../../config/no-executables.m4 \
$(top_srcdir)/../../config/override.m4 \
@@ -58,9 +61,7 @@ am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_func_which_gethostbyname_r.m4 \
$(top_srcdir)/m4/gcc_attribute.m4 $(top_srcdir)/m4/iconv.m4 \
- $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
- $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/../../mkinstalldirs
diff --git a/libjava/classpath/native/jni/java-math/Makefile.in b/libjava/classpath/native/jni/java-math/Makefile.in
index 03442a3bb64..67e4e84c725 100644
--- a/libjava/classpath/native/jni/java-math/Makefile.in
+++ b/libjava/classpath/native/jni/java-math/Makefile.in
@@ -40,6 +40,9 @@ DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/../../config/lead-dot.m4 \
+ $(top_srcdir)/../../config/lib-ld.m4 \
+ $(top_srcdir)/../../config/lib-link.m4 \
+ $(top_srcdir)/../../config/lib-prefix.m4 \
$(top_srcdir)/../../config/multi.m4 \
$(top_srcdir)/../../config/no-executables.m4 \
$(top_srcdir)/../../config/override.m4 \
@@ -58,9 +61,7 @@ am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_func_which_gethostbyname_r.m4 \
$(top_srcdir)/m4/gcc_attribute.m4 $(top_srcdir)/m4/iconv.m4 \
- $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
- $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/../../mkinstalldirs
diff --git a/libjava/classpath/native/jni/java-net/Makefile.in b/libjava/classpath/native/jni/java-net/Makefile.in
index 2c895959d0b..252b9c526ff 100644
--- a/libjava/classpath/native/jni/java-net/Makefile.in
+++ b/libjava/classpath/native/jni/java-net/Makefile.in
@@ -40,6 +40,9 @@ DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/../../config/lead-dot.m4 \
+ $(top_srcdir)/../../config/lib-ld.m4 \
+ $(top_srcdir)/../../config/lib-link.m4 \
+ $(top_srcdir)/../../config/lib-prefix.m4 \
$(top_srcdir)/../../config/multi.m4 \
$(top_srcdir)/../../config/no-executables.m4 \
$(top_srcdir)/../../config/override.m4 \
@@ -58,9 +61,7 @@ am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_func_which_gethostbyname_r.m4 \
$(top_srcdir)/m4/gcc_attribute.m4 $(top_srcdir)/m4/iconv.m4 \
- $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
- $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/../../mkinstalldirs
diff --git a/libjava/classpath/native/jni/java-nio/Makefile.in b/libjava/classpath/native/jni/java-nio/Makefile.in
index e048010df7e..d3458810f8e 100644
--- a/libjava/classpath/native/jni/java-nio/Makefile.in
+++ b/libjava/classpath/native/jni/java-nio/Makefile.in
@@ -40,6 +40,9 @@ DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/../../config/lead-dot.m4 \
+ $(top_srcdir)/../../config/lib-ld.m4 \
+ $(top_srcdir)/../../config/lib-link.m4 \
+ $(top_srcdir)/../../config/lib-prefix.m4 \
$(top_srcdir)/../../config/multi.m4 \
$(top_srcdir)/../../config/no-executables.m4 \
$(top_srcdir)/../../config/override.m4 \
@@ -58,9 +61,7 @@ am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_func_which_gethostbyname_r.m4 \
$(top_srcdir)/m4/gcc_attribute.m4 $(top_srcdir)/m4/iconv.m4 \
- $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
- $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/../../mkinstalldirs
diff --git a/libjava/classpath/native/jni/java-util/Makefile.in b/libjava/classpath/native/jni/java-util/Makefile.in
index 62eca27d4f6..50189a649b0 100644
--- a/libjava/classpath/native/jni/java-util/Makefile.in
+++ b/libjava/classpath/native/jni/java-util/Makefile.in
@@ -40,6 +40,9 @@ DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/../../config/lead-dot.m4 \
+ $(top_srcdir)/../../config/lib-ld.m4 \
+ $(top_srcdir)/../../config/lib-link.m4 \
+ $(top_srcdir)/../../config/lib-prefix.m4 \
$(top_srcdir)/../../config/multi.m4 \
$(top_srcdir)/../../config/no-executables.m4 \
$(top_srcdir)/../../config/override.m4 \
@@ -58,9 +61,7 @@ am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_func_which_gethostbyname_r.m4 \
$(top_srcdir)/m4/gcc_attribute.m4 $(top_srcdir)/m4/iconv.m4 \
- $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
- $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/../../mkinstalldirs
diff --git a/libjava/classpath/native/jni/midi-alsa/Makefile.in b/libjava/classpath/native/jni/midi-alsa/Makefile.in
index 03d61220fcc..8a32375b47e 100644
--- a/libjava/classpath/native/jni/midi-alsa/Makefile.in
+++ b/libjava/classpath/native/jni/midi-alsa/Makefile.in
@@ -40,6 +40,9 @@ DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/../../config/lead-dot.m4 \
+ $(top_srcdir)/../../config/lib-ld.m4 \
+ $(top_srcdir)/../../config/lib-link.m4 \
+ $(top_srcdir)/../../config/lib-prefix.m4 \
$(top_srcdir)/../../config/multi.m4 \
$(top_srcdir)/../../config/no-executables.m4 \
$(top_srcdir)/../../config/override.m4 \
@@ -58,9 +61,7 @@ am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_func_which_gethostbyname_r.m4 \
$(top_srcdir)/m4/gcc_attribute.m4 $(top_srcdir)/m4/iconv.m4 \
- $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
- $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/../../mkinstalldirs
diff --git a/libjava/classpath/native/jni/midi-dssi/Makefile.in b/libjava/classpath/native/jni/midi-dssi/Makefile.in
index 86e328da2bc..b9083b0599c 100644
--- a/libjava/classpath/native/jni/midi-dssi/Makefile.in
+++ b/libjava/classpath/native/jni/midi-dssi/Makefile.in
@@ -40,6 +40,9 @@ DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/../../config/lead-dot.m4 \
+ $(top_srcdir)/../../config/lib-ld.m4 \
+ $(top_srcdir)/../../config/lib-link.m4 \
+ $(top_srcdir)/../../config/lib-prefix.m4 \
$(top_srcdir)/../../config/multi.m4 \
$(top_srcdir)/../../config/no-executables.m4 \
$(top_srcdir)/../../config/override.m4 \
@@ -58,9 +61,7 @@ am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_func_which_gethostbyname_r.m4 \
$(top_srcdir)/m4/gcc_attribute.m4 $(top_srcdir)/m4/iconv.m4 \
- $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
- $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/../../mkinstalldirs
diff --git a/libjava/classpath/native/jni/native-lib/Makefile.in b/libjava/classpath/native/jni/native-lib/Makefile.in
index c006509de17..83c9e26b479 100644
--- a/libjava/classpath/native/jni/native-lib/Makefile.in
+++ b/libjava/classpath/native/jni/native-lib/Makefile.in
@@ -40,6 +40,9 @@ DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/../../config/lead-dot.m4 \
+ $(top_srcdir)/../../config/lib-ld.m4 \
+ $(top_srcdir)/../../config/lib-link.m4 \
+ $(top_srcdir)/../../config/lib-prefix.m4 \
$(top_srcdir)/../../config/multi.m4 \
$(top_srcdir)/../../config/no-executables.m4 \
$(top_srcdir)/../../config/override.m4 \
@@ -58,9 +61,7 @@ am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_func_which_gethostbyname_r.m4 \
$(top_srcdir)/m4/gcc_attribute.m4 $(top_srcdir)/m4/iconv.m4 \
- $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
- $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/../../mkinstalldirs
diff --git a/libjava/classpath/native/jni/native-lib/cpnet.c b/libjava/classpath/native/jni/native-lib/cpnet.c
index 0444981131b..154a7dd7d58 100644
--- a/libjava/classpath/native/jni/native-lib/cpnet.c
+++ b/libjava/classpath/native/jni/native-lib/cpnet.c
@@ -578,9 +578,10 @@ jint cpnet_addMembership (JNIEnv *env UNUSED, jint fd, cpnet_address *addr)
{
struct ip_mreq req;
int ret;
+ struct sockaddr_in *sockaddr = (struct sockaddr_in *)addr->data;
memset(&req, 0, sizeof(req));
- req.imr_multiaddr = ((struct sockaddr_in *)addr->data)->sin_addr;
+ req.imr_multiaddr = sockaddr->sin_addr;
req.imr_interface.s_addr = INADDR_ANY;
ret = setsockopt(fd, IPPROTO_IP, IP_ADD_MEMBERSHIP, &req, sizeof(req));
if (ret != 0)
@@ -593,9 +594,10 @@ jint cpnet_dropMembership (JNIEnv *env UNUSED, jint fd, cpnet_address *addr)
{
struct ip_mreq req;
int ret;
+ struct sockaddr_in *sockaddr = (struct sockaddr_in *)addr->data;
memset(&req, 0, sizeof(req));
- req.imr_multiaddr = ((struct sockaddr_in *)addr->data)->sin_addr;
+ req.imr_multiaddr = sockaddr->sin_addr;
req.imr_interface.s_addr = INADDR_ANY;
ret = setsockopt(fd, IPPROTO_IP, IP_DROP_MEMBERSHIP, &req, sizeof(req));
if (ret != 0)
diff --git a/libjava/classpath/native/jni/qt-peer/Makefile.in b/libjava/classpath/native/jni/qt-peer/Makefile.in
index fa5c36d6ae7..ada76339080 100644
--- a/libjava/classpath/native/jni/qt-peer/Makefile.in
+++ b/libjava/classpath/native/jni/qt-peer/Makefile.in
@@ -43,6 +43,9 @@ DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/../../config/lead-dot.m4 \
+ $(top_srcdir)/../../config/lib-ld.m4 \
+ $(top_srcdir)/../../config/lib-link.m4 \
+ $(top_srcdir)/../../config/lib-prefix.m4 \
$(top_srcdir)/../../config/multi.m4 \
$(top_srcdir)/../../config/no-executables.m4 \
$(top_srcdir)/../../config/override.m4 \
@@ -61,9 +64,7 @@ am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_func_which_gethostbyname_r.m4 \
$(top_srcdir)/m4/gcc_attribute.m4 $(top_srcdir)/m4/iconv.m4 \
- $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
- $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/../../mkinstalldirs
diff --git a/libjava/classpath/native/jni/xmlj/Makefile.in b/libjava/classpath/native/jni/xmlj/Makefile.in
index 35c8bebddbd..5394250d366 100644
--- a/libjava/classpath/native/jni/xmlj/Makefile.in
+++ b/libjava/classpath/native/jni/xmlj/Makefile.in
@@ -40,6 +40,9 @@ DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/../../config/lead-dot.m4 \
+ $(top_srcdir)/../../config/lib-ld.m4 \
+ $(top_srcdir)/../../config/lib-link.m4 \
+ $(top_srcdir)/../../config/lib-prefix.m4 \
$(top_srcdir)/../../config/multi.m4 \
$(top_srcdir)/../../config/no-executables.m4 \
$(top_srcdir)/../../config/override.m4 \
@@ -58,9 +61,7 @@ am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_func_which_gethostbyname_r.m4 \
$(top_srcdir)/m4/gcc_attribute.m4 $(top_srcdir)/m4/iconv.m4 \
- $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
- $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/../../mkinstalldirs
diff --git a/libjava/classpath/native/plugin/Makefile.in b/libjava/classpath/native/plugin/Makefile.in
index b5f6d1e203f..1d2c51a75a5 100644
--- a/libjava/classpath/native/plugin/Makefile.in
+++ b/libjava/classpath/native/plugin/Makefile.in
@@ -40,6 +40,9 @@ DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/../../config/lead-dot.m4 \
+ $(top_srcdir)/../../config/lib-ld.m4 \
+ $(top_srcdir)/../../config/lib-link.m4 \
+ $(top_srcdir)/../../config/lib-prefix.m4 \
$(top_srcdir)/../../config/multi.m4 \
$(top_srcdir)/../../config/no-executables.m4 \
$(top_srcdir)/../../config/override.m4 \
@@ -58,9 +61,7 @@ am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_func_which_gethostbyname_r.m4 \
$(top_srcdir)/m4/gcc_attribute.m4 $(top_srcdir)/m4/iconv.m4 \
- $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
- $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/../../mkinstalldirs
diff --git a/libjava/classpath/org/ietf/jgss/GSSManager.java b/libjava/classpath/org/ietf/jgss/GSSManager.java
index 3c735a2fdb5..60eca49ab33 100644
--- a/libjava/classpath/org/ietf/jgss/GSSManager.java
+++ b/libjava/classpath/org/ietf/jgss/GSSManager.java
@@ -180,7 +180,7 @@ public abstract class GSSManager
ClassLoader loader = GSSManager.class.getClassLoader();
if (loader == null)
loader = ClassLoader.getSystemClassLoader();
- Class c = loader.loadClass(impl);
+ Class<?> c = loader.loadClass(impl);
return (GSSManager) c.newInstance();
}
catch (Exception x)
diff --git a/libjava/classpath/org/omg/CORBA/LocalObject.java b/libjava/classpath/org/omg/CORBA/LocalObject.java
index a3fd131caf6..c4f095f21d9 100644
--- a/libjava/classpath/org/omg/CORBA/LocalObject.java
+++ b/libjava/classpath/org/omg/CORBA/LocalObject.java
@@ -267,6 +267,7 @@ public class LocalObject
*
* @throws NO_IMPLEMENT always. If used, the method must be overridden.
*/
+ @SuppressWarnings("unchecked") // Needed for API compatibility
public ServantObject _servant_preinvoke(String operation, Class expectedType)
{
throw new NO_IMPLEMENT(INAPPROPRIATE);
diff --git a/libjava/classpath/org/omg/CORBA/portable/Delegate.java b/libjava/classpath/org/omg/CORBA/portable/Delegate.java
index 6d1024461a7..2c716f57e86 100644
--- a/libjava/classpath/org/omg/CORBA/portable/Delegate.java
+++ b/libjava/classpath/org/omg/CORBA/portable/Delegate.java
@@ -375,7 +375,8 @@ public abstract class Delegate
*
* @return the servant or null if the servant is not an expected type
* of the method is not supported, for example, due security reasons.
- */
+ */
+ @SuppressWarnings("unchecked") // Needed for API compatibility
public ServantObject servant_preinvoke(org.omg.CORBA.Object self,
String operation, Class expectedType
)
diff --git a/libjava/classpath/org/omg/CORBA/portable/InputStream.java b/libjava/classpath/org/omg/CORBA/portable/InputStream.java
index 2f6a487b836..aee540d0103 100644
--- a/libjava/classpath/org/omg/CORBA/portable/InputStream.java
+++ b/libjava/classpath/org/omg/CORBA/portable/InputStream.java
@@ -237,6 +237,7 @@ public abstract class InputStream
* @param klass a CORBA class
* @throws NO_IMPLEMENT, always.
*/
+ @SuppressWarnings("unchecked") // Needed for API compatibility
public Object read_Object(Class klass)
{
throw new NO_IMPLEMENT();
diff --git a/libjava/classpath/org/omg/CORBA/portable/ObjectImpl.java b/libjava/classpath/org/omg/CORBA/portable/ObjectImpl.java
index f1e348e5304..c121ac1bd3d 100644
--- a/libjava/classpath/org/omg/CORBA/portable/ObjectImpl.java
+++ b/libjava/classpath/org/omg/CORBA/portable/ObjectImpl.java
@@ -341,6 +341,7 @@ public abstract class ObjectImpl
* @return the servant or null if the servant is not an expected type
* of the method is not supported, for example, due security reasons.
*/
+ @SuppressWarnings("unchecked") // Needed for API compatibility
public ServantObject _servant_preinvoke(String method, Class expected_type)
{
return delegate.servant_preinvoke(this, method, expected_type);
diff --git a/libjava/classpath/org/omg/CORBA_2_3/portable/InputStream.java b/libjava/classpath/org/omg/CORBA_2_3/portable/InputStream.java
index 349590eed2e..a59c33eba4e 100644
--- a/libjava/classpath/org/omg/CORBA_2_3/portable/InputStream.java
+++ b/libjava/classpath/org/omg/CORBA_2_3/portable/InputStream.java
@@ -99,6 +99,7 @@ public abstract class InputStream
*
* @return an abstract interface, unmarshaled from the stream
*/
+ @SuppressWarnings("unchecked") // Needed for API compatibility
public Object read_abstract_interface(Class clz)
{
boolean isValue = read_boolean();
@@ -147,6 +148,7 @@ public abstract class InputStream
*
* @return an value type structure, unmarshaled from the stream
*/
+ @SuppressWarnings("unchecked") // Needed for API compatibility
public Serializable read_value(Class clz)
{
return Vio.read(this, clz);
diff --git a/libjava/classpath/org/omg/CORBA_2_3/portable/OutputStream.java b/libjava/classpath/org/omg/CORBA_2_3/portable/OutputStream.java
index f1369f78246..818c718d25e 100644
--- a/libjava/classpath/org/omg/CORBA_2_3/portable/OutputStream.java
+++ b/libjava/classpath/org/omg/CORBA_2_3/portable/OutputStream.java
@@ -136,6 +136,7 @@ public abstract class OutputStream
*
* @param value a value type object to write.
*/
+ @SuppressWarnings("unchecked") // Needed for API compatibility
public void write_value(Serializable value, Class clz)
{
Vio.write(this, value, clz);
diff --git a/libjava/classpath/org/omg/DynamicAny/_DynAnyFactoryStub.java b/libjava/classpath/org/omg/DynamicAny/_DynAnyFactoryStub.java
index d4b569069b8..d72ebabbd79 100644
--- a/libjava/classpath/org/omg/DynamicAny/_DynAnyFactoryStub.java
+++ b/libjava/classpath/org/omg/DynamicAny/_DynAnyFactoryStub.java
@@ -68,6 +68,7 @@ public class _DynAnyFactoryStub
/**
* The purpose and value of this field are not documented.
*/
+ @SuppressWarnings("unchecked") // Needed for API compatibility
public static final Class _opsClass = DynAnyFactoryOperations.class;
/**
diff --git a/libjava/classpath/org/omg/DynamicAny/_DynAnyStub.java b/libjava/classpath/org/omg/DynamicAny/_DynAnyStub.java
index 0e3e390589f..fa19da14463 100644
--- a/libjava/classpath/org/omg/DynamicAny/_DynAnyStub.java
+++ b/libjava/classpath/org/omg/DynamicAny/_DynAnyStub.java
@@ -66,6 +66,7 @@ public class _DynAnyStub
/**
* The purpose and value of this field are not documented.
*/
+ @SuppressWarnings("unchecked") // Needed for API compatibility
public static final Class _opsClass = DynAnyOperations.class;
/**
diff --git a/libjava/classpath/org/omg/DynamicAny/_DynArrayStub.java b/libjava/classpath/org/omg/DynamicAny/_DynArrayStub.java
index 869e269c3ef..fc7ba978b3f 100644
--- a/libjava/classpath/org/omg/DynamicAny/_DynArrayStub.java
+++ b/libjava/classpath/org/omg/DynamicAny/_DynArrayStub.java
@@ -66,6 +66,7 @@ public class _DynArrayStub
/**
* The purpose and value of this field are not documented.
*/
+ @SuppressWarnings("unchecked") // Needed for API compatibility
public static final Class _opsClass = DynArrayOperations.class;
/**
diff --git a/libjava/classpath/org/omg/DynamicAny/_DynEnumStub.java b/libjava/classpath/org/omg/DynamicAny/_DynEnumStub.java
index 73e9fa72d61..fd3e9db7eb1 100644
--- a/libjava/classpath/org/omg/DynamicAny/_DynEnumStub.java
+++ b/libjava/classpath/org/omg/DynamicAny/_DynEnumStub.java
@@ -66,6 +66,7 @@ public class _DynEnumStub
/**
* The purpose and value of this field are not documented.
*/
+ @SuppressWarnings("unchecked") // Needed for API compatibility
public static final Class _opsClass = DynEnumOperations.class;
/**
diff --git a/libjava/classpath/org/omg/DynamicAny/_DynFixedStub.java b/libjava/classpath/org/omg/DynamicAny/_DynFixedStub.java
index 97a3d94dfef..5fab8b1b2e7 100644
--- a/libjava/classpath/org/omg/DynamicAny/_DynFixedStub.java
+++ b/libjava/classpath/org/omg/DynamicAny/_DynFixedStub.java
@@ -66,6 +66,7 @@ public class _DynFixedStub
/**
* The purpose and value of this field are not documented.
*/
+ @SuppressWarnings("unchecked") // Needed for API compatibility
public static final Class _opsClass = DynFixedOperations.class;
/**
diff --git a/libjava/classpath/org/omg/DynamicAny/_DynSequenceStub.java b/libjava/classpath/org/omg/DynamicAny/_DynSequenceStub.java
index 802ff2332cc..0fdc19d63ea 100644
--- a/libjava/classpath/org/omg/DynamicAny/_DynSequenceStub.java
+++ b/libjava/classpath/org/omg/DynamicAny/_DynSequenceStub.java
@@ -67,6 +67,7 @@ public class _DynSequenceStub
/**
* The purpose and value of this field are not documented.
*/
+ @SuppressWarnings("unchecked") // Needed for API compatibility
public static final Class _opsClass = DynSequenceOperations.class;
/**
diff --git a/libjava/classpath/org/omg/DynamicAny/_DynStructStub.java b/libjava/classpath/org/omg/DynamicAny/_DynStructStub.java
index a48f2a63352..73e7650b343 100644
--- a/libjava/classpath/org/omg/DynamicAny/_DynStructStub.java
+++ b/libjava/classpath/org/omg/DynamicAny/_DynStructStub.java
@@ -68,6 +68,7 @@ public class _DynStructStub
/**
* The purpose and value of this field are not documented.
*/
+ @SuppressWarnings("unchecked") // Needed for API compatibility
public static final Class _opsClass = DynStructOperations.class;
/**
diff --git a/libjava/classpath/org/omg/DynamicAny/_DynUnionStub.java b/libjava/classpath/org/omg/DynamicAny/_DynUnionStub.java
index b7ba74e00a8..8328b5e8694 100644
--- a/libjava/classpath/org/omg/DynamicAny/_DynUnionStub.java
+++ b/libjava/classpath/org/omg/DynamicAny/_DynUnionStub.java
@@ -68,6 +68,7 @@ public class _DynUnionStub
/**
* The purpose and value of this field are not documented.
*/
+ @SuppressWarnings("unchecked") // Needed for API compatibility
public static final Class _opsClass = DynUnionOperations.class;
/**
diff --git a/libjava/classpath/org/omg/DynamicAny/_DynValueStub.java b/libjava/classpath/org/omg/DynamicAny/_DynValueStub.java
index 5c6b7a209b2..a781772c560 100644
--- a/libjava/classpath/org/omg/DynamicAny/_DynValueStub.java
+++ b/libjava/classpath/org/omg/DynamicAny/_DynValueStub.java
@@ -68,6 +68,7 @@ public class _DynValueStub
/**
* The purpose and value of this field are not documented.
*/
+ @SuppressWarnings("unchecked") // Needed for API compatibility
public static final Class _opsClass = DynValueOperations.class;
/**
diff --git a/libjava/classpath/org/omg/PortableServer/_ServantActivatorStub.java b/libjava/classpath/org/omg/PortableServer/_ServantActivatorStub.java
index f323f6d381c..3cc4be9909a 100644
--- a/libjava/classpath/org/omg/PortableServer/_ServantActivatorStub.java
+++ b/libjava/classpath/org/omg/PortableServer/_ServantActivatorStub.java
@@ -70,6 +70,7 @@ public class _ServantActivatorStub
* This the purpose of this field is undocumented up till 1.5 java API
* inclusive.
*/
+ @SuppressWarnings("unchecked") // Needed for API compatibility
public static final Class _opsClass = ServantActivatorOperations.class;
/**
diff --git a/libjava/classpath/org/omg/PortableServer/_ServantLocatorStub.java b/libjava/classpath/org/omg/PortableServer/_ServantLocatorStub.java
index 9f142e1e839..9bbd58f8848 100644
--- a/libjava/classpath/org/omg/PortableServer/_ServantLocatorStub.java
+++ b/libjava/classpath/org/omg/PortableServer/_ServantLocatorStub.java
@@ -71,6 +71,7 @@ public class _ServantLocatorStub
* This the purpose of this field is undocumented up till 1.5 java API
* inclusive.
*/
+ @SuppressWarnings("unchecked") // Needed for API compatibility
public static final Class _opsClass = ServantLocatorOperations.class;
/**
diff --git a/libjava/classpath/resource/Makefile.in b/libjava/classpath/resource/Makefile.in
index f9f680ae6d6..81e609175f5 100644
--- a/libjava/classpath/resource/Makefile.in
+++ b/libjava/classpath/resource/Makefile.in
@@ -40,6 +40,9 @@ DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/../../config/lead-dot.m4 \
+ $(top_srcdir)/../../config/lib-ld.m4 \
+ $(top_srcdir)/../../config/lib-link.m4 \
+ $(top_srcdir)/../../config/lib-prefix.m4 \
$(top_srcdir)/../../config/multi.m4 \
$(top_srcdir)/../../config/no-executables.m4 \
$(top_srcdir)/../../config/override.m4 \
@@ -58,9 +61,7 @@ am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_func_which_gethostbyname_r.m4 \
$(top_srcdir)/m4/gcc_attribute.m4 $(top_srcdir)/m4/iconv.m4 \
- $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
- $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/../../mkinstalldirs
diff --git a/libjava/classpath/scripts/Makefile.in b/libjava/classpath/scripts/Makefile.in
index 214b84aeb51..d8685815e03 100644
--- a/libjava/classpath/scripts/Makefile.in
+++ b/libjava/classpath/scripts/Makefile.in
@@ -40,6 +40,9 @@ DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/../../config/lead-dot.m4 \
+ $(top_srcdir)/../../config/lib-ld.m4 \
+ $(top_srcdir)/../../config/lib-link.m4 \
+ $(top_srcdir)/../../config/lib-prefix.m4 \
$(top_srcdir)/../../config/multi.m4 \
$(top_srcdir)/../../config/no-executables.m4 \
$(top_srcdir)/../../config/override.m4 \
@@ -58,9 +61,7 @@ am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_func_which_gethostbyname_r.m4 \
$(top_srcdir)/m4/gcc_attribute.m4 $(top_srcdir)/m4/iconv.m4 \
- $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
- $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/../../mkinstalldirs
diff --git a/libjava/classpath/tools/Makefile.in b/libjava/classpath/tools/Makefile.in
index bebea3dd976..adb8c09b7d6 100644
--- a/libjava/classpath/tools/Makefile.in
+++ b/libjava/classpath/tools/Makefile.in
@@ -54,6 +54,9 @@ DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/../../config/lead-dot.m4 \
+ $(top_srcdir)/../../config/lib-ld.m4 \
+ $(top_srcdir)/../../config/lib-link.m4 \
+ $(top_srcdir)/../../config/lib-prefix.m4 \
$(top_srcdir)/../../config/multi.m4 \
$(top_srcdir)/../../config/no-executables.m4 \
$(top_srcdir)/../../config/override.m4 \
@@ -72,9 +75,7 @@ am__aclocal_m4_deps = $(top_srcdir)/../../config/depstand.m4 \
$(top_srcdir)/m4/ax_create_stdint_h.m4 \
$(top_srcdir)/m4/ax_func_which_gethostbyname_r.m4 \
$(top_srcdir)/m4/gcc_attribute.m4 $(top_srcdir)/m4/iconv.m4 \
- $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
- $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/pkg.m4 \
- $(top_srcdir)/configure.ac
+ $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/../../mkinstalldirs
diff --git a/libjava/classpath/tools/classes/com/sun/tools/javadoc/Main.class b/libjava/classpath/tools/classes/com/sun/tools/javadoc/Main.class
index f2822a6e266..50a486c5601 100644
--- a/libjava/classpath/tools/classes/com/sun/tools/javadoc/Main.class
+++ b/libjava/classpath/tools/classes/com/sun/tools/javadoc/Main.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/FileSystemClassLoader$FileStreamInfo.class b/libjava/classpath/tools/classes/gnu/classpath/tools/FileSystemClassLoader$FileStreamInfo.class
index 83a757fb1bb..e64ee9f79ce 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/FileSystemClassLoader$FileStreamInfo.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/FileSystemClassLoader$FileStreamInfo.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/FileSystemClassLoader$JarStreamInfo.class b/libjava/classpath/tools/classes/gnu/classpath/tools/FileSystemClassLoader$JarStreamInfo.class
index 4e4d39268c8..27a4843a48f 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/FileSystemClassLoader$JarStreamInfo.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/FileSystemClassLoader$JarStreamInfo.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/FileSystemClassLoader.class b/libjava/classpath/tools/classes/gnu/classpath/tools/FileSystemClassLoader.class
index 7b65b829c1e..cc4d74a6db3 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/FileSystemClassLoader.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/FileSystemClassLoader.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/IOToolkit.class b/libjava/classpath/tools/classes/gnu/classpath/tools/IOToolkit.class
index d5f72fb6c6d..967a3a8e8a9 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/IOToolkit.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/IOToolkit.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/MalformedInputEvent.class b/libjava/classpath/tools/classes/gnu/classpath/tools/MalformedInputEvent.class
index 445a1f307d1..c3701b155a9 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/MalformedInputEvent.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/MalformedInputEvent.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/NotifyingInputStreamReader.class b/libjava/classpath/tools/classes/gnu/classpath/tools/NotifyingInputStreamReader.class
index fc7d1349f43..424a8629382 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/NotifyingInputStreamReader.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/NotifyingInputStreamReader.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/StringToolkit.class b/libjava/classpath/tools/classes/gnu/classpath/tools/StringToolkit.class
index bef494c89ef..1f6a48855b8 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/StringToolkit.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/StringToolkit.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/AbstractDoclet$DocletOptionGroup.class b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/AbstractDoclet$DocletOptionGroup.class
index 5b3b3d91452..56584bdbb7b 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/AbstractDoclet$DocletOptionGroup.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/AbstractDoclet$DocletOptionGroup.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/AbstractDoclet$DocletOptionTag.class b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/AbstractDoclet$DocletOptionTag.class
index 2aee2cfd564..939e890ceae 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/AbstractDoclet$DocletOptionTag.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/AbstractDoclet$DocletOptionTag.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/AbstractDoclet$DocletOptionTaglet.class b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/AbstractDoclet$DocletOptionTaglet.class
index b88206bf8ad..d81864f04a8 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/AbstractDoclet$DocletOptionTaglet.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/AbstractDoclet$DocletOptionTaglet.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/AbstractDoclet$DocletOptionTagletPath.class b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/AbstractDoclet$DocletOptionTagletPath.class
index c16cb5a7d25..9336e358481 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/AbstractDoclet$DocletOptionTagletPath.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/AbstractDoclet$DocletOptionTagletPath.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/AbstractDoclet$IndexKey.class b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/AbstractDoclet$IndexKey.class
index 7247ed826b7..b3a2f7b42ee 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/AbstractDoclet$IndexKey.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/AbstractDoclet$IndexKey.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/AbstractDoclet$InterfaceRelation.class b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/AbstractDoclet$InterfaceRelation.class
index 28d360b4d6e..0e061038e72 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/AbstractDoclet$InterfaceRelation.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/AbstractDoclet$InterfaceRelation.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/AbstractDoclet$UsageType.class b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/AbstractDoclet$UsageType.class
index e06dc5f523b..c962bcc1c39 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/AbstractDoclet$UsageType.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/AbstractDoclet$UsageType.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/AbstractDoclet.class b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/AbstractDoclet.class
index 6158ab308bf..794d3568d94 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/AbstractDoclet.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/AbstractDoclet.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/DocletConfigurationException.class b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/DocletConfigurationException.class
index f8f42878876..28d3cd17aa5 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/DocletConfigurationException.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/DocletConfigurationException.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/DocletOption.class b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/DocletOption.class
index 2b2bf916578..5b491a4eb42 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/DocletOption.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/DocletOption.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/DocletOptionColonSeparated.class b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/DocletOptionColonSeparated.class
index b51e16779fa..5f4f6b4a514 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/DocletOptionColonSeparated.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/DocletOptionColonSeparated.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/DocletOptionFile.class b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/DocletOptionFile.class
index ff961e93568..aac98a43077 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/DocletOptionFile.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/DocletOptionFile.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/DocletOptionFlag.class b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/DocletOptionFlag.class
index da98b73013e..ae9466a0deb 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/DocletOptionFlag.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/DocletOptionFlag.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/DocletOptionPackageWildcard.class b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/DocletOptionPackageWildcard.class
index 72b2822fdfd..3f9d436cc84 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/DocletOptionPackageWildcard.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/DocletOptionPackageWildcard.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/DocletOptionString.class b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/DocletOptionString.class
index 39529c2667c..79bbe2c51b2 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/DocletOptionString.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/DocletOptionString.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/InvalidPackageWildcardException.class b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/InvalidPackageWildcardException.class
index c2cfa70b874..0141cb1f47d 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/InvalidPackageWildcardException.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/InvalidPackageWildcardException.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/PackageGroup.class b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/PackageGroup.class
index a046a58a9c1..c9bdbaa68a0 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/PackageGroup.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/PackageGroup.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/PackageMatcher.class b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/PackageMatcher.class
index 6370bc4a1ef..88ed2d53cc6 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/PackageMatcher.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/PackageMatcher.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/StandardTaglet.class b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/StandardTaglet.class
index 711c57ef370..2422f3e5350 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/StandardTaglet.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/StandardTaglet.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/debugdoclet/DebugDoclet.class b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/debugdoclet/DebugDoclet.class
index 70bd890c263..0ddee8859f2 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/debugdoclet/DebugDoclet.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/debugdoclet/DebugDoclet.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/CssClass.class b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/CssClass.class
index 9fe21945a26..89ca9bb2656 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/CssClass.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/CssClass.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/ExternalDocSet.class b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/ExternalDocSet.class
index 125649f93ef..16ffa3350ae 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/ExternalDocSet.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/ExternalDocSet.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/HtmlDoclet$1.class b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/HtmlDoclet$1.class
index 4db03df8d41..3576ed98ead 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/HtmlDoclet$1.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/HtmlDoclet$1.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/HtmlDoclet$2.class b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/HtmlDoclet$2.class
index b2ef23465e0..3d38a044d03 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/HtmlDoclet$2.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/HtmlDoclet$2.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/HtmlDoclet$3.class b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/HtmlDoclet$3.class
index 83886a0a3c6..c6e6f121d7e 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/HtmlDoclet$3.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/HtmlDoclet$3.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/HtmlDoclet$TreeNode.class b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/HtmlDoclet$TreeNode.class
index f0d1ad7d836..be1eab39129 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/HtmlDoclet$TreeNode.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/HtmlDoclet$TreeNode.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/HtmlDoclet.class b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/HtmlDoclet.class
index a9e919bdf84..1e86b0b069b 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/HtmlDoclet.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/HtmlDoclet.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/HtmlPage.class b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/HtmlPage.class
index c8fef270e8a..ffa980d1e7b 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/HtmlPage.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/HtmlPage.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/HtmlTagletContext.class b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/HtmlTagletContext.class
index 9c422cac9e5..39fa437d431 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/HtmlTagletContext.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/htmldoclet/HtmlTagletContext.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/Driver$1.class b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/Driver$1.class
index 016bcdda9aa..51027ef0e74 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/Driver$1.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/Driver$1.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/Driver$NullErrorReporter.class b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/Driver$NullErrorReporter.class
index fdaf194670b..42b2a7d382f 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/Driver$NullErrorReporter.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/Driver$NullErrorReporter.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/Driver$UsageType.class b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/Driver$UsageType.class
index bc7fc363d33..dfd0a225197 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/Driver$UsageType.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/Driver$UsageType.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/Driver.class b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/Driver.class
index 11aeeb98382..f34cca51124 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/Driver.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/Driver.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/Driver1_4.class b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/Driver1_4.class
index 7c022b493a5..e18500ad88b 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/Driver1_4.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/Driver1_4.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/HtmlRepairer$TagInfo.class b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/HtmlRepairer$TagInfo.class
index 0afc368b04b..7c0462beb70 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/HtmlRepairer$TagInfo.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/HtmlRepairer$TagInfo.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/HtmlRepairer.class b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/HtmlRepairer.class
index 32d55684c97..f153d7f0daa 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/HtmlRepairer.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/HtmlRepairer.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/TargetContext.class b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/TargetContext.class
index de769e90d95..9e4d11f266d 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/TargetContext.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/TargetContext.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTranslet$DocErrorReporterOutputStream.class b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTranslet$DocErrorReporterOutputStream.class
index 949aaf4113c..d6d09c0fd8a 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTranslet$DocErrorReporterOutputStream.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTranslet$DocErrorReporterOutputStream.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTranslet.class b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTranslet.class
index d21fcb66eb3..fb76313b51a 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTranslet.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTranslet.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTransletConfigurationException.class b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTransletConfigurationException.class
index 9cfc10e7151..e13119b5c4c 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTransletConfigurationException.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTransletConfigurationException.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTransletException.class b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTransletException.class
index 7c2a5bce084..01c62844e30 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTransletException.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTransletException.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTransletOptions.class b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTransletOptions.class
index b0dc3a67685..a21b9228fa3 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTransletOptions.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTransletOptions.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/doctranslet/JarClassLoader.class b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/doctranslet/JarClassLoader.class
index 7fcd83c3b70..262031d4a56 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/doctranslet/JarClassLoader.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/doctranslet/JarClassLoader.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/doctranslet/OutputFileInfo.class b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/doctranslet/OutputFileInfo.class
index a5491d4f458..3b14f2323a4 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/doctranslet/OutputFileInfo.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/doclets/xmldoclet/doctranslet/OutputFileInfo.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/AbstractTagImpl.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/AbstractTagImpl.class
index df6a4dcc6e1..6f8b4208926 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/AbstractTagImpl.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/AbstractTagImpl.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ArrayCharacterIterator.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ArrayCharacterIterator.class
index 66c1f8a0430..2a21e67a255 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ArrayCharacterIterator.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ArrayCharacterIterator.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/BlockSourceComponent.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/BlockSourceComponent.class
index 164d5f38094..5d89719d400 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/BlockSourceComponent.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/BlockSourceComponent.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/BracketClose.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/BracketClose.class
index 4a6a51783a1..3802e3405ce 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/BracketClose.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/BracketClose.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ClassComponent.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ClassComponent.class
index aa31f74426d..5d2f22bd82c 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ClassComponent.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ClassComponent.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ClassDocImpl.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ClassDocImpl.class
index d1be100e4a5..36049302b99 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ClassDocImpl.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ClassDocImpl.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ClassDocProxy.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ClassDocProxy.class
index 62185a01725..de3c21147f6 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ClassDocProxy.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ClassDocProxy.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ClassDocReflectedImpl.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ClassDocReflectedImpl.class
index a9b7f63119d..7f8381f9160 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ClassDocReflectedImpl.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ClassDocReflectedImpl.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/CommentComponent.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/CommentComponent.class
index 063715191ee..ce853e17119 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/CommentComponent.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/CommentComponent.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ConstructorDocImpl.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ConstructorDocImpl.class
index 774e33c0dad..8ab08afb24c 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ConstructorDocImpl.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ConstructorDocImpl.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Debug.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Debug.class
index 849e68707a8..fb026a0b7a7 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Debug.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Debug.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/DirectoryTree$FileNode.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/DirectoryTree$FileNode.class
index c1c373f8715..6d963c31b12 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/DirectoryTree$FileNode.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/DirectoryTree$FileNode.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/DirectoryTree.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/DirectoryTree.class
index 1c1abd549f5..3d6bf8c6a57 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/DirectoryTree.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/DirectoryTree.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/DocImpl.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/DocImpl.class
index e93e4604a90..2963ccf597e 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/DocImpl.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/DocImpl.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/EmptyStatementComponent.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/EmptyStatementComponent.class
index e25d162ccd6..7c9903dc5ea 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/EmptyStatementComponent.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/EmptyStatementComponent.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ErrorReporter.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ErrorReporter.class
index 3fda481956a..d32b961f8c2 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ErrorReporter.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ErrorReporter.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ExecutableMemberDocImpl.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ExecutableMemberDocImpl.class
index 34503125fc5..4ca710dd980 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ExecutableMemberDocImpl.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ExecutableMemberDocImpl.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/FieldComponent.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/FieldComponent.class
index 32fb32e415c..a38964f0f08 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/FieldComponent.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/FieldComponent.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/FieldDocImpl.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/FieldDocImpl.class
index 31c971d56eb..b6855389289 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/FieldDocImpl.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/FieldDocImpl.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/FunctionComponent.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/FunctionComponent.class
index 4a8a340e4b9..11549cf7f8b 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/FunctionComponent.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/FunctionComponent.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/IgnoredFileParseException.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/IgnoredFileParseException.class
index f0cf14df720..5b5aff1523b 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/IgnoredFileParseException.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/IgnoredFileParseException.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ImportComponent.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ImportComponent.class
index 7f30dacd1c6..884422294cd 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ImportComponent.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ImportComponent.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/InheritDocTagImpl.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/InheritDocTagImpl.class
index 5d56604eefd..715d01c5a0a 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/InheritDocTagImpl.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/InheritDocTagImpl.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/JavadocWrapper.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/JavadocWrapper.class
index df1abf1ac37..d38c2bfd4f0 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/JavadocWrapper.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/JavadocWrapper.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/LinkTagImpl.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/LinkTagImpl.class
index 5f1ca92d6d1..b470a9af5f7 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/LinkTagImpl.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/LinkTagImpl.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$1.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$1.class
index 22adcc22814..2ba0ccf09cc 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$1.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$1.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$10.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$10.class
index 2cba5c1eb78..597a142cf50 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$10.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$10.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$11.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$11.class
index 71d6e115251..bf1c99a432e 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$11.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$11.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$12.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$12.class
index 070cc7c54b2..7bf3e4cb45f 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$12.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$12.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$13.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$13.class
index 6d12c7db17d..41645e8e9b4 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$13.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$13.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$14.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$14.class
index 211ef8606c8..ed2e3427e9a 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$14.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$14.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$15.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$15.class
index f758b36833d..68ec874477a 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$15.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$15.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$16.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$16.class
index b9e96b63fca..54fefac98b2 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$16.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$16.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$17.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$17.class
index ae88b4f6695..81583d89783 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$17.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$17.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$18.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$18.class
index 4b417faab6d..a3952995909 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$18.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$18.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$19.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$19.class
index aa349663be8..61bf1f80899 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$19.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$19.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$2.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$2.class
index 607d9b7a2a5..60869e5f88f 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$2.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$2.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$20.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$20.class
index f0201ad3011..5a9d8482806 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$20.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$20.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$21.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$21.class
index 83dfc4b56eb..12a49837f2b 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$21.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$21.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$22.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$22.class
index 997fde10d05..32e26ffa466 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$22.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$22.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$23.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$23.class
index 4c3d30a1c7a..fd99e130d67 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$23.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$23.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$24.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$24.class
index b6531dae73e..991629a166d 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$24.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$24.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$25.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$25.class
index 782a3a38764..441b8dac273 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$25.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$25.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$3.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$3.class
index ccb4c5cdea7..b5015e391a9 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$3.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$3.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$4.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$4.class
index 7bd4d416eac..8690a7e735b 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$4.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$4.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$5.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$5.class
index 8a1b9a09071..6dbf679eea3 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$5.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$5.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$6.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$6.class
index f6f9ff87bbc..2a4473bbd23 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$6.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$6.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$7.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$7.class
index 8ff1acc7f37..50d01704914 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$7.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$7.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$8.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$8.class
index d1a4f5f1ced..5dde313d481 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$8.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$8.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$9.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$9.class
index 8d14fc4c976..19e991a628e 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$9.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$9.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$OptionProcessor.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$OptionProcessor.class
index 15840c0c1bf..afa9335a840 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$OptionProcessor.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main$OptionProcessor.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main.class
index e23eda47011..2f46dd2828c 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Main.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/MemberDocImpl.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/MemberDocImpl.class
index 7b5557571a7..bdf920109b7 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/MemberDocImpl.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/MemberDocImpl.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/MethodDocImpl.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/MethodDocImpl.class
index 743f0be560c..5bff1ce2893 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/MethodDocImpl.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/MethodDocImpl.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/PackageComponent.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/PackageComponent.class
index 60e378fe2d5..e9947add8c3 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/PackageComponent.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/PackageComponent.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/PackageDocImpl.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/PackageDocImpl.class
index 6dbe6a8fa94..2ef9d54d998 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/PackageDocImpl.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/PackageDocImpl.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ParamTagImpl.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ParamTagImpl.class
index 25ea5872faf..e2fadecfdd1 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ParamTagImpl.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ParamTagImpl.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ParameterImpl.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ParameterImpl.class
index 2940fc08bf1..93575d269ec 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ParameterImpl.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ParameterImpl.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ParseException.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ParseException.class
index 716b5681f6d..52c67ef01b4 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ParseException.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ParseException.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Parser$1.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Parser$1.class
index 82405eb5075..55600beac85 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Parser$1.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Parser$1.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Parser$Context.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Parser$Context.class
index 18360502620..f89d662043a 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Parser$Context.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Parser$Context.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Parser.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Parser.class
index c12d30f54a3..037311b3ba2 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Parser.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Parser.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ProgramElementDocImpl.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ProgramElementDocImpl.class
index 27aaa1a194d..50d6e52002f 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ProgramElementDocImpl.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ProgramElementDocImpl.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/RootDocImpl$ResolvedImportClassFile.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/RootDocImpl$ResolvedImportClassFile.class
index 75ef96cb9ec..a82823a90e9 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/RootDocImpl$ResolvedImportClassFile.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/RootDocImpl$ResolvedImportClassFile.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/RootDocImpl$ResolvedImportNotFound.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/RootDocImpl$ResolvedImportNotFound.class
index 6f6faf537f3..68af4507219 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/RootDocImpl$ResolvedImportNotFound.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/RootDocImpl$ResolvedImportNotFound.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/RootDocImpl$ResolvedImportPackageFile.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/RootDocImpl$ResolvedImportPackageFile.class
index e6f0bde1536..4302abeb277 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/RootDocImpl$ResolvedImportPackageFile.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/RootDocImpl$ResolvedImportPackageFile.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/RootDocImpl$ResolvedImportReflectionClass.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/RootDocImpl$ResolvedImportReflectionClass.class
index 4a29649dde1..c0b66ddc301 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/RootDocImpl$ResolvedImportReflectionClass.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/RootDocImpl$ResolvedImportReflectionClass.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/RootDocImpl$ResolvedImportReflectionPackage.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/RootDocImpl$ResolvedImportReflectionPackage.class
index e956768707e..2069ee6d1bf 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/RootDocImpl$ResolvedImportReflectionPackage.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/RootDocImpl$ResolvedImportReflectionPackage.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/RootDocImpl$ScheduledClass.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/RootDocImpl$ScheduledClass.class
index 92ddaf87af7..9c76827c8ff 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/RootDocImpl$ScheduledClass.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/RootDocImpl$ScheduledClass.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/RootDocImpl.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/RootDocImpl.class
index f06d76f79d6..3db73689da6 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/RootDocImpl.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/RootDocImpl.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/SeeTagImpl.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/SeeTagImpl.class
index 9fa4c15cfe2..324fb5be08f 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/SeeTagImpl.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/SeeTagImpl.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/SerialFieldTagImpl.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/SerialFieldTagImpl.class
index e83396669f4..5f75b5a2013 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/SerialFieldTagImpl.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/SerialFieldTagImpl.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/SlashSlashCommentComponent.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/SlashSlashCommentComponent.class
index 751f5b6b6f3..470c80c2d83 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/SlashSlashCommentComponent.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/SlashSlashCommentComponent.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/SourceComponent.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/SourceComponent.class
index ec9e789dc43..804802be5dc 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/SourceComponent.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/SourceComponent.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/SourcePositionImpl.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/SourcePositionImpl.class
index da0e63f6c44..3f94fd12812 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/SourcePositionImpl.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/SourcePositionImpl.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/StaticBlockComponent.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/StaticBlockComponent.class
index 75640c84a52..b59c7fdc62f 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/StaticBlockComponent.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/StaticBlockComponent.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/TagImpl.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/TagImpl.class
index e51bbf4f2f7..536c10741ad 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/TagImpl.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/TagImpl.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/TemporaryStore.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/TemporaryStore.class
index 661f49305cc..cf42c61f5be 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/TemporaryStore.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/TemporaryStore.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/TextTagImpl.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/TextTagImpl.class
index 494a09e0933..73e5502993b 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/TextTagImpl.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/TextTagImpl.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ThrowsTagImpl.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ThrowsTagImpl.class
index d86084caa70..06cc77ca33b 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ThrowsTagImpl.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ThrowsTagImpl.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Timer.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Timer.class
index 1d448e37d10..8f5dc610960 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Timer.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Timer.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/TimerDoclet$1.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/TimerDoclet$1.class
index e3e7ede3aa9..e3408997374 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/TimerDoclet$1.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/TimerDoclet$1.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/TimerDoclet.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/TimerDoclet.class
index ea6cb557f6e..965ef1c3379 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/TimerDoclet.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/TimerDoclet.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/TypeImpl.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/TypeImpl.class
index e2e630a5c6b..50bb53e8f20 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/TypeImpl.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/TypeImpl.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/TypeVariableImpl.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/TypeVariableImpl.class
index 24ba68dc90a..2ebf595d717 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/TypeVariableImpl.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/TypeVariableImpl.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ValueTagImpl.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ValueTagImpl.class
index 94302c2ebbb..872c40309ad 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ValueTagImpl.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/ValueTagImpl.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Whitespace.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Whitespace.class
index d7051519d56..965c1aa4199 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Whitespace.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/Whitespace.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/AdditionExpression.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/AdditionExpression.class
index fe0b4828dd9..ef3bbff79fd 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/AdditionExpression.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/AdditionExpression.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/AndExpression.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/AndExpression.class
index fe4733472ff..b5f1deb3c83 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/AndExpression.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/AndExpression.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/BinaryBitwiseExpression.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/BinaryBitwiseExpression.class
index 3da691c8314..b83ad660648 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/BinaryBitwiseExpression.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/BinaryBitwiseExpression.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/BinaryComputationExpression.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/BinaryComputationExpression.class
index 1908c173d35..d56220d9569 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/BinaryComputationExpression.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/BinaryComputationExpression.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/BinaryEqualityExpression.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/BinaryEqualityExpression.class
index cfaf94d3aec..52c0522fc1d 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/BinaryEqualityExpression.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/BinaryEqualityExpression.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/BinaryExpression.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/BinaryExpression.class
index fc81485e5a6..688a122096f 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/BinaryExpression.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/BinaryExpression.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/BinaryLogicalExpression.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/BinaryLogicalExpression.class
index 50cba59ca37..ea6978d4722 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/BinaryLogicalExpression.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/BinaryLogicalExpression.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/BinaryRelationExpression.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/BinaryRelationExpression.class
index 0db661d7d2c..72a6fc8d487 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/BinaryRelationExpression.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/BinaryRelationExpression.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/BinaryShiftExpression.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/BinaryShiftExpression.class
index 885e009a8d7..5726e7a3861 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/BinaryShiftExpression.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/BinaryShiftExpression.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/BitShiftRightExpression.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/BitShiftRightExpression.class
index d0abe9d17af..e1f37d57646 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/BitShiftRightExpression.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/BitShiftRightExpression.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/CircularExpressionException.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/CircularExpressionException.class
index 26c14ed4f60..f1a21239aca 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/CircularExpressionException.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/CircularExpressionException.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConditionalExpression.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConditionalExpression.class
index 56050b9f28f..87114d6cb85 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConditionalExpression.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConditionalExpression.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantBoolean.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantBoolean.class
index ebba4c8e490..2ee7e545229 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantBoolean.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantBoolean.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantByte.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantByte.class
index 07a85b1702e..3eacffbfb4e 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantByte.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantByte.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantChar.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantChar.class
index 6d44b80c873..c4de797ec82 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantChar.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantChar.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantDouble.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantDouble.class
index e5b4f83f02f..38700c72310 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantDouble.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantDouble.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantExpression.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantExpression.class
index 791aae005ed..3d194a9b57a 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantExpression.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantExpression.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantFloat.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantFloat.class
index 0fe33bd94e1..61b969fe0f4 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantFloat.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantFloat.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantInteger.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantInteger.class
index 1fc0bf38f12..278ab37d288 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantInteger.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantInteger.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantLong.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantLong.class
index 32af351937b..726914985dc 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantLong.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantLong.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantNull.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantNull.class
index aabd3f5786d..d2c3574d80b 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantNull.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantNull.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantShort.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantShort.class
index 082f9f06f76..691a01933c5 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantShort.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantShort.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantString.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantString.class
index 605278d10ca..67ef948195b 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantString.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ConstantString.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/Context.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/Context.class
index 3afc14603fe..0a21eff60b5 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/Context.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/Context.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/DivisionExpression.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/DivisionExpression.class
index 3543f00ac8a..95cc47b5c35 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/DivisionExpression.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/DivisionExpression.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/EqualExpression.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/EqualExpression.class
index 222c6e40ef6..2fd2087c821 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/EqualExpression.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/EqualExpression.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/Evaluator.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/Evaluator.class
index 4cf131ade81..45c686d3c79 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/Evaluator.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/Evaluator.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ExclusiveOrExpression.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ExclusiveOrExpression.class
index 9b3655780f7..0474dd4a435 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ExclusiveOrExpression.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ExclusiveOrExpression.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/GreaterThanExpression.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/GreaterThanExpression.class
index eef127e4523..33a88296aaf 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/GreaterThanExpression.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/GreaterThanExpression.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/GreaterThanOrEqualExpression.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/GreaterThanOrEqualExpression.class
index 5a8dcc22bc0..f864c02c4bd 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/GreaterThanOrEqualExpression.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/GreaterThanOrEqualExpression.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/IdentifierExpression.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/IdentifierExpression.class
index 10ab5740d36..8b2526638e0 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/IdentifierExpression.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/IdentifierExpression.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/IllegalExpressionException.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/IllegalExpressionException.class
index 7c9b52e78f3..312246f29ed 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/IllegalExpressionException.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/IllegalExpressionException.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/InclusiveOrExpression.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/InclusiveOrExpression.class
index b54b51b2d68..8ac3c22952b 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/InclusiveOrExpression.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/InclusiveOrExpression.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/LessThanExpression.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/LessThanExpression.class
index 08f71e49970..d0d6923af18 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/LessThanExpression.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/LessThanExpression.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/LessThanOrEqualExpression.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/LessThanOrEqualExpression.class
index 97e19b3995e..e40f85658c0 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/LessThanOrEqualExpression.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/LessThanOrEqualExpression.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/LogicalAndExpression.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/LogicalAndExpression.class
index d031ae37df1..da9124b4224 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/LogicalAndExpression.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/LogicalAndExpression.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/LogicalNotExpression.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/LogicalNotExpression.class
index 0fec9ca8c04..055856eef69 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/LogicalNotExpression.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/LogicalNotExpression.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/LogicalOrExpression.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/LogicalOrExpression.class
index c9a6dbf87b6..8ed300494d7 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/LogicalOrExpression.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/LogicalOrExpression.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ModuloExpression.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ModuloExpression.class
index e005b639647..ec9870c0bd1 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ModuloExpression.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ModuloExpression.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/MultiplicationExpression.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/MultiplicationExpression.class
index f5c4efed22e..770c4f4f63f 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/MultiplicationExpression.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/MultiplicationExpression.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/NegateExpression.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/NegateExpression.class
index d136821a917..6745a5096f5 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/NegateExpression.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/NegateExpression.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/NotEqualExpression.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/NotEqualExpression.class
index 57c8943c23c..8a830ca8028 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/NotEqualExpression.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/NotEqualExpression.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/NotExpression.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/NotExpression.class
index 85b5aa5e3e7..96446080070 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/NotExpression.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/NotExpression.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ShiftLeftExpression.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ShiftLeftExpression.class
index 07e417c9cbf..f7f21d2138f 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ShiftLeftExpression.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ShiftLeftExpression.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ShiftRightExpression.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ShiftRightExpression.class
index 92a2cde79d5..afa890a0374 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ShiftRightExpression.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/ShiftRightExpression.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/SubtractionExpression.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/SubtractionExpression.class
index 7d53d1ef2b1..e7496b3d421 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/SubtractionExpression.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/SubtractionExpression.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/Type.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/Type.class
index c0ec6073961..59a4e3fb9f4 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/Type.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/Type.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/TypeCastExpression.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/TypeCastExpression.class
index 018024d6f0f..2f16d29b9fb 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/TypeCastExpression.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/TypeCastExpression.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/UnaryExpression.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/UnaryExpression.class
index b4a86d1b503..7189a2938cc 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/UnaryExpression.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/UnaryExpression.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/UnknownIdentifierException.class b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/UnknownIdentifierException.class
index 97557e03664..3e678af8986 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/UnknownIdentifierException.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/gjdoc/expr/UnknownIdentifierException.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/java2xhtml/Java2xhtml$State.class b/libjava/classpath/tools/classes/gnu/classpath/tools/java2xhtml/Java2xhtml$State.class
index 71875ab874b..f056c6252d8 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/java2xhtml/Java2xhtml$State.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/java2xhtml/Java2xhtml$State.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/java2xhtml/Java2xhtml.class b/libjava/classpath/tools/classes/gnu/classpath/tools/java2xhtml/Java2xhtml.class
index 31d9d66d82d..17de273a03e 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/java2xhtml/Java2xhtml.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/java2xhtml/Java2xhtml.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/javah/ClassWrapper.class b/libjava/classpath/tools/classes/gnu/classpath/tools/javah/ClassWrapper.class
index e853782fc85..d8694184af8 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/javah/ClassWrapper.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/javah/ClassWrapper.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/javah/CniPrintStream.class b/libjava/classpath/tools/classes/gnu/classpath/tools/javah/CniPrintStream.class
index 0c7915ce042..c1a13fedef4 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/javah/CniPrintStream.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/javah/CniPrintStream.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/javah/CniStubPrinter.class b/libjava/classpath/tools/classes/gnu/classpath/tools/javah/CniStubPrinter.class
index e226ffbd5d7..559adbf2a45 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/javah/CniStubPrinter.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/javah/CniStubPrinter.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/javah/GcjhMain.class b/libjava/classpath/tools/classes/gnu/classpath/tools/javah/GcjhMain.class
index edd30ed0c18..1efd92d690c 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/javah/GcjhMain.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/javah/GcjhMain.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/javah/JniIncludePrinter.class b/libjava/classpath/tools/classes/gnu/classpath/tools/javah/JniIncludePrinter.class
index ad9a2877f9d..c31f88ae6b7 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/javah/JniIncludePrinter.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/javah/JniIncludePrinter.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/javah/JniPrintStream.class b/libjava/classpath/tools/classes/gnu/classpath/tools/javah/JniPrintStream.class
index db0d6668438..d8f006c14ef 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/javah/JniPrintStream.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/javah/JniPrintStream.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/javah/JniStubPrinter.class b/libjava/classpath/tools/classes/gnu/classpath/tools/javah/JniStubPrinter.class
index a0f008dbfd8..b7c8453dff0 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/javah/JniStubPrinter.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/javah/JniStubPrinter.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Keywords.class b/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Keywords.class
index 592ff470550..97b0b76fdef 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Keywords.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Keywords.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main.class b/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main.class
index 417249696fc..57adaabe3ec 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/javah/Main.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/javah/MethodHelper.class b/libjava/classpath/tools/classes/gnu/classpath/tools/javah/MethodHelper.class
index 71974cc7d10..fe4f73270ec 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/javah/MethodHelper.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/javah/MethodHelper.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/javah/PathOptionGroup.class b/libjava/classpath/tools/classes/gnu/classpath/tools/javah/PathOptionGroup.class
index 3b03aafa095..1608c7127f6 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/javah/PathOptionGroup.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/javah/PathOptionGroup.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/ClassRmicCompiler$MethodRef.class b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/ClassRmicCompiler$MethodRef.class
index 8877bc5af20..313ad8786ba 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/ClassRmicCompiler$MethodRef.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/ClassRmicCompiler$MethodRef.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/ClassRmicCompiler.class b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/ClassRmicCompiler.class
index 3510ef7b167..8f5efc34920 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/ClassRmicCompiler.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/ClassRmicCompiler.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/CompilationError.class b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/CompilationError.class
index d18117c043d..8953e5c7f52 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/CompilationError.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/CompilationError.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Generator.class b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Generator.class
index 1815f702675..2161af5c8b1 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Generator.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Generator.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/GiopIo.class b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/GiopIo.class
index 82784b8aad1..2f8ed63d06e 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/GiopIo.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/GiopIo.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/HashFinder.class b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/HashFinder.class
index a1f7eeeaa75..16602c561cb 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/HashFinder.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/HashFinder.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$1.class b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$1.class
index 3412c408980..a1d9d5ad0b1 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$1.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$1.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$10.class b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$10.class
index 03925707d5c..2fca747eb9c 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$10.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$10.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$11.class b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$11.class
index 926421bd32d..595b1c3347e 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$11.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$11.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$12.class b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$12.class
index 61b2f4d7610..25b43e13ed5 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$12.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$12.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$13.class b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$13.class
index 2e181a43225..164a8b191fd 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$13.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$13.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$14.class b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$14.class
index bf5dcee7ec2..525c849f9de 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$14.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$14.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$15.class b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$15.class
index f4a66034ff1..e49a39de936 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$15.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$15.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$16.class b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$16.class
index b29f6c36639..7dc9274e9f3 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$16.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$16.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$17.class b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$17.class
index fd1326a565c..d162862fddb 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$17.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$17.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$18.class b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$18.class
index d69b423fe01..5eb04cf9122 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$18.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$18.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$2.class b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$2.class
index 2726976c9b5..4ab4ef52c12 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$2.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$2.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$3.class b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$3.class
index 6b6b43eef71..f4e3f569a2f 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$3.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$3.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$4.class b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$4.class
index a3af4d44492..bff2a625bd4 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$4.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$4.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$5.class b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$5.class
index a35be9bc599..1e8a4a49d1b 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$5.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$5.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$6.class b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$6.class
index 8b0fc5e21e1..6472ff9f42a 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$6.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$6.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$7.class b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$7.class
index 0d6cceb9dcd..68bc216efa8 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$7.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$7.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$8.class b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$8.class
index cce1b586e25..57fa66e4ebb 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$8.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$8.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$9.class b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$9.class
index 2558b26cc24..1aafd5883e7 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$9.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main$9.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main.class b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main.class
index f715c1786d9..f86dafaf9d3 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Main.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/MethodGenerator.class b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/MethodGenerator.class
index ab9c27ea79a..1dcbac85bec 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/MethodGenerator.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/MethodGenerator.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/RMICException.class b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/RMICException.class
index e3ebf5d1623..221530b6bdd 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/RMICException.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/RMICException.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/RmiMethodGenerator.class b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/RmiMethodGenerator.class
index d914461f723..e6a69af1629 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/RmiMethodGenerator.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/RmiMethodGenerator.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/SourceRmicCompiler.class b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/SourceRmicCompiler.class
index b0e41604be1..a8f2f7ab0c7 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/SourceRmicCompiler.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/SourceRmicCompiler.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Variables.class b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Variables.class
index c5a258b8202..c9b4581dc5d 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Variables.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/Variables.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/WrapUnWrapper.class b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/WrapUnWrapper.class
index fe7aa9c8cae..f1518ea6c9b 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/WrapUnWrapper.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/rmic/WrapUnWrapper.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/serialver/SerialVer$1.class b/libjava/classpath/tools/classes/gnu/classpath/tools/serialver/SerialVer$1.class
index 8d46b6f4edd..5d3be820965 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/serialver/SerialVer$1.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/serialver/SerialVer$1.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/serialver/SerialVer$2.class b/libjava/classpath/tools/classes/gnu/classpath/tools/serialver/SerialVer$2.class
index b83195b8fca..a0a4470b9f9 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/serialver/SerialVer$2.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/serialver/SerialVer$2.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/serialver/SerialVer$3.class b/libjava/classpath/tools/classes/gnu/classpath/tools/serialver/SerialVer$3.class
index 8acef502ca3..5a544fdbd8d 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/serialver/SerialVer$3.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/serialver/SerialVer$3.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/serialver/SerialVer.class b/libjava/classpath/tools/classes/gnu/classpath/tools/serialver/SerialVer.class
index c1b42dab8e3..fd84c775a1d 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/serialver/SerialVer.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/serialver/SerialVer.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/taglets/AuthorTaglet$EmailReplacement.class b/libjava/classpath/tools/classes/gnu/classpath/tools/taglets/AuthorTaglet$EmailReplacement.class
index 22248a243d2..1cc5913e80b 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/taglets/AuthorTaglet$EmailReplacement.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/taglets/AuthorTaglet$EmailReplacement.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/taglets/AuthorTaglet.class b/libjava/classpath/tools/classes/gnu/classpath/tools/taglets/AuthorTaglet.class
index 53a734a8b11..5050e4f9e3e 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/taglets/AuthorTaglet.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/taglets/AuthorTaglet.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/taglets/CodeTaglet.class b/libjava/classpath/tools/classes/gnu/classpath/tools/taglets/CodeTaglet.class
index 7fc603cbe03..051e7849a20 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/taglets/CodeTaglet.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/taglets/CodeTaglet.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/taglets/CopyrightTaglet.class b/libjava/classpath/tools/classes/gnu/classpath/tools/taglets/CopyrightTaglet.class
index 84f93434d11..d957f4cd476 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/taglets/CopyrightTaglet.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/taglets/CopyrightTaglet.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/taglets/DeprecatedTaglet.class b/libjava/classpath/tools/classes/gnu/classpath/tools/taglets/DeprecatedTaglet.class
index 3c9e77c20d0..5e5946ecae7 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/taglets/DeprecatedTaglet.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/taglets/DeprecatedTaglet.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/taglets/GenericTaglet.class b/libjava/classpath/tools/classes/gnu/classpath/tools/taglets/GenericTaglet.class
index 50ab7c08ca2..6b767ee4854 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/taglets/GenericTaglet.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/taglets/GenericTaglet.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/taglets/SinceTaglet.class b/libjava/classpath/tools/classes/gnu/classpath/tools/taglets/SinceTaglet.class
index 2b99746265f..4848140186b 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/taglets/SinceTaglet.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/taglets/SinceTaglet.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/taglets/TagletContext.class b/libjava/classpath/tools/classes/gnu/classpath/tools/taglets/TagletContext.class
index 2e6377b0659..9eb4b599a44 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/taglets/TagletContext.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/taglets/TagletContext.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/taglets/ValueTaglet.class b/libjava/classpath/tools/classes/gnu/classpath/tools/taglets/ValueTaglet.class
index aae85fb4604..185f8e4b545 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/taglets/ValueTaglet.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/taglets/ValueTaglet.class
Binary files differ
diff --git a/libjava/classpath/tools/classes/gnu/classpath/tools/taglets/VersionTaglet.class b/libjava/classpath/tools/classes/gnu/classpath/tools/taglets/VersionTaglet.class
index 28bb7c98c90..cde2ca6bf21 100644
--- a/libjava/classpath/tools/classes/gnu/classpath/tools/taglets/VersionTaglet.class
+++ b/libjava/classpath/tools/classes/gnu/classpath/tools/taglets/VersionTaglet.class
Binary files differ
diff --git a/libjava/classpath/tools/com/sun/tools/javadoc/Main.java b/libjava/classpath/tools/com/sun/tools/javadoc/Main.java
index 28930301356..7f0fc108805 100644
--- a/libjava/classpath/tools/com/sun/tools/javadoc/Main.java
+++ b/libjava/classpath/tools/com/sun/tools/javadoc/Main.java
@@ -1,3 +1,40 @@
+/* com.sun.tools.javadoc.Main - Main wrapper for GJDoc
+ Copyright (C) 2007 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
package com.sun.tools.javadoc;
public class Main
diff --git a/libjava/classpath/tools/gnu/classpath/tools/FileSystemClassLoader.java b/libjava/classpath/tools/gnu/classpath/tools/FileSystemClassLoader.java
index 0ec243d5639..3a21fe96e43 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/FileSystemClassLoader.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/FileSystemClassLoader.java
@@ -1,296 +1,313 @@
-/* gnu.classpath.tools.FileSystemClassLoader
- Copyright (C) 2004 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
-
-package gnu.classpath.tools;
-
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileNotFoundException;
-import java.io.InputStream;
-import java.io.IOException;
-import java.io.StreamTokenizer;
-import java.io.StringReader;
-
-import java.net.MalformedURLException;
-import java.net.URL;
-
-import java.util.LinkedList;
-import java.util.List;
-import java.util.ArrayList;
-import java.util.StringTokenizer;
-
-import java.util.jar.JarEntry;
-import java.util.jar.JarFile;
-import java.util.jar.Manifest;
-import java.util.jar.Attributes;
-
-/**
- * A <code>ClassLoader</code> implementation which looks for classes
- * on the local filesystem given a standard search path.
- */
-public class FileSystemClassLoader extends ClassLoader {
-
- private File[] pathComponents;
-
- /**
- * Initialize the class loader with a normal path string. The path
- * string should contain path components separated by {@link
- * File.pathSeparator}. Each path component should either denote a
- * directory or a .jar or .zip file.
- */
- public FileSystemClassLoader(String path)
- {
- List components = new ArrayList();
- for (StringTokenizer st = new StringTokenizer(path, File.pathSeparator); st.hasMoreTokens(); ) {
- File pathComponent = new File(st.nextToken());
- components.add(pathComponent);
- if (pathComponent.exists() && !pathComponent.isDirectory()) {
- List subComponents = tryGetJarFileClassPathComponents(pathComponent);
- if (null != subComponents) {
- components.addAll(subComponents);
- }
- }
- }
- File[] componentArray = new File[components.size()];
- this.pathComponents = (File[])components.toArray(componentArray);
- }
-
- /**
- * Initialize the class loader with an array of path
- * components. Each path component should either denote a
- * directory or a .jar or .zip file.
- */
- public FileSystemClassLoader(File[] pathComponents)
- {
- this.pathComponents = pathComponents;
- for (int i = 0; i < pathComponents.length; ++i) {
- if (!pathComponents[i].exists()) {
- System.err.println("WARNING: Path component '" + pathComponents[i] + "' not found.");
- }
- }
- }
-
- public Class loadClass(String name)
- throws ClassNotFoundException {
-
- return super.loadClass(name);
- }
-
- public Class findClass(String name)
- throws ClassNotFoundException {
-
- byte[] b = loadClassData(name);
- return defineClass(name, b, 0, b.length);
- }
-
- public URL findResource(String name)
- {
- StreamInfo streamInfo = getResourceStream(name);
- if (null == streamInfo) {
- return super.findResource(name);
- }
- else {
- try {
- return streamInfo.getURL();
- }
- catch (MalformedURLException e) {
- System.err.println("WARNING: In FileSystemClassLoader: could not derive URL from file or jar entry: " + e.toString());
- return null;
- }
- }
- }
-
- private byte[] readFromStream(InputStream in, long size)
- throws IOException
- {
- byte[] result = new byte[(int)size];
- int nread = 0;
- int offset = 0;
- while (offset < size && (nread = in.read(result, offset, (int)(size - offset))) >= 0) {
- offset += nread;
- }
- in.close();
- return result;
- }
-
- private byte[] readFromStream(StreamInfo streamInfo)
- throws IOException
- {
- InputStream in = streamInfo.openStream();
- long size = streamInfo.getSize();
-
- byte[] result = new byte[(int)size];
- int nread = 0;
- int offset = 0;
- while (offset < size && (nread = in.read(result, offset, (int)(size - offset))) >= 0) {
- offset += nread;
- }
- in.close();
- return result;
- }
-
- private static interface StreamInfo
- {
- public InputStream openStream()
- throws IOException;
- public long getSize();
- public URL getURL()
- throws MalformedURLException;
- }
-
- private static class FileStreamInfo
- implements StreamInfo
- {
- File file;
-
- FileStreamInfo(File file)
- {
- this.file = file;
- }
-
- public InputStream openStream()
- throws IOException
- {
- return new FileInputStream(file);
- }
-
- public long getSize()
- {
- return file.length();
- }
-
- public URL getURL()
- throws MalformedURLException
- {
- return file.toURL();
- }
- }
-
- private static class JarStreamInfo
- implements StreamInfo
- {
- private File file;
- private JarFile jarFile;
- private JarEntry jarEntry;
-
- JarStreamInfo(File file, JarFile jarFile, JarEntry jarEntry)
- {
- this.file = file;
- this.jarFile = jarFile;
- this.jarEntry = jarEntry;
- }
-
- public InputStream openStream()
- throws IOException
- {
- return jarFile.getInputStream(jarEntry);
- }
-
- public long getSize()
- {
- return jarEntry.getSize();
- }
-
- public URL getURL()
- throws MalformedURLException
- {
- String urlString = "jar:" + file.toURL() + "!/" + jarEntry.getName();
- return new URL(urlString);
- }
- }
-
- private StreamInfo getResourceStream(String path)
- {
- for (int i = 0; i < pathComponents.length; ++i) {
- try {
- File parent = pathComponents[i];
- if (parent.isDirectory()) {
- File file = new File(parent, path);
- if (file.exists()) {
- return new FileStreamInfo(file);
- }
- }
- else {
- JarFile jarFile = new JarFile(parent, false, JarFile.OPEN_READ);
- JarEntry jarEntry = jarFile.getJarEntry(path);
- if (null != jarEntry) {
- return new JarStreamInfo(parent, jarFile, jarEntry);
- }
- }
- }
- catch (IOException ignore) {
- }
- }
- return null;
- }
-
- private byte[] loadClassData(String className)
- throws ClassNotFoundException
- {
- String classFileName = className.replace('.', File.separatorChar) + ".class";
- StreamInfo streamInfo = getResourceStream(classFileName);
-
- try {
- if (null != streamInfo) {
- return readFromStream(streamInfo);
- }
- }
- catch (IOException ignore) {
- }
-
- throw new ClassNotFoundException(className);
- }
-
- private static List tryGetJarFileClassPathComponents(File file)
- {
- try {
- JarFile jarFile = new JarFile(file, false, JarFile.OPEN_READ);
- Manifest manifest = jarFile.getManifest();
- if (null != manifest) {
- Attributes mainAttributes = manifest.getMainAttributes();
- if (null != mainAttributes) {
- String classPath = mainAttributes.getValue(Attributes.Name.CLASS_PATH);
- if (null != classPath) {
- List result = new LinkedList();
- StreamTokenizer tokenizer = new StreamTokenizer(new StringReader(classPath));
- tokenizer.resetSyntax();
- tokenizer.wordChars(0, Integer.MAX_VALUE);
- tokenizer.whitespaceChars(9, 9); // tab
- tokenizer.whitespaceChars(10, 10); // lf
- tokenizer.whitespaceChars(13, 13); // cr
- tokenizer.whitespaceChars(32, 32); // space
- tokenizer.quoteChar('"');
- int token;
- while ((token = tokenizer.nextToken()) != StreamTokenizer.TT_EOF) {
- if (StreamTokenizer.TT_WORD == token) {
- result.add(new File(file.getParentFile(), tokenizer.sval));
- }
- }
- return result;
- }
- }
- }
- }
- catch (IOException ignore) {
- }
- return null;
- }
-}
-
+/* gnu.classpath.tools.FileSystemClassLoader
+ Copyright (C) 2004 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package gnu.classpath.tools;
+
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileNotFoundException;
+import java.io.InputStream;
+import java.io.IOException;
+import java.io.StreamTokenizer;
+import java.io.StringReader;
+
+import java.net.MalformedURLException;
+import java.net.URL;
+
+import java.util.LinkedList;
+import java.util.List;
+import java.util.ArrayList;
+import java.util.StringTokenizer;
+
+import java.util.jar.JarEntry;
+import java.util.jar.JarFile;
+import java.util.jar.Manifest;
+import java.util.jar.Attributes;
+
+/**
+ * A <code>ClassLoader</code> implementation which looks for classes
+ * on the local filesystem given a standard search path.
+ */
+public class FileSystemClassLoader extends ClassLoader {
+
+ private File[] pathComponents;
+
+ /**
+ * Initialize the class loader with a normal path string. The path
+ * string should contain path components separated by {@link
+ * File.pathSeparator}. Each path component should either denote a
+ * directory or a .jar or .zip file.
+ */
+ public FileSystemClassLoader(String path)
+ {
+ List components = new ArrayList();
+ for (StringTokenizer st = new StringTokenizer(path, File.pathSeparator); st.hasMoreTokens(); ) {
+ File pathComponent = new File(st.nextToken());
+ components.add(pathComponent);
+ if (pathComponent.exists() && !pathComponent.isDirectory()) {
+ List subComponents = tryGetJarFileClassPathComponents(pathComponent);
+ if (null != subComponents) {
+ components.addAll(subComponents);
+ }
+ }
+ }
+ File[] componentArray = new File[components.size()];
+ this.pathComponents = (File[])components.toArray(componentArray);
+ }
+
+ /**
+ * Initialize the class loader with an array of path
+ * components. Each path component should either denote a
+ * directory or a .jar or .zip file.
+ */
+ public FileSystemClassLoader(File[] pathComponents)
+ {
+ this.pathComponents = pathComponents;
+ for (int i = 0; i < pathComponents.length; ++i) {
+ if (!pathComponents[i].exists()) {
+ System.err.println("WARNING: Path component '" + pathComponents[i] + "' not found.");
+ }
+ }
+ }
+
+ public Class loadClass(String name)
+ throws ClassNotFoundException {
+
+ return super.loadClass(name);
+ }
+
+ public Class findClass(String name)
+ throws ClassNotFoundException {
+
+ byte[] b = loadClassData(name);
+ return defineClass(name, b, 0, b.length);
+ }
+
+ public URL findResource(String name)
+ {
+ StreamInfo streamInfo = getResourceStream(name);
+ if (null == streamInfo) {
+ return super.findResource(name);
+ }
+ else {
+ try {
+ return streamInfo.getURL();
+ }
+ catch (MalformedURLException e) {
+ System.err.println("WARNING: In FileSystemClassLoader: could not derive URL from file or jar entry: " + e.toString());
+ return null;
+ }
+ }
+ }
+
+ private byte[] readFromStream(InputStream in, long size)
+ throws IOException
+ {
+ byte[] result = new byte[(int)size];
+ int nread = 0;
+ int offset = 0;
+ while (offset < size && (nread = in.read(result, offset, (int)(size - offset))) >= 0) {
+ offset += nread;
+ }
+ in.close();
+ return result;
+ }
+
+ private byte[] readFromStream(StreamInfo streamInfo)
+ throws IOException
+ {
+ InputStream in = streamInfo.openStream();
+ long size = streamInfo.getSize();
+
+ byte[] result = new byte[(int)size];
+ int nread = 0;
+ int offset = 0;
+ while (offset < size && (nread = in.read(result, offset, (int)(size - offset))) >= 0) {
+ offset += nread;
+ }
+ in.close();
+ return result;
+ }
+
+ private static interface StreamInfo
+ {
+ public InputStream openStream()
+ throws IOException;
+ public long getSize();
+ public URL getURL()
+ throws MalformedURLException;
+ }
+
+ private static class FileStreamInfo
+ implements StreamInfo
+ {
+ File file;
+
+ FileStreamInfo(File file)
+ {
+ this.file = file;
+ }
+
+ public InputStream openStream()
+ throws IOException
+ {
+ return new FileInputStream(file);
+ }
+
+ public long getSize()
+ {
+ return file.length();
+ }
+
+ public URL getURL()
+ throws MalformedURLException
+ {
+ return file.toURL();
+ }
+ }
+
+ private static class JarStreamInfo
+ implements StreamInfo
+ {
+ private File file;
+ private JarFile jarFile;
+ private JarEntry jarEntry;
+
+ JarStreamInfo(File file, JarFile jarFile, JarEntry jarEntry)
+ {
+ this.file = file;
+ this.jarFile = jarFile;
+ this.jarEntry = jarEntry;
+ }
+
+ public InputStream openStream()
+ throws IOException
+ {
+ return jarFile.getInputStream(jarEntry);
+ }
+
+ public long getSize()
+ {
+ return jarEntry.getSize();
+ }
+
+ public URL getURL()
+ throws MalformedURLException
+ {
+ String urlString = "jar:" + file.toURL() + "!/" + jarEntry.getName();
+ return new URL(urlString);
+ }
+ }
+
+ private StreamInfo getResourceStream(String path)
+ {
+ for (int i = 0; i < pathComponents.length; ++i) {
+ try {
+ File parent = pathComponents[i];
+ if (parent.isDirectory()) {
+ File file = new File(parent, path);
+ if (file.exists()) {
+ return new FileStreamInfo(file);
+ }
+ }
+ else {
+ JarFile jarFile = new JarFile(parent, false, JarFile.OPEN_READ);
+ JarEntry jarEntry = jarFile.getJarEntry(path);
+ if (null != jarEntry) {
+ return new JarStreamInfo(parent, jarFile, jarEntry);
+ }
+ }
+ }
+ catch (IOException ignore) {
+ }
+ }
+ return null;
+ }
+
+ private byte[] loadClassData(String className)
+ throws ClassNotFoundException
+ {
+ String classFileName = className.replace('.', File.separatorChar) + ".class";
+ StreamInfo streamInfo = getResourceStream(classFileName);
+
+ try {
+ if (null != streamInfo) {
+ return readFromStream(streamInfo);
+ }
+ }
+ catch (IOException ignore) {
+ }
+
+ throw new ClassNotFoundException(className);
+ }
+
+ private static List tryGetJarFileClassPathComponents(File file)
+ {
+ try {
+ JarFile jarFile = new JarFile(file, false, JarFile.OPEN_READ);
+ Manifest manifest = jarFile.getManifest();
+ if (null != manifest) {
+ Attributes mainAttributes = manifest.getMainAttributes();
+ if (null != mainAttributes) {
+ String classPath = mainAttributes.getValue(Attributes.Name.CLASS_PATH);
+ if (null != classPath) {
+ List result = new LinkedList();
+ StreamTokenizer tokenizer = new StreamTokenizer(new StringReader(classPath));
+ tokenizer.resetSyntax();
+ tokenizer.wordChars(0, Integer.MAX_VALUE);
+ tokenizer.whitespaceChars(9, 9); // tab
+ tokenizer.whitespaceChars(10, 10); // lf
+ tokenizer.whitespaceChars(13, 13); // cr
+ tokenizer.whitespaceChars(32, 32); // space
+ tokenizer.quoteChar('"');
+ int token;
+ while ((token = tokenizer.nextToken()) != StreamTokenizer.TT_EOF) {
+ if (StreamTokenizer.TT_WORD == token) {
+ result.add(new File(file.getParentFile(), tokenizer.sval));
+ }
+ }
+ return result;
+ }
+ }
+ }
+ }
+ catch (IOException ignore) {
+ }
+ return null;
+ }
+}
+
diff --git a/libjava/classpath/tools/gnu/classpath/tools/IOToolkit.java b/libjava/classpath/tools/gnu/classpath/tools/IOToolkit.java
index 4e222d26777..8b6b9542c95 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/IOToolkit.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/IOToolkit.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/MalformedInputEvent.java b/libjava/classpath/tools/gnu/classpath/tools/MalformedInputEvent.java
index b2ac3ce6cf6..9afcf047656 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/MalformedInputEvent.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/MalformedInputEvent.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/MalformedInputListener.java b/libjava/classpath/tools/gnu/classpath/tools/MalformedInputListener.java
index 66ab1282400..caa471ec54b 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/MalformedInputListener.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/MalformedInputListener.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/NotifyingInputStreamReader.java b/libjava/classpath/tools/gnu/classpath/tools/NotifyingInputStreamReader.java
index 8c35c257312..03121ddab13 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/NotifyingInputStreamReader.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/NotifyingInputStreamReader.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/StringToolkit.java b/libjava/classpath/tools/gnu/classpath/tools/StringToolkit.java
index 214dc1b6609..d70ea931bdb 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/StringToolkit.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/StringToolkit.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/doclets/AbstractDoclet.java b/libjava/classpath/tools/gnu/classpath/tools/doclets/AbstractDoclet.java
index 87772077ec2..8ac9add6875 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/doclets/AbstractDoclet.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/doclets/AbstractDoclet.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.doclets;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/doclets/DocletConfigurationException.java b/libjava/classpath/tools/gnu/classpath/tools/doclets/DocletConfigurationException.java
index f75c6cdb727..6db6cc76840 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/doclets/DocletConfigurationException.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/doclets/DocletConfigurationException.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.doclets;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/doclets/DocletOption.java b/libjava/classpath/tools/gnu/classpath/tools/doclets/DocletOption.java
index fec2c7ac749..ccfb7fa6c38 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/doclets/DocletOption.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/doclets/DocletOption.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.doclets;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/doclets/DocletOptionColonSeparated.java b/libjava/classpath/tools/gnu/classpath/tools/doclets/DocletOptionColonSeparated.java
index b33519fd231..5bc4a6c623b 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/doclets/DocletOptionColonSeparated.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/doclets/DocletOptionColonSeparated.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.doclets;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/doclets/DocletOptionFile.java b/libjava/classpath/tools/gnu/classpath/tools/doclets/DocletOptionFile.java
index c1f1c3c6323..f1daf2da886 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/doclets/DocletOptionFile.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/doclets/DocletOptionFile.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.doclets;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/doclets/DocletOptionFlag.java b/libjava/classpath/tools/gnu/classpath/tools/doclets/DocletOptionFlag.java
index 0909a86fc63..e6d206f3808 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/doclets/DocletOptionFlag.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/doclets/DocletOptionFlag.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.doclets;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/doclets/DocletOptionPackageWildcard.java b/libjava/classpath/tools/gnu/classpath/tools/doclets/DocletOptionPackageWildcard.java
index 261c676c380..37a359b8823 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/doclets/DocletOptionPackageWildcard.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/doclets/DocletOptionPackageWildcard.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.doclets;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/doclets/DocletOptionString.java b/libjava/classpath/tools/gnu/classpath/tools/doclets/DocletOptionString.java
index b9b956691cc..2bff9ce16f8 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/doclets/DocletOptionString.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/doclets/DocletOptionString.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.doclets;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/doclets/InlineTagRenderer.java b/libjava/classpath/tools/gnu/classpath/tools/doclets/InlineTagRenderer.java
index fa5cf842a66..2897153b622 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/doclets/InlineTagRenderer.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/doclets/InlineTagRenderer.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.doclets;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/doclets/InvalidPackageWildcardException.java b/libjava/classpath/tools/gnu/classpath/tools/doclets/InvalidPackageWildcardException.java
index f8806c5696e..eaef3e49a99 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/doclets/InvalidPackageWildcardException.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/doclets/InvalidPackageWildcardException.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.doclets;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/doclets/PackageGroup.java b/libjava/classpath/tools/gnu/classpath/tools/doclets/PackageGroup.java
index a005b16feb1..bad38f885a0 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/doclets/PackageGroup.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/doclets/PackageGroup.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.doclets;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/doclets/PackageMatcher.java b/libjava/classpath/tools/gnu/classpath/tools/doclets/PackageMatcher.java
index 23da79cb387..0f1b53fbe43 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/doclets/PackageMatcher.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/doclets/PackageMatcher.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.doclets;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/doclets/StandardTaglet.java b/libjava/classpath/tools/gnu/classpath/tools/doclets/StandardTaglet.java
index 86a6a4ed08a..7701a6eaa01 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/doclets/StandardTaglet.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/doclets/StandardTaglet.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.doclets;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/doclets/TagletPrinter.java b/libjava/classpath/tools/gnu/classpath/tools/doclets/TagletPrinter.java
index e62636985b0..2029d6ce933 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/doclets/TagletPrinter.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/doclets/TagletPrinter.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.doclets;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/doclets/debugdoclet/DebugDoclet.java b/libjava/classpath/tools/gnu/classpath/tools/doclets/debugdoclet/DebugDoclet.java
index 63026de420d..ff93f8b096f 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/doclets/debugdoclet/DebugDoclet.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/doclets/debugdoclet/DebugDoclet.java
@@ -1,3 +1,40 @@
+/* DebugDoclet.java - Doclet for debugging
+ Copyright (C) 2004 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
package gnu.classpath.tools.doclets.debugdoclet;
import com.sun.javadoc.ClassDoc;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/doclets/htmldoclet/CssClass.java b/libjava/classpath/tools/gnu/classpath/tools/doclets/htmldoclet/CssClass.java
index 50867598109..48f1c190a54 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/doclets/htmldoclet/CssClass.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/doclets/htmldoclet/CssClass.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.doclets.htmldoclet;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/doclets/htmldoclet/ExternalDocSet.java b/libjava/classpath/tools/gnu/classpath/tools/doclets/htmldoclet/ExternalDocSet.java
index 7fd2fa0624d..4c5eb1d6e36 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/doclets/htmldoclet/ExternalDocSet.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/doclets/htmldoclet/ExternalDocSet.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.doclets.htmldoclet;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/doclets/htmldoclet/HtmlDoclet.java b/libjava/classpath/tools/gnu/classpath/tools/doclets/htmldoclet/HtmlDoclet.java
index e49e1c57341..7d5202c9cee 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/doclets/htmldoclet/HtmlDoclet.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/doclets/htmldoclet/HtmlDoclet.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.doclets.htmldoclet;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/doclets/htmldoclet/HtmlPage.java b/libjava/classpath/tools/gnu/classpath/tools/doclets/htmldoclet/HtmlPage.java
index 0026e0b8a46..e833627fda0 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/doclets/htmldoclet/HtmlPage.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/doclets/htmldoclet/HtmlPage.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.doclets.htmldoclet;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/doclets/htmldoclet/HtmlTagletContext.java b/libjava/classpath/tools/gnu/classpath/tools/doclets/htmldoclet/HtmlTagletContext.java
index 5c6e84913d0..5cd272d106e 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/doclets/htmldoclet/HtmlTagletContext.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/doclets/htmldoclet/HtmlTagletContext.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.doclets.htmldoclet;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/Driver.java b/libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/Driver.java
index 6f90338b2af..b08d4902608 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/Driver.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/Driver.java
@@ -1,2434 +1,2451 @@
-/* gnu.classpath.tools.doclets.xmldoclet.Driver
- Copyright (C) 2001 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
-
-package gnu.classpath.tools.doclets.xmldoclet;
-
-import com.sun.javadoc.*;
-import java.io.*;
-
-import com.sun.tools.doclets.Taglet;
-
-import java.lang.reflect.InvocationTargetException;
-import java.lang.reflect.Method;
-import java.lang.reflect.Modifier;
-
-import java.text.DateFormat;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Comparator;
-import java.util.HashSet;
-import java.util.TreeSet;
-import java.util.Iterator;
-import java.util.LinkedHashMap;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Locale;
-import java.util.Map;
-import java.util.HashMap;
-import java.util.Properties;
-import java.util.Set;
-import java.util.SortedSet;
-import java.util.StringTokenizer;
-import java.util.TreeMap;
-
-import gnu.classpath.tools.gjdoc.TemporaryStore;
-import gnu.classpath.tools.gjdoc.GjdocPackageDoc;
-
-import gnu.classpath.tools.doclets.PackageGroup;
-import gnu.classpath.tools.doclets.PackageMatcher;
-import gnu.classpath.tools.doclets.InvalidPackageWildcardException;
-
-import gnu.classpath.tools.doclets.xmldoclet.doctranslet.DocTranslet;
-import gnu.classpath.tools.doclets.xmldoclet.doctranslet.DocTransletOptions;
-
-import gnu.classpath.tools.taglets.AuthorTaglet;
-import gnu.classpath.tools.taglets.VersionTaglet;
-import gnu.classpath.tools.taglets.SinceTaglet;
-import gnu.classpath.tools.taglets.DeprecatedTaglet;
-import gnu.classpath.tools.taglets.GenericTaglet;
-import gnu.classpath.tools.doclets.StandardTaglet;
-
-import gnu.classpath.tools.java2xhtml.Java2xhtml;
-
-import gnu.classpath.tools.IOToolkit;
-import gnu.classpath.tools.FileSystemClassLoader;
-
-/**
- * A Doclet which retrieves all information presented by the Doclet
- * API, dumping it to stdout in XML format.
- *
- * @author Julian Scheid
- */
-public class Driver {
-
- public static final String XMLDOCLET_VERSION = "0.6.1";
-
- /**
- * Used for redirecting error messages to <code>/dev/null</code>.
- */
- private static class NullErrorReporter implements DocErrorReporter {
- public void printError(String ignore) {}
- public void printWarning(String ignore) {}
- public void printNotice(String ignore) {}
- }
-
- /*
- * Taglet context constants.
- */
- private static final int CONTEXT_CONSTRUCTOR = 1;
- private static final int CONTEXT_FIELD = 2;
- private static final int CONTEXT_METHOD = 3;
- private static final int CONTEXT_OVERVIEW = 4;
- private static final int CONTEXT_PACKAGE = 5;
- private static final int CONTEXT_TYPE = 6;
-
- /**
- * All XML output will go to this stream.
- */
- private PrintWriter out;
-
- /**
- * How many spaces to indent each XML node level,
- * i.e. Tab size for output.
- */
- private static int indentStep = 1;
-
- /**
- * Won't output superfluous spaces if set to true.
- * If set to false, output will be more legible.
- */
- private boolean compress = false;
-
- /**
- * Won't output warning messages while fixing
- * HTML code if set to true.
- */
- private boolean noHTMLWarn = false;
-
- /**
- * Won't output warning messages when encountering tags
- * that look like an email address if set to true.
- */
- private boolean noEmailWarn = false;
-
- /**
- * Will fix HTML if necessary so that each comment
- * contains valid XML code if set to true. If set
- * to false, HTML code will not be modified and
- * instead encapsulated in a CDATA section.
- */
- private boolean fixHTML = true;
-
- /**
- * User-specified name of the directory where the final version of
- * the generated files will be written to.
- *
- * If no XSLT sheet is given, the XML output will go directly into
- * this directory. Otherwise, XML output will go to a temporary
- * directory and XSLT output will go to this directory.
- */
- private File targetDirectory = null;
-
- /**
- * Directory where XML output will be written to. If no XSLT
- * sheet was given, this is the target directory specified
- * by the user. Otherwise, this is a temporary directory.
- */
- private File xmlTargetDirectory;
-
- /**
- * Contains a number of TargetContexts which describe which XSLT
- * sheet to apply to the output of this doclet, to what directory
- * the XSLT output is written, and which postprocess driver to use
- * to process XSLT output.
- */
- private List targets = new ArrayList();
-
- /**
- * XML text to include at the end of every generated page. Read
- * from the file specified on the command line using -bottomnote.
- * If present, this will be written to the main output file
- * (index.xml) in node /gjdoc:rootDoc/gjdoc:bottomnote.
- */
- private String bottomNote;
-
- /**
- * Brief description of the package set. Can be specified on the
- * command line using -title. This will be written to the main
- * output file (index.xml) in node
- * /gjdoc:rootDoc/gjdoc:title. The HTML generating XSLT sheet
- * uses this for example in window titles.
- */
- private String title;
-
- /**
- * Path to the directory where temporary files should be stored.
- * Defaults to system tempdir, but can be overridden by user
- * with -workpath.
- */
- private String workingPath = System.getProperty("java.io.tmpdir");
-
- /**
- * Temporary directory created by this doclet where all
- * temporary files will be stored in. If no temporary
- * files are needed (i.e. no XSLT postprocessing stage
- * specified by user), this is <code>null</code>.
- */
- private File workingDirectory;
-
- /**
- * Whether to deep-copy the doc-files subdirectory.
- */
- private boolean docFilesSubdirsEnabled = false;
-
- /**
- * Which direct subdirectories of the doc-files directories to exclude.
- * Set of String.
- */
- private Set excludeDocFilesSubDirs = new HashSet();
-
- /**
- * Stores the Doclet API RootDoc we are operating on.
- */
- private RootDoc rootDoc;
-
- /**
- * XML namespace prefix used for all tags, except for HTML
- * tags copied from Javadoc comments. Excluding colon.
- */
- public static final String tagPrefix = "gjdoc";
-
- /**
- * Classpath for loading Taglet classes.
- */
- private String tagletPath = null;
-
- /**
- * The current class that is being processed.
- * Set in outputClassDoc().
- */
- private ClassDoc currentClass;
-
- /**
- * The current member that is being processed.
- * Set in outputMemberDoc().
- */
- private MemberDoc currentMember;
-
- /**
- * The current constructor/method that is being processed.
- * Set in outputExecutableMemberDoc().
- */
- private ExecutableMemberDoc currentExecMember;
-
- /**
- * Mapping from tag type to Taglet for user Taglets specified on
- * the command line.
- */
- private Map tagletMap = new LinkedHashMap();
-
- /**
- * Keeps track of the tags mentioned by the user during option
- * processiong so that an error can be emitted if a tag is
- * mentioned more than once.
- */
- private List mentionedTags = new LinkedList();
-
- /**
- * Stores options to be passed to the DocTranslet.
- */
- private DocTransletOptions docTransletOptions = new DocTransletOptions();
-
- /**
- * Stores the package groups specified in the user
- * options. Contains objects of type PackageGroup.
- */
- private List packageGroups = new LinkedList();
-
- private HtmlRepairer htmlRepairer;
-
- public static boolean start(TemporaryStore _rootDocWrapper) {
- return new Driver().instanceStart((RootDoc)_rootDocWrapper.getAndClear());
- }
-
- /**
- * Official Doclet entry point.
- */
- public static boolean start(RootDoc _rootDoc) {
-
- // Create a new XmlDoclet instance and delegate control.
- TemporaryStore tstore = new TemporaryStore(_rootDoc);
- _rootDoc = null;
- return new Driver().instanceStart((RootDoc)tstore.getAndClear());
- }
-
- /**
- * Output an XML tag describing a com.sun.javadoc.Type object.
- * Assumes that the tag does not have subtags.
- *
- * @param level Level of indentation. Will be multiplied by
- * <code>indentStep</code> to yield actual amount
- * of whitespace inserted at start of line.
- * @param tag Identifier for the XML tag being output.
- * @param type The Javadoc Type to be output.
- */
- protected void outputType(int level, String tag, Type type) {
- outputType(level, tag, type, true);
- }
-
- protected void outputType(int level, String tag, Type type, boolean atomic) {
-
- boolean isIncluded = false;
- ClassDoc typeAsClassDoc = type.asClassDoc();
- String packageName = null;
- if (null != typeAsClassDoc) {
- isIncluded = typeAsClassDoc.isIncluded();
- packageName = typeAsClassDoc.containingPackage().name();
- }
- println(level, "<"+tagPrefix+":"+tag + " typename=\""+type.typeName()+"\""+
- " qualifiedtypename=\""+type.qualifiedTypeName()+"\""
- +(type.dimension().length()==0?"":" dimension=\""+type.dimension()+"\"")
- +(isIncluded?" isIncluded=\"true\"" : "")
- +((null != packageName)?" package=\"" + packageName + "\"" : "")
- +(atomic?"/":"")+">");
- }
-
- protected void outputExecutableMemberDocBody(int level, ExecutableMemberDoc memberDoc) {
-
- currentExecMember = memberDoc;
-
- outputMemberDocBody(level, memberDoc);
-
- Parameter[] parameters = memberDoc.parameters();
- for (int i=0, ilim=parameters.length; i<ilim; ++i) {
- Parameter parameter = parameters[i];
- outputType(level, "parameter name=\""+parameter.name()+"\"", parameter.type());
- }
-
- ClassDoc[] exceptions = memberDoc.thrownExceptions();
- for (int i=0, ilim=exceptions.length; i<ilim; ++i) {
- ClassDoc exception = exceptions[i];
- outputType(level, "thrownException", exception);
- }
-
- printAtomTag(level, "signature full=\""+memberDoc.signature()+"\" flat=\""+memberDoc.flatSignature()+"\"");
-
- if (memberDoc.isNative()) {
- printAtomTag(level, "isNative");
- }
-
- if (memberDoc.isSynchronized()) {
- printAtomTag(level, "isSynchronized");
- }
- }
-
- protected void outputMethodDoc(int level, MethodDoc methodDoc) {
- println();
- printOpenTag(level, "methoddoc name=\""+methodDoc.name()+"\"");
- outputExecutableMemberDocBody(level+1, methodDoc);
- outputType(level+1, "returns", methodDoc.returnType());
- printCloseTag(level, "methoddoc");
- }
-
- protected void outputMemberDocBody(int level, MemberDoc memberDoc) {
- currentMember = memberDoc;
- outputProgramElementDocBody(level, memberDoc);
- }
-
- protected void outputFieldDocBody(int level, FieldDoc fieldDoc) {
- outputType(level, "type", fieldDoc.type());
- if (fieldDoc.isTransient()) {
- printAtomTag(level, "isTransient");
- }
- if (fieldDoc.isVolatile()) {
- printAtomTag(level, "isVolatile");
- }
- }
-
- private void outputFieldDoc(int level, FieldDoc fieldDoc) {
- println();
- printOpenTag(level, "fielddoc name=\""+fieldDoc.name()+"\"");
- outputMemberDocBody(level+1, fieldDoc);
- outputFieldDocBody(level+1, fieldDoc);
- printCloseTag(level, "fielddoc");
- }
-
- protected void outputConstructorDoc(int level, ConstructorDoc constructorDoc) {
- println();
- printOpenTag(level, "constructordoc name=\""+constructorDoc.name()+"\"");
- outputExecutableMemberDocBody(level+1, constructorDoc);
- printCloseTag(level, "constructordoc");
- }
-
- protected void outputSuperInterfacesRec(int level, ClassDoc classDoc) {
- if (null!=classDoc) {
- ClassDoc[] interfaces = classDoc.interfaces();
- if (null != interfaces) {
- for (int i=0, ilim=interfaces.length; i<ilim; ++i) {
- outputType(level, "superimplements", interfaces[i]);
- }
- }
- outputSuperInterfacesRec(level, classDoc.superclass());
- }
- }
-
- protected void outputClassDocSummary(ClassDoc classDoc) {
- println();
- printOpenTag(1, "classdoc name=\""+classDoc.name()+"\" qualifiedtypename=\""+classDoc.qualifiedName()+"\" isIncluded=\"true\"");
- if (null!=classDoc.superclass()) {
- outputType(2, "superclass", classDoc.superclass());
- }
-
- ClassDoc[] interfaces = classDoc.interfaces();
- for (int i=0, ilim=interfaces.length; i<ilim; ++i) {
- outputType(2, "implements", interfaces[i]);
- }
- outputSuperInterfacesRec(2, classDoc.superclass());
-
- printAtomTag(2, "containingPackage name=\""+classDoc.containingPackage().name()+"\"");
- if (classDoc.isError()) {
- printAtomTag(2, "isError");
- }
- if (classDoc.isException()) {
- printAtomTag(2, "isException");
- }
- if (classDoc.isInterface()) {
- printAtomTag(2, "isInterface");
- }
- if (classDoc.isOrdinaryClass()) {
- printAtomTag(2, "isOrdinaryClass");
- }
-
- printCloseTag(1, "classdoc");
- }
-
- protected void outputPackageDoc(PackageDoc packageDoc) {
- println();
- printOpenTag(1, "packagedoc name=\""+packageDoc.name()+"\"");
- if (packageDoc.firstSentenceTags().length > 0) {
- printOpenTag(2, "firstSentenceTags", false);
- outputTags(3, packageDoc.firstSentenceTags(), true, CONTEXT_PACKAGE);
- printCloseTag(0, "firstSentenceTags");
- printOpenTag(2, "inlineTags", false);
- outputTags(3, packageDoc.inlineTags(), true, CONTEXT_PACKAGE);
- printCloseTag(0, "inlineTags");
- }
-
- if (packageDoc.tags().length > 0) {
- printOpenTag(2, "tags");
- outputTags(3, packageDoc.tags(), true, CONTEXT_PACKAGE);
- printCloseTag(2, "tags");
- }
-
- if (packageDoc.seeTags().length > 0) {
- printOpenTag(2, "seeTags");
- outputTags(3, packageDoc.seeTags(), true, CONTEXT_PACKAGE);
- printCloseTag(2, "seeTags");
- }
-
- ClassDoc[] allClasses = (ClassDoc[]) packageDoc.allClasses().clone();
- Arrays.sort(allClasses);
-
- if (false) {
- for (int i = 0, ilim = allClasses.length; i < ilim; ++ i) {
- printAtomTag(2, "containsClass qualifiedtypename=\""+allClasses[i].qualifiedTypeName()+"\"");
- }
- }
-
- printCloseTag(1, "packagedoc");
- }
-
- protected void outputClassDoc(ClassDoc classDoc) throws IOException {
-
- currentClass = classDoc;
-
- println();
- printOpenTag(1, "classdoc xmlns=\"http://www.w3.org/TR/REC-html40\" xmlns:"+tagPrefix+"=\"http://www.gnu.org/software/cp-tools/gjdocxml\" name=\""+classDoc.name()+"\" qualifiedtypename=\""+classDoc.qualifiedName()+"\"");
-
- ClassDoc[] interfaces = classDoc.interfaces();
- for (int i=0, ilim=interfaces.length; i<ilim; ++i) {
- outputType(2, "implements", interfaces[i]);
- }
- outputSuperInterfacesRec(2, classDoc.superclass());
-
- outputProgramElementDocBody(2, classDoc);
- if (classDoc.isAbstract())
- printAtomTag(2, "isAbstract");
- if (classDoc.isSerializable())
- printAtomTag(2, "isSerializable");
- if (classDoc.isExternalizable())
- printAtomTag(2, "isExternalizable");
- if (classDoc.definesSerializableFields()) {
- printAtomTag(2, "definesSerializableFields");
- }
-
- ConstructorDoc[] constructors = classDoc.constructors();
- for (int i=0, ilim=constructors.length; i<ilim; ++i) {
- outputConstructorDoc(2, constructors[i]);
- }
-
- MethodDoc[] methods = classDoc.methods();
- for (int i=0, ilim=methods.length; i<ilim; ++i) {
- outputMethodDoc(2, methods[i]);
- }
-
- FieldDoc[] fields = classDoc.fields();
- for (int i=0, ilim=fields.length; i<ilim; ++i) {
- outputFieldDoc(2, fields[i]);
- }
-
- if (classDoc.serializableFields().length > 0) {
- printOpenTag(2, "serializableFields");
-
- FieldDoc[] sfields = classDoc.serializableFields();
- for (int i=0, ilim=sfields.length; i<ilim; ++i) {
- outputFieldDoc(2, sfields[i]);
- }
- printCloseTag(2, "serializableFields");
- }
-
- Java2xhtml java2xhtml = new Java2xhtml();
- Properties properties = new Properties();
- properties.setProperty("isCodeSnippet", "true");
- properties.setProperty("hasLineNumbers", "true");
- java2xhtml.setProperties(properties);
-
- if (null == classDoc.containingClass() && docTransletOptions.linksource) {
- printOpenTag(2, "source");
- StringWriter sourceBuffer = new StringWriter();
- File sourceFile = new File(((GjdocPackageDoc)classDoc.containingPackage()).packageDirectory(),
- classDoc.name() + ".java");
- FileReader sourceReader = new FileReader(sourceFile);
- IOToolkit.copyStream(sourceReader, sourceBuffer);
- print(java2xhtml.makeHTML(sourceBuffer.getBuffer(), sourceFile.getName()));
- printCloseTag(2, "source");
- }
-
- ClassDoc superclassDoc = classDoc.superclass();
- while (superclassDoc != null) {
- outputType(2, "superclass", superclassDoc, false);
-
- // FIXME: remove the following after adjusting the XSLT sheets:
- printAtomTag(3, "containingPackage name=\"" + superclassDoc.containingPackage().name() + "\"");
-
- MethodDoc[] superMethods = superclassDoc.methods();
- if (null != superMethods) {
- for (int i=0, ilim=superMethods.length; i<ilim; ++i) {
- printAtomTag(3, "methoddoc name=\"" + superMethods[i].name() + "\" signature=\"" + superMethods[i].signature() + "\"");
- }
- }
-
- FieldDoc[] superFields = superclassDoc.fields();
- if (null != superFields) {
- for (int i=0, ilim=superFields.length; i<ilim; ++i) {
- printAtomTag(3, "fielddoc name=\"" + superFields[i].name() + "\"");
- }
- }
- printCloseTag(2, "superclass");
-
- superclassDoc = superclassDoc.superclass();
- }
-
- outputUsage(classDoc, 2);
-
- printCloseTag(1, "classdoc");
-
- currentClass = null;
- currentMember = null;
- currentExecMember = null;
- }
-
- protected int outputHeritageOpen(int level, ClassDoc classDoc) {
-
- ClassDoc superClassDoc = classDoc.superclass();
- if (null != superClassDoc) {
- level = outputHeritageOpen(level, superClassDoc);
- ++ level;
- }
- outputType(level, "heritage", classDoc, false);
- return level;
- }
-
- protected void outputHeritageClose(int level, ClassDoc classDoc) {
-
- ClassDoc superClassDoc = classDoc.superclass();
- if (null != superClassDoc) {
- outputHeritageClose(level + 1, superClassDoc);
- }
- printCloseTag(level, "heritage");
- }
-
- protected void outputDocBody(int level, Doc doc) {
-
- int context = CONTEXT_TYPE;
-
- if (doc.isClass()) {
- printAtomTag(level, "isClass");
-
- ClassDoc classDoc = (ClassDoc)doc;
- ClassDoc[] classes = rootDoc.classes();
- for (int i=0, ilim=classes.length; i<ilim; ++i) {
- if (classes[i].superclass() == classDoc) {
- outputType(level, "extended-by", classes[i]);
- }
- }
-
- outputHeritageOpen(level, classDoc);
- outputHeritageClose(level, classDoc);
- }
- if (doc.isConstructor()) {
- printAtomTag(level, "isConstructor");
- context = CONTEXT_CONSTRUCTOR;
- }
- if (doc.isError()) {
- printAtomTag(level, "isError");
- }
- if (doc.isException()) {
- printAtomTag(level, "isException");
- }
- if (doc.isField()) {
- printAtomTag(level, "isField");
- context = CONTEXT_FIELD;
- }
- if (doc.isIncluded()) {
- printAtomTag(level, "isIncluded");
- }
- if (doc.isInterface()) {
- printAtomTag(level, "isInterface");
-
- ClassDoc classDoc = (ClassDoc)doc;
- ClassDoc[] classes = rootDoc.classes();
- for (int i=0, ilim=classes.length; i<ilim; ++i) {
- ClassDoc[] implementedInterfaces = classes[i].interfaces();
- for (int j=0; j<implementedInterfaces.length; ++j) {
- if (implementedInterfaces[j] == classDoc) {
- if (classDoc.isInterface()) {
- outputType(level, "subinterface", classes[i]);
- }
- else {
- outputType(level, "implemented-by", classes[i]);
- }
- break;
- }
- }
- }
- }
- if (doc.isMethod()) {
- printAtomTag(level, "isMethod");
- context = CONTEXT_METHOD;
- }
- if (doc.isOrdinaryClass()) {
- printAtomTag(level, "isOrdinaryClass");
- }
-
- if (doc.inlineTags().length > 0) {
- printOpenTag(level, "inlineTags", false);
- outputTags(level+1, doc.inlineTags(), true, context);
- printCloseTag(0, "inlineTags");
- }
-
- if (doc.firstSentenceTags().length > 0) {
- printOpenTag(level, "firstSentenceTags", false);
- outputTags(level+1, doc.firstSentenceTags(), true, context);
- printCloseTag(0, "firstSentenceTags");
- }
-
- if (doc.tags().length > 0) {
- printOpenTag(level, "tags");
- outputTaglets(level+1, doc.tags(), true, context);
- printCloseTag(level, "tags");
- }
-
- if (doc.seeTags().length > 0) {
- printOpenTag(level, "seeTags");
- outputTags(level+1, doc.seeTags(), true, context);
- printCloseTag(level, "seeTags");
- }
-
- SourcePosition position = doc.position();
- if (null != position) {
- printAtomTag(level, "position file=\"" + position.file().getAbsolutePath() + "\" line=\"" + position.line() + "\" column=\"" + position.column() + "\"");
- }
- }
-
- protected void outputProgramElementDocBody(int level, ProgramElementDoc programElementDoc) {
- outputDocBody(level, programElementDoc);
- printAtomTag(level, "containingPackage name=\""+programElementDoc.containingPackage().name()+"\"");
- if (null!=programElementDoc.containingClass()) {
- outputType(level, "containingClass", programElementDoc.containingClass());
- }
- String access;
- if (programElementDoc.isPublic())
- access="public";
- else if (programElementDoc.isProtected())
- access="protected";
- else if (programElementDoc.isPrivate())
- access="private";
- else if (programElementDoc.isPackagePrivate())
- access="package";
- else
- throw new RuntimeException("Huh? "+programElementDoc+" is neither public, protected, private nor package protected.");
- printAtomTag(level, "access scope=\""+access+"\"");
- if (programElementDoc.isFinal())
- printAtomTag(level, "isFinal");
- if (programElementDoc.isStatic())
- printAtomTag(level, "isStatic");
- }
-
- protected void outputTags(int level, Tag[] tags, boolean descend, int context) {
-
- for (int i=0; i<tags.length; ++i) {
- outputTag(tags[i], level, descend, context, i == tags.length-1);
- }
- }
-
- protected void outputTag(Tag tag, int level, boolean descend, int context, boolean lastTag) {
-
- if (!"Text".equals(tag.name())) {
- printOpenTag(0 /* don't introduce additional whitespace */,
- "tag kind=\""+tag.kind()+"\" name=\""+tag.name()+"\"", false);
- }
- if (tag instanceof ThrowsTag) {
- ThrowsTag throwsTag = (ThrowsTag)tag;
- if (null!=throwsTag.exception()) {
- outputType(level+1, "exception", throwsTag.exception());
- }
- else {
- StringBuffer sb = new StringBuffer("Exception ");
- sb.append(throwsTag.exceptionName());
- sb.append(" not found in ");
- if (currentExecMember instanceof MethodDoc) {
- MethodDoc m = (MethodDoc)currentExecMember;
- sb.append(m.returnType().typeName());
- sb.append(m.returnType().dimension());
- sb.append(' ');
- }
- sb.append(currentClass.qualifiedName());
- sb.append('.');
- sb.append(currentExecMember.name());
- sb.append('(');
- Parameter[] params = currentExecMember.parameters();
- for (int j=0; j < params.length; j++) {
- sb.append(params[j].type().typeName());
- sb.append(params[j].type().dimension());
- sb.append(' ');
- sb.append(params[j].name());
- if (j != params.length-1)
- sb.append(", ");
- }
- sb.append(')');
- printWarning(sb.toString());
-
- printAtomTag(level+1, "exception typename=\""+throwsTag.exceptionName()+"\"");
- }
- }
- else if (tag instanceof ParamTag) {
- ParamTag paramTag = (ParamTag)tag;
- printAtomTag(level+1, "parameter name=\""+paramTag.parameterName()+"\"");
- }
-
- if (null != tag.text()) {
- //printOpenTag(level+1, "text", false);
- if (fixHTML) {
- print(htmlRepairer.getWellformedHTML(tag.text()));
- }
- else {
- print("<![CDATA["+cdata(tag.text())+"]]>");
- }
- //printCloseTag(0 /* don't introduce additional whitespace */, "text");
- }
- else {
- printWarning("Tag got null text: "+tag);
- }
-
- if ((descend && ("@throws".equals(tag.name()) || "@param".equals(tag.name()))) || "@deprecated".equals(tag.name())) {
- if (tag.firstSentenceTags().length>0) {
- printOpenTag(level+1, "firstSentenceTags", false);
- outputTags(level+2, tag.firstSentenceTags(), false, context);
- printCloseTag(0, "firstSentenceTags");
- }
-
- if (tag.inlineTags().length>0) {
- printOpenTag(level+1, "inlineTags", false);
- outputTags(level+2, tag.firstSentenceTags(), false, context);
- printCloseTag(0, "inlineTags");
- }
- }
-
- if (fixHTML && lastTag) {
- String terminateText = htmlRepairer.terminateText();
- if (null != terminateText && terminateText.length() > 0) {
- print(terminateText);
- }
- }
-
- if (!"Text".equals(tag.name())) {
-
- Taglet inlineTaglet = (Taglet)tagletMap.get(tag.name().substring(1));
- if (null != inlineTaglet && inlineTaglet.isInlineTag()) {
- printOpenTag(0, "inlineTagletText", false);
- print(inlineTaglet.toString(tag));
- printCloseTag(0, "inlineTagletText");
- }
-
- printCloseTag(0, "tag", false);
- }
- }
-
- void outputTaglets(int level, Tag[] tags, boolean descend, int context)
- {
- for (Iterator it = tagletMap.keySet().iterator(); it.hasNext(); ) {
- String tagName = (String)it.next();
- Object o = tagletMap.get(tagName);
- Taglet taglet = (Taglet)o;
-
- if (!taglet.isInlineTag()
- && ((context != CONTEXT_CONSTRUCTOR || taglet.inConstructor())
- || (context != CONTEXT_FIELD || taglet.inField())
- || (context != CONTEXT_METHOD || taglet.inMethod())
- || (context != CONTEXT_OVERVIEW || taglet.inOverview())
- || (context != CONTEXT_PACKAGE || taglet.inPackage())
- || (context != CONTEXT_TYPE || taglet.inType()))) {
-
- List tagsOfThisType = new ArrayList();
- for (int i=0, ilim=tags.length; i<ilim; ++i) {
- if (tags[i].name().substring(1).equals(tagName)) {
- tagsOfThisType.add(tags[i]);
- }
- }
-
- if (!tagsOfThisType.isEmpty()) {
- Tag[] tagletTags = (Tag[])tagsOfThisType.toArray(new Tag[tagsOfThisType.size()]);
- if (taglet instanceof StandardTaglet) {
- Iterator tagIterator = tagsOfThisType.iterator();
- while (tagIterator.hasNext()) {
- Tag tag = (Tag)tagIterator.next();
- outputTag(tag, level, descend, context, !tagIterator.hasNext());
- }
- }
- else {
- String tagletString = taglet.toString(tagletTags);
- if (null != tagletString) {
- printOpenTag(0, "tag name=\"" + tagName + "\" taglet-generated=\"true\"");
- if (fixHTML) {
- print(htmlRepairer.getWellformedHTML(tagletString));
- print(htmlRepairer.terminateText());
- }
- else {
- print("<![CDATA["+cdata(tagletString)+"]]>");
- }
- printCloseTag(0, "tag", false);
- }
- }
- }
- }
- }
- }
-
- /**
- * Inofficial entry point. We got an instance here.
- */
- protected boolean instanceStart(RootDoc _rootDoc) {
-
- this.rootDoc = _rootDoc;
- _rootDoc = null;
-
- boolean xmlOnly = true;
-
- // Set the default Taglet order
-
- registerTaglet(new VersionTaglet());
- registerTaglet(new AuthorTaglet());
- //registerTaglet(new SinceTaglet());
- registerTaglet(new StandardTaglet("deprecated"));
- registerTaglet(new StandardTaglet("see"));
- registerTaglet(new StandardTaglet("param"));
-
- // Set the built-in Taglet filter
-
- AuthorTaglet.setTagletEnabled(false);
- VersionTaglet.setTagletEnabled(false);
- SinceTaglet.setTagletEnabled(true);
- DeprecatedTaglet.setTagletEnabled(true);
-
- try {
- {
-
- // Process command line options passed through to this doclet
-
- TargetContext targetContext = null;
-
- TargetContext htmlTargetContext
- = new TargetContext(DocTranslet.fromClasspath("/doctranslets/html/gjdoc.xsl"),
- targetDirectory);
-
- for (int i=0, ilim=rootDoc.options().length; i<ilim; ++i) {
-
- String[] option = rootDoc.options()[i];
- String optionTag = option[0];
-
- if ("-d".equals(optionTag)) {
- if (null == targetDirectory) {
- targetDirectory = new File(option[1]);
- }
- if (null != targetContext) {
- targetContext.setTargetDirectory(targetDirectory);
- }
- }
-
- else if ("-nofixhtml".equals(optionTag)) {
- fixHTML = false;
- printError("-nofixhtml currently not supported.");
- return false;
- }
- else if ("-compress".equals(optionTag)) {
- compress = true;
- }
- else if ("-nohtmlwarn".equals(optionTag)) {
- noHTMLWarn = true;
- }
- else if ("-noemailwarn".equals(optionTag)) {
- noEmailWarn = true;
- }
- else if ("-indentstep".equals(optionTag)) {
- indentStep = Integer.parseInt(option[1]);
- }
- else if ("-doctranslet".equals(optionTag)) {
- targets.add(targetContext = new TargetContext(DocTranslet.fromJarFile(new File(option[1])),
- targetDirectory));
- }
- else if ("-genhtml".equals(optionTag)) {
- htmlTargetContext.setTargetDirectory(targetDirectory);
- targets.add(targetContext = htmlTargetContext);
- xmlOnly = false;
- }
- else if ("-geninfo".equals(optionTag)) {
- targetContext
- = new TargetContext(DocTranslet.fromClasspath("/doctranslets/info/gengj.xsl"),
- targetDirectory);
- targets.add(targetContext);
- if (!fixHTML) {
- printNotice("NOTE: -geninfo implies -fixhtml.");
- fixHTML = true;
- }
- xmlOnly = false;
- }
- else if ("-gendocbook".equals(optionTag)) {
- targetContext = new TargetContext(DocTranslet.fromClasspath("/doctranslets/docbook/gengj.xsl"),
- targetDirectory);
- targets.add(targetContext);
- if (!fixHTML) {
- printNotice("NOTE: -gendocbook implies -fixhtml.");
- fixHTML = true;
- }
- }
- else if ("-genpdf".equals(optionTag)) {
- targetContext
- = new TargetContext(DocTranslet.fromClasspath("/doctranslets/docbook/gengj.xsl"),
- targetDirectory);
- /** "gnu.classpath.tools.doclets.xmldoclet.DocBookPostprocessor") **/
- targets.add(targetContext);
- if (!fixHTML) {
- printNotice("NOTE: -genpdf implies -fixhtml.");
- fixHTML = true;
- }
- }
- else if ("-xmlonly".equals(optionTag)) {
- xmlOnly = true;
- }
- else if ("-bottomnote".equals(optionTag)) {
-
- FileReader reader = new FileReader(option[1]);
- StringWriter writer = new StringWriter();
- char[] buf = new char[256];
- int nread;
- while ((nread = reader.read(buf)) >= 0) {
- writer.write(buf, 0, nread);
- }
- writer.flush();
- bottomNote = writer.toString();
- writer.close();
- reader.close();
- }
- else if ("-title".equals(optionTag)) {
-
- title = option[1];
- }
- else if ("-workpath".equals(optionTag)) {
-
- workingPath = option[1];
- }
- else if ("-tagletpath".equals(optionTag)) {
-
- if (null == tagletPath) {
- tagletPath = option[1];
- }
- else {
- tagletPath = tagletPath + File.pathSeparator + option[1];
- }
- }
- else if ("-taglet".equals(optionTag)) {
-
- boolean tagletLoaded = false;
-
- String useTagletPath = this.tagletPath;
- if (null == useTagletPath) {
- useTagletPath = System.getProperty("java.class.path");
- }
-
- try {
- Class tagletClass;
- try {
- tagletClass
- = new FileSystemClassLoader(useTagletPath).loadClass(option[1]);
- }
- catch (ClassNotFoundException e) {
- // If not found on specified tagletpath, try default classloader
- tagletClass
- = Class.forName(option[1]);
- }
- Method registerTagletMethod
- = tagletClass.getDeclaredMethod("register", new Class[] { java.util.Map.class });
-
- if (!registerTagletMethod.getReturnType().equals(Void.TYPE)) {
- printError("Taglet class '" + option[1] + "' found, but register method doesn't return void.");
- }
- else if (registerTagletMethod.getExceptionTypes().length > 0) {
- printError("Taglet class '" + option[1] + "' found, but register method contains throws clause.");
- }
- else if ((registerTagletMethod.getModifiers() & (Modifier.STATIC | Modifier.PUBLIC | Modifier.ABSTRACT)) != (Modifier.STATIC | Modifier.PUBLIC)) {
- printError("Taglet class '" + option[1] + "' found, but register method isn't public static, or is abstract..");
- }
- else {
- Map tempMap = new HashMap();
- registerTagletMethod.invoke(null, new Object[] { tempMap });
- tagletLoaded = true;
- String name = (String)tempMap.keySet().iterator().next();
- Taglet taglet = (Taglet)tempMap.get(name);
- tagletMap.put(name, taglet);
- mentionedTags.add(taglet);
- }
- }
- catch (NoSuchMethodException e) {
- printError("Taglet class '" + option[1] + "' found, but doesn't contain the register method.");
- }
- catch (SecurityException e) {
- printError("Taglet class '" + option[1] + "' cannot be loaded: " + e.getMessage());
- }
- catch (InvocationTargetException e) {
- printError("Taglet class '" + option[1] + "' found, but register method throws exception: " + e.toString());
- }
- catch (IllegalAccessException e) {
- printError("Taglet class '" + option[1] + "' found, but there was a problem when accessing the register method: " + e.toString());
- }
- catch (IllegalArgumentException e) {
- printError("Taglet class '" + option[1] + "' found, but there was a problem when accessing the register method: " + e.toString());
- }
- catch (ClassNotFoundException e) {
- printError("Taglet class '" + option[1] + "' cannot be found.");
- }
- if (!tagletLoaded) {
- return false;
- }
- }
- else if ("-author".equals(optionTag)) {
- AuthorTaglet.setTagletEnabled(true);
- }
- else if ("-version".equals(optionTag)) {
- VersionTaglet.setTagletEnabled(true);
- }
- else if ("-nosince".equals(optionTag)) {
- SinceTaglet.setTagletEnabled(false);
- }
- else if ("-nodeprecated".equals(optionTag)) {
- DeprecatedTaglet.setTagletEnabled(false);
- }
- else if ("-authormail".equals(optionTag)) {
-
- if ("no-replace".equalsIgnoreCase(option[1])) {
- AuthorTaglet.setEmailReplacementType(AuthorTaglet.EmailReplacement.NO_REPLACEMENT);
- }
- else if ("mailto-name".equalsIgnoreCase(option[1])) {
- AuthorTaglet.setEmailReplacementType(AuthorTaglet.EmailReplacement.MAILTO_NAME);
- }
- else if ("name-mailto-address".equalsIgnoreCase(option[1])) {
- AuthorTaglet.setEmailReplacementType(AuthorTaglet.EmailReplacement.NAME_MAILTO_ADDRESS);
- }
- else if ("name-mangled-address".equalsIgnoreCase(option[1])) {
- AuthorTaglet.setEmailReplacementType(AuthorTaglet.EmailReplacement.NAME_MANGLED_ADDRESS);
- }
- else {
- printError("Invalid value for option '-authortag-email'. Allowed values are:"
- + " no-replace, mailto-name, name-mailto-address, name-mangled-address.");
- return false;
- }
- }
- else if ("-mailmangledot".equals(optionTag)) {
- AuthorTaglet.setDotReplacement(option[1]);
- }
- else if ("-mailmangleat".equals(optionTag)) {
- AuthorTaglet.setAtReplacement(option[1]);
- }
- else if ("-docfilessubdirs".equals(optionTag)) {
- docFilesSubdirsEnabled = true;
- }
- else if ("-excludedocfilessubdir".equals(optionTag)) {
- StringTokenizer st = new StringTokenizer(option[1]);
- while (st.hasMoreTokens()) {
- excludeDocFilesSubDirs.add(st.nextToken());
- }
- }
- else if ("-nonavbar".equals(optionTag)) {
- docTransletOptions.nonavbar = true;
- }
- else if ("-noindex".equals(optionTag)) {
- docTransletOptions.noindex = true;
- }
- else if ("-notree".equals(optionTag)) {
- docTransletOptions.notree = true;
- }
- else if ("-nocomment".equals(optionTag)) {
- docTransletOptions.nocomment = true;
- }
- else if ("-nohelp".equals(optionTag)) {
- docTransletOptions.nohelp = true;
- }
- else if ("-splitindex".equals(optionTag)) {
- docTransletOptions.splitindex = true;
- }
- else if ("-linksource".equals(optionTag)) {
- docTransletOptions.linksource = true;
- }
- else if ("-windowtitle".equals(optionTag)) {
- docTransletOptions.windowtitle = option[1];
- }
- else if ("-helpfile".equals(optionTag)) {
- docTransletOptions.helpfile = new File(option[1]).toURL().toString();
- }
- else if ("-stylesheetfile".equals(optionTag)) {
- docTransletOptions.stylesheetfile = new File(option[1]).toURL().toString();
- }
- else if ("-header".equals(optionTag)) {
- docTransletOptions.header = option[1];
- }
- else if ("-footer".equals(optionTag)) {
- docTransletOptions.footer = option[1];
- }
- else if ("-bottom".equals(optionTag)) {
- docTransletOptions.bottom = option[1];
- }
- else if ("-doctitle".equals(optionTag)) {
- docTransletOptions.doctitle = option[1];
- }
- else if ("-nodeprecatedlist".equals(optionTag)) {
- docTransletOptions.nodeprecatedlist = true;
- }
- else if ("-uses".equals(optionTag)) {
- docTransletOptions.uses = true;
- }
- else if ("-group".equals(optionTag)) {
- if (!processGroupOption(option[1], option[2])) {
- printError("Invalid package wildcard list in -group option \"" + option[1] + "\" " + option[2]);
- return false;
- }
- }
- else if ("-tag".equals(optionTag)) {
- String tagSpec = option[1];
- boolean validTagSpec = false;
- int ndx1 = tagSpec.indexOf(':');
- if (ndx1 < 0) {
- Taglet taglet = (Taglet)tagletMap.get(tagSpec);
- if (null == taglet) {
- printError("There is no standard tag '" + tagSpec + "'.");
- }
- else {
- if (mentionedTags.contains(taglet)) {
- printError("Tag '" + tagSpec + "' has been added or moved before.");
- }
- else {
- mentionedTags.add(taglet);
-
- // re-append taglet
- tagletMap.remove(tagSpec);
- tagletMap.put(tagSpec, taglet);
- }
- }
- }
- else {
- int ndx2 = tagSpec.indexOf(':', ndx1 + 1);
- if (ndx2 > ndx1 && ndx2 < tagSpec.length() - 1) {
- String tagName = tagSpec.substring(0, ndx1);
- String tagHead = null;
- if (tagSpec.charAt(ndx2 + 1) == '\"') {
- if (tagSpec.charAt(tagSpec.length() - 1) == '\"') {
- tagHead = tagSpec.substring(ndx2 + 2, tagSpec.length() - 1);
- validTagSpec = true;
- }
- }
- else {
- tagHead = tagSpec.substring(ndx2 + 1);
- validTagSpec = true;
- }
-
- boolean tagScopeOverview = false;
- boolean tagScopePackages = false;
- boolean tagScopeTypes = false;
- boolean tagScopeConstructors = false;
- boolean tagScopeMethods = false;
- boolean tagScopeFields = false;
- boolean tagDisabled = false;
-
- tag_option_loop:
- for (int n=ndx1+1; n<ndx2; ++n) {
- switch (tagSpec.charAt(n)) {
- case 'X':
- tagDisabled = true;
- break;
- case 'a':
- tagScopeOverview = true;
- tagScopePackages = true;
- tagScopeTypes = true;
- tagScopeConstructors = true;
- tagScopeMethods = true;
- tagScopeFields = true;
- break;
- case 'o':
- tagScopeOverview = true;
- break;
- case 'p':
- tagScopePackages = true;
- break;
- case 't':
- tagScopeTypes = true;
- break;
- case 'c':
- tagScopeConstructors = true;
- break;
- case 'm':
- tagScopeMethods = true;
- break;
- case 'f':
- tagScopeFields = true;
- break;
- default:
- validTagSpec = false;
- break tag_option_loop;
- }
- }
-
- if (validTagSpec) {
- GenericTaglet taglet
- = new GenericTaglet(tagName,
- tagHead,
- tagScopeOverview,
- tagScopePackages,
- tagScopeTypes,
- tagScopeConstructors,
- tagScopeMethods,
- tagScopeFields);
- taglet.setTagletEnabled(!tagDisabled);
- taglet.register(tagletMap);
- mentionedTags.add(taglet);
- }
- }
- }
- if (!validTagSpec) {
- printError("Value for option -tag must be in format \"<tagname>:Xaoptcmf:<taghead>\".");
- }
- }
- }
-
- // Use current directory if target directory hasn't been set.
- if (null == targetDirectory) {
- targetDirectory = new File(System.getProperty("user.dir"));
- }
- if (null != targetContext) {
- targetContext.setTargetDirectory(targetDirectory);
- }
-
- // It is illegal to specify targets AND -xmlonly.
-
- if (xmlOnly && targets.size() > 0) {
-
- printError("You can only specify one of -xmlonly and a target format.");
- return false;
- }
-
- // If no target was specified and XML only was not
- // requested, use HTML as default target.
-
- if (!xmlOnly && targets.size() == 0) {
- targets.add(targetContext = htmlTargetContext);
- }
-
- // Set the same target directory for all output.
-
- // FIXME: Allow separate target directories for different
- // output formats.
-
- for (Iterator it = targets.iterator(); it.hasNext(); ) {
- TargetContext t = (TargetContext)it.next();
- t.setTargetDirectory(targetDirectory);
- }
-
- // Create temporary directory if necessary
-
- if (xmlOnly) {
-
- xmlTargetDirectory = targetDirectory;
- }
- else {
-
- File workingTopDirectory = new File(workingPath);
-
- workingDirectory = new File(workingTopDirectory, "gjdoc.tmp."+System.currentTimeMillis());
-
- if (!workingDirectory.mkdir()) {
- printError("Cannot create temporary directory at "+System.getProperty("java.io.tmpdir"));
- return false;
- }
-
- File xmlTempDirectory = new File(workingDirectory, "xmloutput");
-
- if (!xmlTempDirectory.mkdir()) {
- printError("Cannot create temporary directory for XML output at "+System.getProperty("java.io.tmpdir"));
- return false;
- }
-
- xmlTargetDirectory = xmlTempDirectory;
- }
-
- // Create target directory if necessary
-
- if (!targetDirectory.exists()) {
- printNotice("Creating destination directory: \""
- + targetDirectory + "\"");
- if (!targetDirectory.mkdirs()) {
- printError("Failed to create destination directory \""
- + targetDirectory + "\"");
- return false;
- }
- }
-
- // Check for deprecation
-
- boolean hasDeprecatedClasses = false;
- boolean hasDeprecatedInterfaces = false;
- boolean hasDeprecatedExceptions = false;
- boolean hasDeprecatedErrors = false;
- boolean hasDeprecatedMethods = false;
- boolean hasDeprecatedFields = false;
-
- {
- ClassDoc[] classes = rootDoc.classes();
- for (int i = 0, ilim = classes.length; i < ilim; ++ i) {
- ClassDoc c = classes[i];
- Tag[] deprecatedTags = c.tags("deprecated");
- if (null != deprecatedTags && 0 != deprecatedTags.length) {
- if (c.isInterface()) {
- hasDeprecatedInterfaces = true;
- }
- else if (c.isException()) {
- hasDeprecatedExceptions = true;
- }
- else if (c.isError()) {
- hasDeprecatedErrors = true;
- }
- else /*if (c.isOrdinaryClass())*/ {
- hasDeprecatedClasses = true;
- }
- }
-
- MethodDoc[] methods = c.methods();
- for (int j = 0, jlim = methods.length; j < jlim; ++ j) {
- MethodDoc m = methods[j];
- deprecatedTags = m.tags("deprecated");
- if (null != deprecatedTags && 0 != deprecatedTags.length) {
- hasDeprecatedMethods = true;
- }
- }
-
- FieldDoc[] fields = c.fields();
- for (int j = 0, jlim = fields.length; j < jlim; ++ j) {
- FieldDoc f = fields[j];
- deprecatedTags = f.tags("deprecated");
- if (null != deprecatedTags && 0 != deprecatedTags.length) {
- hasDeprecatedFields = true;
- }
- }
- }
- }
-
- htmlRepairer = new HtmlRepairer(rootDoc, noHTMLWarn, noEmailWarn,
- currentClass, currentMember,
- false);
-
- collectUsage();
-
- // Begin XML generation
-
- printNotice("Writing XML Index file...");
-
- // Assign output stream
-
- setTargetFile("index.xml");
-
- // Output XML document header
-
- println(0, "<?xml version=\"1.0\"?>");
- println("<!DOCTYPE gjdoc SYSTEM \"dtd/gjdoc.dtd\">");
- println();
- printOpenTag(0, "rootdoc xmlns=\"http://www.w3.org/TR/REC-html40\" xmlns:gjdoc=\"http://www.gnu.org/software/cp-tools/gjdocxml\"");
-
- println();
- println(1, "<!-- Tags from overview page, if available -->");
-
- if (rootDoc.firstSentenceTags().length > 0) {
- printOpenTag(2, "firstSentenceTags", false);
- outputTags(3, rootDoc.firstSentenceTags(), true, CONTEXT_PACKAGE);
- printCloseTag(0, "firstSentenceTags");
- }
-
- if (rootDoc.inlineTags().length > 0) {
- printOpenTag(2, "inlineTags");
- outputTags(3, rootDoc.inlineTags(), true, CONTEXT_PACKAGE);
- printCloseTag(2, "inlineTags");
- }
-
- if (null != bottomNote) {
- printOpenTag(1, "bottomnote");
- print(bottomNote);
- printCloseTag(1, "bottomnote");
- }
-
- if (null != title) {
- printOpenTag(1, "title");
- println(2, title);
- printCloseTag(1, "title");
- }
-
- printOpenTag(1, "created");
- println(2, DateFormat.getDateInstance(DateFormat.LONG, Locale.US).format(new java.util.Date()));
- printCloseTag(1, "created");
-
- if (hasDeprecatedClasses) printAtomTag(1, "hasDeprecatedClasses");
- if (hasDeprecatedInterfaces) printAtomTag(1, "hasDeprecatedInterfaces");
- if (hasDeprecatedExceptions) printAtomTag(1, "hasDeprecatedExceptions");
- if (hasDeprecatedErrors) printAtomTag(1, "hasDeprecatedErrors");
- if (hasDeprecatedMethods) printAtomTag(1, "hasDeprecatedMethods");
- if (hasDeprecatedFields) printAtomTag(1, "hasDeprecatedFields");
-
- // Output summary of all classes specified on command line
-
- println();
- println(1, "<!-- Classes specified by user on command line -->");
- ClassDoc[] specifiedClasses = rootDoc.specifiedClasses();
- for (int i=0, ilim=specifiedClasses.length; i<ilim; ++i) {
- ClassDoc sc = specifiedClasses[i];
- printAtomTag(1, "specifiedclass fqname=\""+sc.qualifiedName()+"\" name=\""+sc.name()+"\"");
- }
- specifiedClasses = null;
-
- // Output summary of all packages specified on command line
-
- println();
- println(1, "<!-- Packages specified by user on command line -->");
- PackageDoc[] specifiedPackages = rootDoc.specifiedPackages();
- for (int i=0, ilim=specifiedPackages.length; i<ilim; ++i) {
- PackageDoc sp = specifiedPackages[i];
- printAtomTag(1, "specifiedpackage name=\""+sp.name()+"\"");
- }
- specifiedPackages = null;
-
- // Output package group information specified on the
- // command line
-
- println();
- println(1, "<!-- Package groups specified by user on command line -->");
- {
- Iterator packageGroupIt = packageGroups.iterator();
- while (packageGroupIt.hasNext()) {
- PackageGroup packageGroup = (PackageGroup)packageGroupIt.next();
- SortedSet groupedPackages = packageGroup.getPackages();
- if (groupedPackages.isEmpty()) {
- printWarning("Package group named '"
- + packageGroup.getName() + "' didn't match any packages.");
- }
- else {
- printOpenTag(1, "packagegroup name=\"" + packageGroup.getName() + "\"");
- Iterator groupedPackageIt = groupedPackages.iterator();
- while (groupedPackageIt.hasNext()) {
- PackageDoc groupedPackageDoc = (PackageDoc)groupedPackageIt.next();
- printAtomTag(2, "package name=\"" + groupedPackageDoc.name() + "\"");
- }
- printCloseTag(1, "packagegroup");
- }
- }
- packageGroups = null;
- }
-
- // Output information on all packages for which documentation
- // has been made available via the Doclet API
-
- println();
- println(1, "<!-- Documentation for all packages -->");
- PackageDoc[] packages = rootDoc.specifiedPackages();
- for (int i=0, ilim=packages.length; i<ilim; ++i) {
- PackageDoc c = packages[i];
- outputPackageDoc(c);
- }
- packages = null;
-
- // Output brief summary on all classes for which documentation
- // has been made available via the Doclet API.
- //
- // While this is redundant, it can speed up XSLT
- // processing by orders of magnitude
-
- println();
- println(1, "<!-- Brief summary for all classes -->");
- ClassDoc[] sumclasses = rootDoc.classes();
- for (int i=0, ilim=sumclasses.length; i<ilim; ++i) {
- ClassDoc c = sumclasses[i];
- outputClassDocSummary(c);
- }
- sumclasses = null;
-
- // Output closing tag, finish output stream
-
- println();
- printCloseTag(0, "rootdoc");
-
- closeTargetFile();
-
- createIndexByName();
-
-
-
- // Output information on all classes for which documentation
- // has been made available via the Doclet API
-
- println();
- println(1, "<!-- Documentation for all classes -->");
- ClassDoc[] classes = rootDoc.classes();
- String prevPackageName = null;
- for (int i = 0, ilim = classes.length; i < ilim; ++ i) {
- ClassDoc c = classes[i];
-
- if (isVerbose()) {
- printNotice("Writing XML information for "+c.qualifiedName()+"...");
- }
- else {
- String packageName = c.containingPackage().name();
- if (null == prevPackageName || !packageName.equals(prevPackageName)) {
- printNotice("Writing XML information for "+packageName+"...");
- prevPackageName = packageName;
- }
- }
-
- setTargetFile(c.qualifiedName().replace('/','.')+".xml");
-
- println("<?xml version=\"1.0\"?>");
- println("<!DOCTYPE gjdoc SYSTEM \"dtd/gjdoc.dtd\">");
-
- outputClassDoc(c);
-
- closeTargetFile();
- }
- classes = null;
- }
-
- // Copy DTD files to temporary directory
-
- // FIXME: try to solve this via jar: URLs. but this will
- // probably break libxmlj compatibility (?)
-
- String[] resources = new String[] {
- "gjdoc.dtd",
- "gjdoc-alphaindex.dtd",
- "dbcentx.mod",
- "ent/iso-amsa.ent",
- "ent/iso-amsb.ent",
- "ent/iso-amsc.ent",
- "ent/iso-amsn.ent",
- "ent/iso-amso.ent",
- "ent/iso-amsr.ent",
- "ent/iso-box.ent",
- "ent/iso-cyr1.ent",
- "ent/iso-cyr2.ent",
- "ent/iso-dia.ent",
- "ent/iso-grk1.ent",
- "ent/iso-grk2.ent",
- "ent/iso-grk3.ent",
- "ent/iso-grk4.ent",
- "ent/iso-lat1.ent",
- "ent/iso-lat2.ent",
- "ent/iso-num.ent",
- "ent/iso-pub.ent",
- "ent/iso-tech.ent",
- };
-
- File tempDtdDirectory = new File(xmlTargetDirectory, "dtd");
- File tempDtdEntDirectory = new File(tempDtdDirectory, "ent");
-
- if ((tempDtdDirectory.exists() || tempDtdDirectory.mkdir())
- && (tempDtdEntDirectory.exists() || tempDtdEntDirectory.mkdir())) {
- for (int i = 0; i < resources.length; ++ i) {
- copyResourceToFile("/dtd/" + resources[i],
- new File(tempDtdDirectory, resources[i]));
- }
- }
- else {
- printError("Cannot create temporary directories for DTD data at " + tempDtdDirectory);
- return false;
- }
-
- // Copy package data-dir directory
-
- {
- PackageDoc[] packages = rootDoc.specifiedPackages();
- for (int i=0, ilim=packages.length; i<ilim; ++i) {
- PackageDoc c = packages[i];
- if (c instanceof GjdocPackageDoc) {
- copyPackageDataDir((GjdocPackageDoc)c);
- }
- }
- }
-
- // All information has been output. Apply stylesheet if given.
-
- gnu.classpath.tools.gjdoc.Main.releaseRootDoc();
-
- this.currentClass = null;
- this.currentMember = null;
- this.currentExecMember = null;
-
- System.gc();
-
- // From this point we are only operating on files, so we don't
- // need this anymore and can free up some memory
-
- for (Iterator it = targets.iterator(); it.hasNext(); ) {
-
- TargetContext target = (TargetContext)it.next();
-
- // We have XSLT postprocessing, run DocTranslet.
-
- //DocTranslet docTranslet = DocTranslet.fromClasspath("/doctranslets/html/gjdoc.xsl");
-
- //docTranslet.setOptions(docTransletOptions);
-
- target.getDocTranslet().setOptions(docTransletOptions);
-
- target.getDocTranslet().apply(xmlTargetDirectory,
- target.getTargetDirectory(),
- rootDoc);
- }
-
- // Done
-
- targets = null;
-
- System.gc();
- Runtime.getRuntime().runFinalization();
-
- return true;
- }
- catch (Exception e) {
-
- // Something went wrong. Report to stderr and pass error to
- // Javadoc Reporter
-
- e.printStackTrace();
- printError(e.toString());
-
- Throwable rootCause = e.getCause();
- if (null != rootCause) {
- while (null != rootCause.getCause()) {
- rootCause = rootCause.getCause();
- }
- System.err.println("Root cause:");
- rootCause.printStackTrace();
- }
-
- return false;
- }
- finally {
-
- // In any case, delete the working directory if we created one
-
- if (null != workingDirectory) {
-
- if (!deleteRecursive(workingDirectory)) {
- printWarning("Could not delete temporary directory at "+workingDirectory);
- }
- }
-
- printNotice("Done.");
- }
- }
-
- /**
- * Recursively delete the specified directory and its contents,
- * like <code>rm -Rf directory</code>
- *
- * @return <code>true</code> on success
- */
- private static boolean deleteRecursive(File directory) {
-
- boolean success = true;
-
- File[] files = directory.listFiles();
-
- for (int i=0, ilim=files.length; i<ilim; ++i) {
-
- File file = files[i];
-
- if (file.isDirectory()) {
-
- success = deleteRecursive(file) && success;
- }
- else {
-
- success = file.delete() && success;
- }
- }
-
- return directory.delete() && success;
- }
-
- /**
- * Prints a string to stdout and appends a newline. Convenience
- * method.
- */
- protected void println(String str) {
- out.println(str);
- }
-
- /**
- * Prints a string to stdout without appending a newline.
- * Convenience method.
- */
- protected void print(String str) {
- out.print(str);
- }
-
- /**
- * In standard mode, prints an empty line to stdout.
- * In thight mode, nothing happens.
- * Convenience method.
- */
- protected void println() {
- if (!compress) {
- out.println();
- }
- }
-
- /**
- * In standard mode, prints the given text indented to stdout and appends newline.
- * In tight mode, doesn't print indentation or newlines.
- */
- protected void print(int indentLevel, String msg) {
- if (compress) {
- out.print(msg);
- }
- else {
- StringBuffer indentation = new StringBuffer();
- for (int i=0; i<indentLevel*indentStep; ++i) {
- indentation.append(' ');
- }
- out.print(indentation+msg);
- }
- }
-
- /**
- * In tight mode, prints a message at a given indentation level.
- * In standard mode, appends a newline in addition.
- */
- protected void println(int indentLevel, String msg) {
- print(indentLevel, msg);
- if (!compress) out.println();
- }
-
- /**
- * Prints an atom tag at the given indentation level.
- */
- protected void printAtomTag(int level, String tag) {
- println(level, "<"+tagPrefix+":"+replaceCharsInTag(tag)+"/>");
- }
-
- /**
- * Prints an open tag at the given indentation level.
- */
- protected void printOpenTag(int level, String tag) {
- printOpenTag(level, replaceCharsInTag(tag), true);
- }
-
- /**
- * Prints an open tag at the given indentation level and
- * conditionally appends a newline (if not in tight mode).
- */
- protected void printOpenTag(int level, String tag, boolean appendNewline) {
- if (appendNewline && !compress) {
- println(level, "<"+tagPrefix+":"+replaceCharsInTag(tag)+">");
- }
- else {
- print(level, "<"+tagPrefix+":"+replaceCharsInTag(tag)+">");
- }
- }
-
- /**
- * Prints a close tag at the given indentation level.
- */
- protected void printCloseTag(int level, String tag) {
- printCloseTag(level, tag, true);
- }
-
- /**
- * Prints a close tag at the given indentation level and
- * conditionally appends a newline (if not in tight mode).
- */
- protected void printCloseTag(int level, String tag, boolean appendNewline) {
- if (appendNewline && !compress) {
- println(level, "</"+tagPrefix+":"+replaceCharsInTag(tag)+">");
- }
- else {
- print(level, "</"+tagPrefix+":"+replaceCharsInTag(tag)+">");
- }
- }
-
- public static int optionLength(String option) {
- if ("-d".equals(option)) return 2;
- else if ("-fixhtml".equals(option)) return 1;
- else if ("-compress".equals(option)) return 1;
- else if ("-nohtmlwarn".equals(option)) return 1;
- else if ("-noemailwarn".equals(option)) return 1;
- else if ("-indentstep".equals(option)) return 2;
- else if ("-xslsheet".equals(option)) return 2;
- else if ("-xsltdriver".equals(option)) return 2;
- else if ("-postprocess".equals(option)) return 2;
- else if ("-genhtml".equals(option)) return 1;
- else if ("-geninfo".equals(option)) return 1;
- else if ("-gendocbook".equals(option)) return 1;
- else if ("-xmlonly".equals(option)) return 1;
- else if ("-bottomnote".equals(option)) return 2;
- else if ("-workpath".equals(option)) return 2;
- else if ("-title".equals(option)) return 2;
- else if ("-tagletpath".equals(option)) return 2;
- else if ("-taglet".equals(option)) return 2;
- else if ("-authormail".equals(option)) return 2;
- else if ("-mailmangledot".equals(option)) return 2;
- else if ("-mailmangleat".equals(option)) return 2;
- else if ("-noindex".equals(option)) return 1;
- else if ("-nocomment".equals(option)) return 1;
- else if ("-notree".equals(option)) return 1;
- else if ("-nohelp".equals(option)) return 1;
- else if ("-nonavbar".equals(option)) return 1;
- else if ("-splitindex".equals(option)) return 1;
- else if ("-author".equals(option)) return 1;
- else if ("-version".equals(option)) return 1;
- else if ("-nosince".equals(option)) return 1;
- else if ("-nodeprecated".equals(option)) return 1;
- else if ("-linksource".equals(option)) return 1;
- else if ("-windowtitle".equals(option)) return 2;
- else if ("-helpfile".equals(option)) return 2;
- else if ("-stylesheetfile".equals(option)) return 2;
- else if ("-tag".equals(option)) return 2;
- else if ("-header".equals(option)) return 2;
- else if ("-footer".equals(option)) return 2;
- else if ("-bottom".equals(option)) return 2;
- else if ("-doctitle".equals(option)) return 2;
- else if ("-nodeprecatedlist".equals(option)) return 1;
- else if ("-uses".equals(option)) return 1;
- else if ("-group".equals(option)) return 3;
-
- else return -1;
- }
-
- public static boolean validOptions(String[][] options) {
- return true;
- }
-
-
- /**
- * Workaround for non well-formed comments: fix tag contents
- * by replacing <code>&lt;</code> with <code>&amp;lt;</code>,
- * <code>&gt;</code> with <code>&amp;gt;</code> and
- * <code>&amp;</code> with <code>&amp;amp;</code>.
- *
- * @param tagContent String to process
- *
- * @return given String with all special characters replaced by
- * HTML entities.
- */
- private static String replaceCharsInTag(String tagContent) {
- return
- replaceString(
- replaceString(
- replaceString(
- tagContent,
- "<", "&lt;"
- ),
- ">", "&gt;"
- ),
- "&", "&amp;"
- );
- }
-
- /**
- * Replaces all occurences of string <code>needle</code> within string
- * <code>haystack</code> by string <code>replacement</code>.
- *
- * @param haystack The string to search and replace in.
- * @param needle The string which is searched for.
- * @param replacement The string by which every occurence of <code>needle</code> is replaced.
- */
- private static String replaceString(String haystack, String needle, String replacement) {
- int ndx = haystack.indexOf(needle);
- if (ndx<0)
- return haystack;
- else
- return haystack.substring(0, ndx) + replacement
- + replaceString(haystack.substring(ndx+needle.length()), needle, replacement);
- }
-
- protected void setTargetFile(String filename) throws IOException {
-
- OutputStream fileOut = new FileOutputStream(new File(xmlTargetDirectory, filename));
- out = new PrintWriter(new BufferedWriter(new OutputStreamWriter(fileOut, "UTF8")));;
- }
-
- protected void closeTargetFile() {
-
- out.flush();
- out.close();
- }
-
- private String cdata(String str) {
-
- if (null==str) {
- return str;
- } // end of if ((null==str)
-
- StringBuffer rc = new StringBuffer();
- for (int i=0; i<str.length(); ++i) {
- char c = str.charAt(i);
- if (c==0x09 || c==0x0a || c==0x0d || (c>=0x20 && c<=0xd7ff) || (c>=0xe000 && c<=0xfffd) || (c>=0x10000 && c<=0x10ffff)) {
- rc.append(c);
- }
- else {
- printWarning("Invalid Unicode character 0x"+Integer.toString(c, 16)+" in javadoc markup has been stripped.");
- } // end of else
-
- }
- return rc.toString();
- }
-
- static void copyResourceToFile(String resourceName, File target) throws IOException {
-
- InputStream in = Driver.class.getResourceAsStream(resourceName);
-
- if (null != in) {
-
- FileOutputStream out = new FileOutputStream(target);
- int size;
- byte[] buffer = new byte[512];
- while ((size = in.read(buffer)) >= 0) {
- out.write(buffer, 0, size);
- }
- out.close();
- }
- else {
-
- throw new IOException("Can't find resource named "+resourceName);
- }
- }
-
- private void printError(String error) {
- if (null != rootDoc) {
- rootDoc.printError(error);
- }
- else {
- System.err.println("ERROR: "+error);
- }
- }
-
- private void printWarning(String warning) {
- if (null != rootDoc) {
- rootDoc.printWarning(warning);
- }
- else {
- System.err.println("WARNING: "+warning);
- }
- }
-
- private void printNotice(String notice) {
- if (null != rootDoc) {
- rootDoc.printNotice(notice);
- }
- else {
- System.err.println(notice);
- }
- }
-
- /**
- * Copy the contents of the input directory to the output
- * directory. The output directory must exist.
- */
- private void copyPackageDataDir(GjdocPackageDoc packageDoc) throws IOException {
- File docFilesSourceDirectory
- = new File(packageDoc.packageDirectory(), "doc-files");
- File docFilesTargetDirectory
- = new File(this.targetDirectory,
- packageDoc.name().replace('.', File.separatorChar));
- if (docFilesSourceDirectory.exists()) {
- printNotice("Copying files from " + docFilesSourceDirectory);
- copyDirectory(docFilesSourceDirectory, docFilesTargetDirectory,
- docFilesSubdirsEnabled,
- excludeDocFilesSubDirs);
- }
- }
-
- /**
- * Recursively copy the contents of the input directory to the
- * output directory. The output directory must exist.
- */
- private static void copyDirectory(File sourceDir, File targetDir,
- boolean recursive,
- Set excludeDirs) throws IOException {
- if (!targetDir.exists() && !targetDir.mkdirs()) {
- throw new IOException("Cannot create directory " + targetDir);
- }
-
- File[] sourceFiles = sourceDir.listFiles();
- for (int i=0; i<sourceFiles.length; ++i) {
- if (sourceFiles[i].isDirectory()) {
- if (recursive && (null == excludeDirs
- || !excludeDirs.contains(sourceFiles[i].getName()))) {
- File targetSubDir = new File(targetDir,
- sourceFiles[i].getName());
- if (targetSubDir.exists() || targetSubDir.mkdir()) {
- copyDirectory(sourceFiles[i], targetSubDir, recursive, null);
- }
- else {
- throw new IOException("Cannot create directory " + targetSubDir);
- }
- }
- }
- else {
- copyFile(sourceFiles[i], new File(targetDir, sourceFiles[i].getName()));
- }
- }
- }
-
- /**
- * Copy the contents of the input file to the output file. The
- * output file's parent directory must exist.
- */
- private static void copyFile(File sourceFile, File targetFile) throws IOException {
-
- InputStream in = new FileInputStream(sourceFile);
- OutputStream out = new FileOutputStream(targetFile);
- int nread;
- byte[] buf = new byte[512];
- while ((nread = in.read(buf)) >= 0) {
- out.write(buf, 0, nread);
- }
- in.close();
- out.close();
- }
-
- private void createIndexByName() throws IOException {
- // Create index
-
- // Collect index
-
- Map indexMap = new TreeMap(new Comparator() {
- public int compare(Object o1, Object o2) {
- return o1.toString().toLowerCase().compareTo(o2.toString().toLowerCase());
- }
- });
-
- // Add packages to index
-
- PackageDoc[] packages = rootDoc.specifiedPackages();
- for (int i=0, ilim=packages.length; i<ilim; ++i) {
- PackageDoc c = packages[i];
- indexMap.put(c.name(), c);
- }
-
- // Add classes, fields and methods to index
-
- ClassDoc[] sumclasses = rootDoc.classes();
- for (int i=0, ilim=sumclasses.length; i<ilim; ++i) {
- ClassDoc c = sumclasses[i];
- if (null == c.containingClass()) {
- indexMap.put(c.name(), c);
- }
- else {
- indexMap.put(c.name().substring(c.containingClass().name().length() + 1), c);
- }
- FieldDoc[] fields = c.fields();
- for (int j=0, jlim=fields.length; j<jlim; ++j) {
- indexMap.put(fields[j].name(), fields[j]);
- }
- MethodDoc[] methods = c.methods();
- for (int j=0, jlim=methods.length; j<jlim; ++j) {
- MethodDoc method = methods[j];
- StringBuffer signature = new StringBuffer();
- signature.append(method.name());
- signature.append('(');
- Parameter[] parameters = method.parameters();
- for (int k=0, klim=parameters.length; k<klim; ++k) {
- if (k > 0) {
- signature.append(", ");
- }
- signature.append(parameters[k].typeName());
- }
- signature.append(')');
- indexMap.put(signature.toString(), method);
- }
- }
-
- // Assign output stream
-
- setTargetFile("alphaindex.xml");
-
- // Output XML document header
-
- println(0, "<?xml version=\"1.0\"?>");
- println("<!DOCTYPE gjdoc SYSTEM \"dtd/gjdoc-alphaindex.dtd\">");
- println();
- printOpenTag(0, "alphaindex xmlns=\"http://www.w3.org/TR/REC-html40\" xmlns:gjdoc=\"http://www.gnu.org/software/cp-tools/gjdocxml\"");
-
- Iterator it = indexMap.keySet().iterator();
-
- char previousCategoryLetter = '\0';
- boolean categoryOpen = false;
-
- while (it.hasNext()) {
- String key = (String)it.next();
- Doc entry = (Doc)indexMap.get(key);
-
- char firstChar = Character.toUpperCase(key.charAt(0));
- if (firstChar != previousCategoryLetter) {
- if (categoryOpen) {
- printCloseTag(1, "category");
- }
- printOpenTag(1, "category letter=\"" + firstChar + "\"");
- categoryOpen = true;
- previousCategoryLetter = firstChar;
- }
-
- printOpenTag(2, "entry name=\"" + key + "\"");
- if (entry instanceof PackageDoc) {
- printAtomTag(3, "isPackage");
- }
- else if (entry instanceof ClassDoc) {
- printAtomTag(3, "isClass");
- ClassDoc centry = (ClassDoc)entry;
- currentClass = centry;
- printAtomTag(3, "containingPackage name=\"" + centry.containingPackage().name() + "\"");
- if (null != centry.containingClass()) {
- printAtomTag(3, "containingClass name=\"" + centry.containingClass().name() + "\"");
- }
- if (centry.isInterface()) {
- printAtomTag(3, "isInterface");
- }
- if (centry.isException()) {
- printAtomTag(3, "isException");
- }
- if (centry.isError()) {
- printAtomTag(3, "isError");
- }
- if (centry.isOrdinaryClass()) {
- printAtomTag(3, "isOrdinaryClass");
- }
- }
- else if (entry instanceof ProgramElementDoc) {
- ProgramElementDoc pentry = (ProgramElementDoc)entry;
- currentClass = pentry.containingClass();
- printAtomTag(3, "containingPackage name=\"" + pentry.containingPackage().name() + "\"");
- printAtomTag(3, "containingClass name=\"" + pentry.containingClass().name() + "\"");
- if (pentry.isMethod()) {
- printAtomTag(3, "isMethod");
- ExecutableMemberDoc mentry = (ExecutableMemberDoc)pentry;
- printAtomTag(3, "signature full=\""+mentry.signature()+"\" flat=\""+mentry.flatSignature()+"\"");
- printAtomTag(3, "method name=\"" + mentry.name() + "\"");
- }
- if (pentry.isField()) {
- printAtomTag(3, "isField");
- }
- }
-
- Tag[] tags = entry.firstSentenceTags();
- for (int i=0, ilim=tags.length; i<ilim; ++i) {
- Tag tag = tags[i];
- if (tag.firstSentenceTags().length>0) {
- printOpenTag(3, "firstSentenceTags", false);
- outputTags(4, tag.firstSentenceTags(), false, CONTEXT_TYPE);
- printCloseTag(3, "firstSentenceTags");
- }
- }
-
-
- printCloseTag(2, "entry");
- }
-
- if (categoryOpen) {
- printCloseTag(1, "category");
- }
-
- printCloseTag(0, "alphaindex");
-
- closeTargetFile();
- }
-
- private static class UsageType
- {
- public static final UsageType CLASS_DERIVED_FROM = new UsageType("class-derived-from");
- public static final UsageType FIELD_OF_TYPE = new UsageType("field-of-type");
- public static final UsageType METHOD_WITH_RETURN_TYPE = new UsageType("method-with-return-type");
- public static final UsageType METHOD_WITH_PARAMETER_TYPE = new UsageType("method-with-parameter-type");
- public static final UsageType METHOD_WITH_THROWN_TYPE = new UsageType("method-with-thrown-type");
- public static final UsageType CONSTRUCTOR_WITH_PARAMETER_TYPE = new UsageType("constructor-with-parameter-type");
- public static final UsageType CONSTRUCTOR_WITH_THROWN_TYPE = new UsageType("constructor-with-thrown-type");
- private String id;
-
- private UsageType(String id)
- {
- this.id = id;
- }
-
- public String toString() {
- return "UsageType{id=" + id + "}";
- }
-
- public String getId() {
- return id;
- }
- }
-
- /**
- * ClassDoc -> (PackageDoc -> (UsageType -> (Set of Doc)))
- */
- private Map usedClassToPackagesMap = new HashMap();
-
- private void addUsedBy(ClassDoc usedClass, UsageType usageType, Doc user, PackageDoc userPackage)
- {
- Map packageToUsageTypeMap = (Map)usedClassToPackagesMap.get(usedClass);
- if (null == packageToUsageTypeMap) {
- packageToUsageTypeMap = new HashMap();
- usedClassToPackagesMap.put(usedClass, packageToUsageTypeMap);
- }
-
- Map usageTypeToUsersMap = (Map)packageToUsageTypeMap.get(userPackage);
- if (null == usageTypeToUsersMap) {
- usageTypeToUsersMap = new HashMap();
- packageToUsageTypeMap.put(userPackage, usageTypeToUsersMap);
- }
-
- Set userSet = (Set)usageTypeToUsersMap.get(usageType);
- if (null == userSet) {
- userSet = new TreeSet(); // FIXME: we need the collator from Main here
- usageTypeToUsersMap.put(usageType, userSet);
- }
- userSet.add(user);
- }
-
- /**
- * Create the cross reference database.
- */
- private void collectUsage() {
-
- ClassDoc[] classes = rootDoc.classes();
- for (int i = 0, ilim = classes.length; i < ilim; ++ i) {
- ClassDoc clazz = classes[i];
-
- // classes derived from
- for (ClassDoc superclass = clazz.superclass(); superclass != null;
- superclass = superclass.superclass()) {
- addUsedBy(superclass, UsageType.CLASS_DERIVED_FROM, clazz, clazz.containingPackage());
- }
-
- FieldDoc[] fields = clazz.fields();
- for (int j = 0, jlim = fields.length; j < jlim; ++ j) {
- FieldDoc field = fields[j];
-
- // fields of type
- ClassDoc fieldType = field.type().asClassDoc();
- if (null != fieldType) {
- addUsedBy(fieldType, UsageType.FIELD_OF_TYPE,
- field, clazz.containingPackage());
- }
- }
-
- MethodDoc[] methods = clazz.methods();
- for (int j = 0, jlim = methods.length; j < jlim; ++ j) {
- MethodDoc method = methods[j];
-
- // methods with return type
-
- ClassDoc returnType = method.returnType().asClassDoc();
- if (null != returnType) {
- addUsedBy(returnType, UsageType.METHOD_WITH_RETURN_TYPE,
- method, clazz.containingPackage());
- }
- Parameter[] parameters = method.parameters();
- for (int k=0; k<parameters.length; ++k) {
-
- // methods with parameter type
-
- Parameter parameter = parameters[k];
- ClassDoc parameterType = parameter.type().asClassDoc();
- if (null != parameterType) {
- addUsedBy(parameterType, UsageType.METHOD_WITH_PARAMETER_TYPE,
- method, clazz.containingPackage());
- }
- }
-
- // methods which throw
-
- ClassDoc[] thrownExceptions = method.thrownExceptions();
- for (int k = 0, klim = thrownExceptions.length; k < klim; ++ k) {
- ClassDoc thrownException = thrownExceptions[k];
- addUsedBy(thrownException, UsageType.METHOD_WITH_THROWN_TYPE,
- method, clazz.containingPackage());
- }
- }
-
- ConstructorDoc[] constructors = clazz.constructors();
- for (int j = 0, jlim = constructors.length; j < jlim; ++ j) {
-
- ConstructorDoc constructor = constructors[j];
-
- Parameter[] parameters = constructor.parameters();
- for (int k = 0, klim = parameters.length; k < klim; ++ k) {
-
- // constructors with parameter type
-
- Parameter parameter = parameters[k];
- ClassDoc parameterType = parameter.type().asClassDoc();
- if (null != parameterType) {
- addUsedBy(parameterType, UsageType.CONSTRUCTOR_WITH_PARAMETER_TYPE,
- constructor, clazz.containingPackage());
- }
- }
-
- // constructors which throw
-
- ClassDoc[] thrownExceptions = constructor.thrownExceptions();
- for (int k = 0, klim = thrownExceptions.length; k < klim; ++ k) {
- ClassDoc thrownException = thrownExceptions[k];
- addUsedBy(thrownException, UsageType.CONSTRUCTOR_WITH_THROWN_TYPE,
- constructor, clazz.containingPackage());
- }
- }
- }
- }
-
- private void outputUsage(ClassDoc clazz, int level) {
-
- Map packageToUsageTypeMap = (Map)usedClassToPackagesMap.get(clazz);
- if (null != packageToUsageTypeMap) {
- printOpenTag(level, "references");
-
- Iterator packagesIterator = packageToUsageTypeMap.keySet().iterator();
-
- while (packagesIterator.hasNext()) {
- PackageDoc packageDoc = (PackageDoc)packagesIterator.next();
- printOpenTag(level + 1, "referencing-package name=\"" + packageDoc.name() + "\"");
- Map usageTypeToUsersMap = (Map)packageToUsageTypeMap.get(packageDoc);
- Iterator usageTypeIterator = usageTypeToUsersMap.keySet().iterator();
- while (usageTypeIterator.hasNext()) {
- UsageType usageType = (UsageType)usageTypeIterator.next();
- printOpenTag(level + 2, "usage-type id=\"" + usageType.getId() + "\"");
- Set users = (Set)usageTypeToUsersMap.get(usageType);
- Iterator userIterator = users.iterator();
- while (userIterator.hasNext()) {
- Doc user = (Doc)userIterator.next();
- if (user instanceof ClassDoc) {
- printAtomTag(level + 3, "user"
- + " class=\"" + ((ClassDoc)user).name() + "\"");
- }
- else if (user instanceof FieldDoc) {
- FieldDoc fieldDoc = (FieldDoc)user;
- printAtomTag(level + 3, "user"
- + " class=\"" + fieldDoc.containingClass().name() + "\""
- + " field=\"" + fieldDoc.name() + "\"");
- }
- else if (user instanceof MethodDoc) {
- MethodDoc methodDoc = (MethodDoc)user;
- printAtomTag(level + 3, "user"
- + " class=\"" + methodDoc.containingClass().name() + "\""
- + " method=\"" + methodDoc.name() + "\""
- + " signature=\"" + methodDoc.signature() + "\""
- + " flatSignature=\"" + methodDoc.flatSignature() + "\"");
- }
- else if (user instanceof ConstructorDoc) {
- ConstructorDoc constructorDoc = (ConstructorDoc)user;
- printAtomTag(level + 3, "user"
- + " class=\"" + constructorDoc.containingClass().name() + "\""
- + " signature=\"" + constructorDoc.signature() + "\""
- + " flatSignature=\"" + constructorDoc.flatSignature() + "\"");
- }
- }
- printCloseTag(level +2, "usage-type");
- }
- printCloseTag(level + 1, "referencing-package");
- }
-
- printCloseTag(level, "references");
- }
- }
-
- private boolean processGroupOption(String groupName, String colonSeparatedPackageList)
- {
- try {
- PackageMatcher packageMatcher = new PackageMatcher();
-
- StringTokenizer tokenizer = new StringTokenizer(colonSeparatedPackageList, ":");
- while (tokenizer.hasMoreTokens()) {
- String packageWildcard = tokenizer.nextToken();
- packageMatcher.addWildcard(packageWildcard);
- }
-
- SortedSet groupPackages = packageMatcher.filter(rootDoc.specifiedPackages());
-
- packageGroups.add(new PackageGroup(groupName, groupPackages));
-
- return true;
- }
- catch (InvalidPackageWildcardException e) {
- return false;
- }
- }
-
- private void registerTaglet(Taglet taglet)
- {
- tagletMap.put(taglet.getName(), taglet);
- }
-
- private boolean isVerbose()
- {
- return false;
- }
-}
+/* gnu.classpath.tools.doclets.xmldoclet.Driver
+ Copyright (C) 2001 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package gnu.classpath.tools.doclets.xmldoclet;
+
+import com.sun.javadoc.*;
+import java.io.*;
+
+import com.sun.tools.doclets.Taglet;
+
+import java.lang.reflect.InvocationTargetException;
+import java.lang.reflect.Method;
+import java.lang.reflect.Modifier;
+
+import java.text.DateFormat;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Comparator;
+import java.util.HashSet;
+import java.util.TreeSet;
+import java.util.Iterator;
+import java.util.LinkedHashMap;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Locale;
+import java.util.Map;
+import java.util.HashMap;
+import java.util.Properties;
+import java.util.Set;
+import java.util.SortedSet;
+import java.util.StringTokenizer;
+import java.util.TreeMap;
+
+import gnu.classpath.tools.gjdoc.TemporaryStore;
+import gnu.classpath.tools.gjdoc.GjdocPackageDoc;
+
+import gnu.classpath.tools.doclets.PackageGroup;
+import gnu.classpath.tools.doclets.PackageMatcher;
+import gnu.classpath.tools.doclets.InvalidPackageWildcardException;
+
+import gnu.classpath.tools.doclets.xmldoclet.doctranslet.DocTranslet;
+import gnu.classpath.tools.doclets.xmldoclet.doctranslet.DocTransletOptions;
+
+import gnu.classpath.tools.taglets.AuthorTaglet;
+import gnu.classpath.tools.taglets.VersionTaglet;
+import gnu.classpath.tools.taglets.SinceTaglet;
+import gnu.classpath.tools.taglets.DeprecatedTaglet;
+import gnu.classpath.tools.taglets.GenericTaglet;
+import gnu.classpath.tools.doclets.StandardTaglet;
+
+import gnu.classpath.tools.java2xhtml.Java2xhtml;
+
+import gnu.classpath.tools.IOToolkit;
+import gnu.classpath.tools.FileSystemClassLoader;
+
+/**
+ * A Doclet which retrieves all information presented by the Doclet
+ * API, dumping it to stdout in XML format.
+ *
+ * @author Julian Scheid
+ */
+public class Driver {
+
+ public static final String XMLDOCLET_VERSION = "0.6.1";
+
+ /**
+ * Used for redirecting error messages to <code>/dev/null</code>.
+ */
+ private static class NullErrorReporter implements DocErrorReporter {
+ public void printError(String ignore) {}
+ public void printWarning(String ignore) {}
+ public void printNotice(String ignore) {}
+ }
+
+ /*
+ * Taglet context constants.
+ */
+ private static final int CONTEXT_CONSTRUCTOR = 1;
+ private static final int CONTEXT_FIELD = 2;
+ private static final int CONTEXT_METHOD = 3;
+ private static final int CONTEXT_OVERVIEW = 4;
+ private static final int CONTEXT_PACKAGE = 5;
+ private static final int CONTEXT_TYPE = 6;
+
+ /**
+ * All XML output will go to this stream.
+ */
+ private PrintWriter out;
+
+ /**
+ * How many spaces to indent each XML node level,
+ * i.e. Tab size for output.
+ */
+ private static int indentStep = 1;
+
+ /**
+ * Won't output superfluous spaces if set to true.
+ * If set to false, output will be more legible.
+ */
+ private boolean compress = false;
+
+ /**
+ * Won't output warning messages while fixing
+ * HTML code if set to true.
+ */
+ private boolean noHTMLWarn = false;
+
+ /**
+ * Won't output warning messages when encountering tags
+ * that look like an email address if set to true.
+ */
+ private boolean noEmailWarn = false;
+
+ /**
+ * Will fix HTML if necessary so that each comment
+ * contains valid XML code if set to true. If set
+ * to false, HTML code will not be modified and
+ * instead encapsulated in a CDATA section.
+ */
+ private boolean fixHTML = true;
+
+ /**
+ * User-specified name of the directory where the final version of
+ * the generated files will be written to.
+ *
+ * If no XSLT sheet is given, the XML output will go directly into
+ * this directory. Otherwise, XML output will go to a temporary
+ * directory and XSLT output will go to this directory.
+ */
+ private File targetDirectory = null;
+
+ /**
+ * Directory where XML output will be written to. If no XSLT
+ * sheet was given, this is the target directory specified
+ * by the user. Otherwise, this is a temporary directory.
+ */
+ private File xmlTargetDirectory;
+
+ /**
+ * Contains a number of TargetContexts which describe which XSLT
+ * sheet to apply to the output of this doclet, to what directory
+ * the XSLT output is written, and which postprocess driver to use
+ * to process XSLT output.
+ */
+ private List targets = new ArrayList();
+
+ /**
+ * XML text to include at the end of every generated page. Read
+ * from the file specified on the command line using -bottomnote.
+ * If present, this will be written to the main output file
+ * (index.xml) in node /gjdoc:rootDoc/gjdoc:bottomnote.
+ */
+ private String bottomNote;
+
+ /**
+ * Brief description of the package set. Can be specified on the
+ * command line using -title. This will be written to the main
+ * output file (index.xml) in node
+ * /gjdoc:rootDoc/gjdoc:title. The HTML generating XSLT sheet
+ * uses this for example in window titles.
+ */
+ private String title;
+
+ /**
+ * Path to the directory where temporary files should be stored.
+ * Defaults to system tempdir, but can be overridden by user
+ * with -workpath.
+ */
+ private String workingPath = System.getProperty("java.io.tmpdir");
+
+ /**
+ * Temporary directory created by this doclet where all
+ * temporary files will be stored in. If no temporary
+ * files are needed (i.e. no XSLT postprocessing stage
+ * specified by user), this is <code>null</code>.
+ */
+ private File workingDirectory;
+
+ /**
+ * Whether to deep-copy the doc-files subdirectory.
+ */
+ private boolean docFilesSubdirsEnabled = false;
+
+ /**
+ * Which direct subdirectories of the doc-files directories to exclude.
+ * Set of String.
+ */
+ private Set excludeDocFilesSubDirs = new HashSet();
+
+ /**
+ * Stores the Doclet API RootDoc we are operating on.
+ */
+ private RootDoc rootDoc;
+
+ /**
+ * XML namespace prefix used for all tags, except for HTML
+ * tags copied from Javadoc comments. Excluding colon.
+ */
+ public static final String tagPrefix = "gjdoc";
+
+ /**
+ * Classpath for loading Taglet classes.
+ */
+ private String tagletPath = null;
+
+ /**
+ * The current class that is being processed.
+ * Set in outputClassDoc().
+ */
+ private ClassDoc currentClass;
+
+ /**
+ * The current member that is being processed.
+ * Set in outputMemberDoc().
+ */
+ private MemberDoc currentMember;
+
+ /**
+ * The current constructor/method that is being processed.
+ * Set in outputExecutableMemberDoc().
+ */
+ private ExecutableMemberDoc currentExecMember;
+
+ /**
+ * Mapping from tag type to Taglet for user Taglets specified on
+ * the command line.
+ */
+ private Map tagletMap = new LinkedHashMap();
+
+ /**
+ * Keeps track of the tags mentioned by the user during option
+ * processiong so that an error can be emitted if a tag is
+ * mentioned more than once.
+ */
+ private List mentionedTags = new LinkedList();
+
+ /**
+ * Stores options to be passed to the DocTranslet.
+ */
+ private DocTransletOptions docTransletOptions = new DocTransletOptions();
+
+ /**
+ * Stores the package groups specified in the user
+ * options. Contains objects of type PackageGroup.
+ */
+ private List packageGroups = new LinkedList();
+
+ private HtmlRepairer htmlRepairer;
+
+ public static boolean start(TemporaryStore _rootDocWrapper) {
+ return new Driver().instanceStart((RootDoc)_rootDocWrapper.getAndClear());
+ }
+
+ /**
+ * Official Doclet entry point.
+ */
+ public static boolean start(RootDoc _rootDoc) {
+
+ // Create a new XmlDoclet instance and delegate control.
+ TemporaryStore tstore = new TemporaryStore(_rootDoc);
+ _rootDoc = null;
+ return new Driver().instanceStart((RootDoc)tstore.getAndClear());
+ }
+
+ /**
+ * Output an XML tag describing a com.sun.javadoc.Type object.
+ * Assumes that the tag does not have subtags.
+ *
+ * @param level Level of indentation. Will be multiplied by
+ * <code>indentStep</code> to yield actual amount
+ * of whitespace inserted at start of line.
+ * @param tag Identifier for the XML tag being output.
+ * @param type The Javadoc Type to be output.
+ */
+ protected void outputType(int level, String tag, Type type) {
+ outputType(level, tag, type, true);
+ }
+
+ protected void outputType(int level, String tag, Type type, boolean atomic) {
+
+ boolean isIncluded = false;
+ ClassDoc typeAsClassDoc = type.asClassDoc();
+ String packageName = null;
+ if (null != typeAsClassDoc) {
+ isIncluded = typeAsClassDoc.isIncluded();
+ packageName = typeAsClassDoc.containingPackage().name();
+ }
+ println(level, "<"+tagPrefix+":"+tag + " typename=\""+type.typeName()+"\""+
+ " qualifiedtypename=\""+type.qualifiedTypeName()+"\""
+ +(type.dimension().length()==0?"":" dimension=\""+type.dimension()+"\"")
+ +(isIncluded?" isIncluded=\"true\"" : "")
+ +((null != packageName)?" package=\"" + packageName + "\"" : "")
+ +(atomic?"/":"")+">");
+ }
+
+ protected void outputExecutableMemberDocBody(int level, ExecutableMemberDoc memberDoc) {
+
+ currentExecMember = memberDoc;
+
+ outputMemberDocBody(level, memberDoc);
+
+ Parameter[] parameters = memberDoc.parameters();
+ for (int i=0, ilim=parameters.length; i<ilim; ++i) {
+ Parameter parameter = parameters[i];
+ outputType(level, "parameter name=\""+parameter.name()+"\"", parameter.type());
+ }
+
+ ClassDoc[] exceptions = memberDoc.thrownExceptions();
+ for (int i=0, ilim=exceptions.length; i<ilim; ++i) {
+ ClassDoc exception = exceptions[i];
+ outputType(level, "thrownException", exception);
+ }
+
+ printAtomTag(level, "signature full=\""+memberDoc.signature()+"\" flat=\""+memberDoc.flatSignature()+"\"");
+
+ if (memberDoc.isNative()) {
+ printAtomTag(level, "isNative");
+ }
+
+ if (memberDoc.isSynchronized()) {
+ printAtomTag(level, "isSynchronized");
+ }
+ }
+
+ protected void outputMethodDoc(int level, MethodDoc methodDoc) {
+ println();
+ printOpenTag(level, "methoddoc name=\""+methodDoc.name()+"\"");
+ outputExecutableMemberDocBody(level+1, methodDoc);
+ outputType(level+1, "returns", methodDoc.returnType());
+ printCloseTag(level, "methoddoc");
+ }
+
+ protected void outputMemberDocBody(int level, MemberDoc memberDoc) {
+ currentMember = memberDoc;
+ outputProgramElementDocBody(level, memberDoc);
+ }
+
+ protected void outputFieldDocBody(int level, FieldDoc fieldDoc) {
+ outputType(level, "type", fieldDoc.type());
+ if (fieldDoc.isTransient()) {
+ printAtomTag(level, "isTransient");
+ }
+ if (fieldDoc.isVolatile()) {
+ printAtomTag(level, "isVolatile");
+ }
+ }
+
+ private void outputFieldDoc(int level, FieldDoc fieldDoc) {
+ println();
+ printOpenTag(level, "fielddoc name=\""+fieldDoc.name()+"\"");
+ outputMemberDocBody(level+1, fieldDoc);
+ outputFieldDocBody(level+1, fieldDoc);
+ printCloseTag(level, "fielddoc");
+ }
+
+ protected void outputConstructorDoc(int level, ConstructorDoc constructorDoc) {
+ println();
+ printOpenTag(level, "constructordoc name=\""+constructorDoc.name()+"\"");
+ outputExecutableMemberDocBody(level+1, constructorDoc);
+ printCloseTag(level, "constructordoc");
+ }
+
+ protected void outputSuperInterfacesRec(int level, ClassDoc classDoc) {
+ if (null!=classDoc) {
+ ClassDoc[] interfaces = classDoc.interfaces();
+ if (null != interfaces) {
+ for (int i=0, ilim=interfaces.length; i<ilim; ++i) {
+ outputType(level, "superimplements", interfaces[i]);
+ }
+ }
+ outputSuperInterfacesRec(level, classDoc.superclass());
+ }
+ }
+
+ protected void outputClassDocSummary(ClassDoc classDoc) {
+ println();
+ printOpenTag(1, "classdoc name=\""+classDoc.name()+"\" qualifiedtypename=\""+classDoc.qualifiedName()+"\" isIncluded=\"true\"");
+ if (null!=classDoc.superclass()) {
+ outputType(2, "superclass", classDoc.superclass());
+ }
+
+ ClassDoc[] interfaces = classDoc.interfaces();
+ for (int i=0, ilim=interfaces.length; i<ilim; ++i) {
+ outputType(2, "implements", interfaces[i]);
+ }
+ outputSuperInterfacesRec(2, classDoc.superclass());
+
+ printAtomTag(2, "containingPackage name=\""+classDoc.containingPackage().name()+"\"");
+ if (classDoc.isError()) {
+ printAtomTag(2, "isError");
+ }
+ if (classDoc.isException()) {
+ printAtomTag(2, "isException");
+ }
+ if (classDoc.isInterface()) {
+ printAtomTag(2, "isInterface");
+ }
+ if (classDoc.isOrdinaryClass()) {
+ printAtomTag(2, "isOrdinaryClass");
+ }
+
+ printCloseTag(1, "classdoc");
+ }
+
+ protected void outputPackageDoc(PackageDoc packageDoc) {
+ println();
+ printOpenTag(1, "packagedoc name=\""+packageDoc.name()+"\"");
+ if (packageDoc.firstSentenceTags().length > 0) {
+ printOpenTag(2, "firstSentenceTags", false);
+ outputTags(3, packageDoc.firstSentenceTags(), true, CONTEXT_PACKAGE);
+ printCloseTag(0, "firstSentenceTags");
+ printOpenTag(2, "inlineTags", false);
+ outputTags(3, packageDoc.inlineTags(), true, CONTEXT_PACKAGE);
+ printCloseTag(0, "inlineTags");
+ }
+
+ if (packageDoc.tags().length > 0) {
+ printOpenTag(2, "tags");
+ outputTags(3, packageDoc.tags(), true, CONTEXT_PACKAGE);
+ printCloseTag(2, "tags");
+ }
+
+ if (packageDoc.seeTags().length > 0) {
+ printOpenTag(2, "seeTags");
+ outputTags(3, packageDoc.seeTags(), true, CONTEXT_PACKAGE);
+ printCloseTag(2, "seeTags");
+ }
+
+ ClassDoc[] allClasses = (ClassDoc[]) packageDoc.allClasses().clone();
+ Arrays.sort(allClasses);
+
+ if (false) {
+ for (int i = 0, ilim = allClasses.length; i < ilim; ++ i) {
+ printAtomTag(2, "containsClass qualifiedtypename=\""+allClasses[i].qualifiedTypeName()+"\"");
+ }
+ }
+
+ printCloseTag(1, "packagedoc");
+ }
+
+ protected void outputClassDoc(ClassDoc classDoc) throws IOException {
+
+ currentClass = classDoc;
+
+ println();
+ printOpenTag(1, "classdoc xmlns=\"http://www.w3.org/TR/REC-html40\" xmlns:"+tagPrefix+"=\"http://www.gnu.org/software/cp-tools/gjdocxml\" name=\""+classDoc.name()+"\" qualifiedtypename=\""+classDoc.qualifiedName()+"\"");
+
+ ClassDoc[] interfaces = classDoc.interfaces();
+ for (int i=0, ilim=interfaces.length; i<ilim; ++i) {
+ outputType(2, "implements", interfaces[i]);
+ }
+ outputSuperInterfacesRec(2, classDoc.superclass());
+
+ outputProgramElementDocBody(2, classDoc);
+ if (classDoc.isAbstract())
+ printAtomTag(2, "isAbstract");
+ if (classDoc.isSerializable())
+ printAtomTag(2, "isSerializable");
+ if (classDoc.isExternalizable())
+ printAtomTag(2, "isExternalizable");
+ if (classDoc.definesSerializableFields()) {
+ printAtomTag(2, "definesSerializableFields");
+ }
+
+ ConstructorDoc[] constructors = classDoc.constructors();
+ for (int i=0, ilim=constructors.length; i<ilim; ++i) {
+ outputConstructorDoc(2, constructors[i]);
+ }
+
+ MethodDoc[] methods = classDoc.methods();
+ for (int i=0, ilim=methods.length; i<ilim; ++i) {
+ outputMethodDoc(2, methods[i]);
+ }
+
+ FieldDoc[] fields = classDoc.fields();
+ for (int i=0, ilim=fields.length; i<ilim; ++i) {
+ outputFieldDoc(2, fields[i]);
+ }
+
+ if (classDoc.serializableFields().length > 0) {
+ printOpenTag(2, "serializableFields");
+
+ FieldDoc[] sfields = classDoc.serializableFields();
+ for (int i=0, ilim=sfields.length; i<ilim; ++i) {
+ outputFieldDoc(2, sfields[i]);
+ }
+ printCloseTag(2, "serializableFields");
+ }
+
+ Java2xhtml java2xhtml = new Java2xhtml();
+ Properties properties = new Properties();
+ properties.setProperty("isCodeSnippet", "true");
+ properties.setProperty("hasLineNumbers", "true");
+ java2xhtml.setProperties(properties);
+
+ if (null == classDoc.containingClass() && docTransletOptions.linksource) {
+ printOpenTag(2, "source");
+ StringWriter sourceBuffer = new StringWriter();
+ File sourceFile = new File(((GjdocPackageDoc)classDoc.containingPackage()).packageDirectory(),
+ classDoc.name() + ".java");
+ FileReader sourceReader = new FileReader(sourceFile);
+ IOToolkit.copyStream(sourceReader, sourceBuffer);
+ print(java2xhtml.makeHTML(sourceBuffer.getBuffer(), sourceFile.getName()));
+ printCloseTag(2, "source");
+ }
+
+ ClassDoc superclassDoc = classDoc.superclass();
+ while (superclassDoc != null) {
+ outputType(2, "superclass", superclassDoc, false);
+
+ // FIXME: remove the following after adjusting the XSLT sheets:
+ printAtomTag(3, "containingPackage name=\"" + superclassDoc.containingPackage().name() + "\"");
+
+ MethodDoc[] superMethods = superclassDoc.methods();
+ if (null != superMethods) {
+ for (int i=0, ilim=superMethods.length; i<ilim; ++i) {
+ printAtomTag(3, "methoddoc name=\"" + superMethods[i].name() + "\" signature=\"" + superMethods[i].signature() + "\"");
+ }
+ }
+
+ FieldDoc[] superFields = superclassDoc.fields();
+ if (null != superFields) {
+ for (int i=0, ilim=superFields.length; i<ilim; ++i) {
+ printAtomTag(3, "fielddoc name=\"" + superFields[i].name() + "\"");
+ }
+ }
+ printCloseTag(2, "superclass");
+
+ superclassDoc = superclassDoc.superclass();
+ }
+
+ outputUsage(classDoc, 2);
+
+ printCloseTag(1, "classdoc");
+
+ currentClass = null;
+ currentMember = null;
+ currentExecMember = null;
+ }
+
+ protected int outputHeritageOpen(int level, ClassDoc classDoc) {
+
+ ClassDoc superClassDoc = classDoc.superclass();
+ if (null != superClassDoc) {
+ level = outputHeritageOpen(level, superClassDoc);
+ ++ level;
+ }
+ outputType(level, "heritage", classDoc, false);
+ return level;
+ }
+
+ protected void outputHeritageClose(int level, ClassDoc classDoc) {
+
+ ClassDoc superClassDoc = classDoc.superclass();
+ if (null != superClassDoc) {
+ outputHeritageClose(level + 1, superClassDoc);
+ }
+ printCloseTag(level, "heritage");
+ }
+
+ protected void outputDocBody(int level, Doc doc) {
+
+ int context = CONTEXT_TYPE;
+
+ if (doc.isClass()) {
+ printAtomTag(level, "isClass");
+
+ ClassDoc classDoc = (ClassDoc)doc;
+ ClassDoc[] classes = rootDoc.classes();
+ for (int i=0, ilim=classes.length; i<ilim; ++i) {
+ if (classes[i].superclass() == classDoc) {
+ outputType(level, "extended-by", classes[i]);
+ }
+ }
+
+ outputHeritageOpen(level, classDoc);
+ outputHeritageClose(level, classDoc);
+ }
+ if (doc.isConstructor()) {
+ printAtomTag(level, "isConstructor");
+ context = CONTEXT_CONSTRUCTOR;
+ }
+ if (doc.isError()) {
+ printAtomTag(level, "isError");
+ }
+ if (doc.isException()) {
+ printAtomTag(level, "isException");
+ }
+ if (doc.isField()) {
+ printAtomTag(level, "isField");
+ context = CONTEXT_FIELD;
+ }
+ if (doc.isIncluded()) {
+ printAtomTag(level, "isIncluded");
+ }
+ if (doc.isInterface()) {
+ printAtomTag(level, "isInterface");
+
+ ClassDoc classDoc = (ClassDoc)doc;
+ ClassDoc[] classes = rootDoc.classes();
+ for (int i=0, ilim=classes.length; i<ilim; ++i) {
+ ClassDoc[] implementedInterfaces = classes[i].interfaces();
+ for (int j=0; j<implementedInterfaces.length; ++j) {
+ if (implementedInterfaces[j] == classDoc) {
+ if (classDoc.isInterface()) {
+ outputType(level, "subinterface", classes[i]);
+ }
+ else {
+ outputType(level, "implemented-by", classes[i]);
+ }
+ break;
+ }
+ }
+ }
+ }
+ if (doc.isMethod()) {
+ printAtomTag(level, "isMethod");
+ context = CONTEXT_METHOD;
+ }
+ if (doc.isOrdinaryClass()) {
+ printAtomTag(level, "isOrdinaryClass");
+ }
+
+ if (doc.inlineTags().length > 0) {
+ printOpenTag(level, "inlineTags", false);
+ outputTags(level+1, doc.inlineTags(), true, context);
+ printCloseTag(0, "inlineTags");
+ }
+
+ if (doc.firstSentenceTags().length > 0) {
+ printOpenTag(level, "firstSentenceTags", false);
+ outputTags(level+1, doc.firstSentenceTags(), true, context);
+ printCloseTag(0, "firstSentenceTags");
+ }
+
+ if (doc.tags().length > 0) {
+ printOpenTag(level, "tags");
+ outputTaglets(level+1, doc.tags(), true, context);
+ printCloseTag(level, "tags");
+ }
+
+ if (doc.seeTags().length > 0) {
+ printOpenTag(level, "seeTags");
+ outputTags(level+1, doc.seeTags(), true, context);
+ printCloseTag(level, "seeTags");
+ }
+
+ SourcePosition position = doc.position();
+ if (null != position) {
+ printAtomTag(level, "position file=\"" + position.file().getAbsolutePath() + "\" line=\"" + position.line() + "\" column=\"" + position.column() + "\"");
+ }
+ }
+
+ protected void outputProgramElementDocBody(int level, ProgramElementDoc programElementDoc) {
+ outputDocBody(level, programElementDoc);
+ printAtomTag(level, "containingPackage name=\""+programElementDoc.containingPackage().name()+"\"");
+ if (null!=programElementDoc.containingClass()) {
+ outputType(level, "containingClass", programElementDoc.containingClass());
+ }
+ String access;
+ if (programElementDoc.isPublic())
+ access="public";
+ else if (programElementDoc.isProtected())
+ access="protected";
+ else if (programElementDoc.isPrivate())
+ access="private";
+ else if (programElementDoc.isPackagePrivate())
+ access="package";
+ else
+ throw new RuntimeException("Huh? "+programElementDoc+" is neither public, protected, private nor package protected.");
+ printAtomTag(level, "access scope=\""+access+"\"");
+ if (programElementDoc.isFinal())
+ printAtomTag(level, "isFinal");
+ if (programElementDoc.isStatic())
+ printAtomTag(level, "isStatic");
+ }
+
+ protected void outputTags(int level, Tag[] tags, boolean descend, int context) {
+
+ for (int i=0; i<tags.length; ++i) {
+ outputTag(tags[i], level, descend, context, i == tags.length-1);
+ }
+ }
+
+ protected void outputTag(Tag tag, int level, boolean descend, int context, boolean lastTag) {
+
+ if (!"Text".equals(tag.name())) {
+ printOpenTag(0 /* don't introduce additional whitespace */,
+ "tag kind=\""+tag.kind()+"\" name=\""+tag.name()+"\"", false);
+ }
+ if (tag instanceof ThrowsTag) {
+ ThrowsTag throwsTag = (ThrowsTag)tag;
+ if (null!=throwsTag.exception()) {
+ outputType(level+1, "exception", throwsTag.exception());
+ }
+ else {
+ StringBuffer sb = new StringBuffer("Exception ");
+ sb.append(throwsTag.exceptionName());
+ sb.append(" not found in ");
+ if (currentExecMember instanceof MethodDoc) {
+ MethodDoc m = (MethodDoc)currentExecMember;
+ sb.append(m.returnType().typeName());
+ sb.append(m.returnType().dimension());
+ sb.append(' ');
+ }
+ sb.append(currentClass.qualifiedName());
+ sb.append('.');
+ sb.append(currentExecMember.name());
+ sb.append('(');
+ Parameter[] params = currentExecMember.parameters();
+ for (int j=0; j < params.length; j++) {
+ sb.append(params[j].type().typeName());
+ sb.append(params[j].type().dimension());
+ sb.append(' ');
+ sb.append(params[j].name());
+ if (j != params.length-1)
+ sb.append(", ");
+ }
+ sb.append(')');
+ printWarning(sb.toString());
+
+ printAtomTag(level+1, "exception typename=\""+throwsTag.exceptionName()+"\"");
+ }
+ }
+ else if (tag instanceof ParamTag) {
+ ParamTag paramTag = (ParamTag)tag;
+ printAtomTag(level+1, "parameter name=\""+paramTag.parameterName()+"\"");
+ }
+
+ if (null != tag.text()) {
+ //printOpenTag(level+1, "text", false);
+ if (fixHTML) {
+ print(htmlRepairer.getWellformedHTML(tag.text()));
+ }
+ else {
+ print("<![CDATA["+cdata(tag.text())+"]]>");
+ }
+ //printCloseTag(0 /* don't introduce additional whitespace */, "text");
+ }
+ else {
+ printWarning("Tag got null text: "+tag);
+ }
+
+ if ((descend && ("@throws".equals(tag.name()) || "@param".equals(tag.name()))) || "@deprecated".equals(tag.name())) {
+ if (tag.firstSentenceTags().length>0) {
+ printOpenTag(level+1, "firstSentenceTags", false);
+ outputTags(level+2, tag.firstSentenceTags(), false, context);
+ printCloseTag(0, "firstSentenceTags");
+ }
+
+ if (tag.inlineTags().length>0) {
+ printOpenTag(level+1, "inlineTags", false);
+ outputTags(level+2, tag.firstSentenceTags(), false, context);
+ printCloseTag(0, "inlineTags");
+ }
+ }
+
+ if (fixHTML && lastTag) {
+ String terminateText = htmlRepairer.terminateText();
+ if (null != terminateText && terminateText.length() > 0) {
+ print(terminateText);
+ }
+ }
+
+ if (!"Text".equals(tag.name())) {
+
+ Taglet inlineTaglet = (Taglet)tagletMap.get(tag.name().substring(1));
+ if (null != inlineTaglet && inlineTaglet.isInlineTag()) {
+ printOpenTag(0, "inlineTagletText", false);
+ print(inlineTaglet.toString(tag));
+ printCloseTag(0, "inlineTagletText");
+ }
+
+ printCloseTag(0, "tag", false);
+ }
+ }
+
+ void outputTaglets(int level, Tag[] tags, boolean descend, int context)
+ {
+ for (Iterator it = tagletMap.keySet().iterator(); it.hasNext(); ) {
+ String tagName = (String)it.next();
+ Object o = tagletMap.get(tagName);
+ Taglet taglet = (Taglet)o;
+
+ if (!taglet.isInlineTag()
+ && ((context != CONTEXT_CONSTRUCTOR || taglet.inConstructor())
+ || (context != CONTEXT_FIELD || taglet.inField())
+ || (context != CONTEXT_METHOD || taglet.inMethod())
+ || (context != CONTEXT_OVERVIEW || taglet.inOverview())
+ || (context != CONTEXT_PACKAGE || taglet.inPackage())
+ || (context != CONTEXT_TYPE || taglet.inType()))) {
+
+ List tagsOfThisType = new ArrayList();
+ for (int i=0, ilim=tags.length; i<ilim; ++i) {
+ if (tags[i].name().substring(1).equals(tagName)) {
+ tagsOfThisType.add(tags[i]);
+ }
+ }
+
+ if (!tagsOfThisType.isEmpty()) {
+ Tag[] tagletTags = (Tag[])tagsOfThisType.toArray(new Tag[tagsOfThisType.size()]);
+ if (taglet instanceof StandardTaglet) {
+ Iterator tagIterator = tagsOfThisType.iterator();
+ while (tagIterator.hasNext()) {
+ Tag tag = (Tag)tagIterator.next();
+ outputTag(tag, level, descend, context, !tagIterator.hasNext());
+ }
+ }
+ else {
+ String tagletString = taglet.toString(tagletTags);
+ if (null != tagletString) {
+ printOpenTag(0, "tag name=\"" + tagName + "\" taglet-generated=\"true\"");
+ if (fixHTML) {
+ print(htmlRepairer.getWellformedHTML(tagletString));
+ print(htmlRepairer.terminateText());
+ }
+ else {
+ print("<![CDATA["+cdata(tagletString)+"]]>");
+ }
+ printCloseTag(0, "tag", false);
+ }
+ }
+ }
+ }
+ }
+ }
+
+ /**
+ * Inofficial entry point. We got an instance here.
+ */
+ protected boolean instanceStart(RootDoc _rootDoc) {
+
+ this.rootDoc = _rootDoc;
+ _rootDoc = null;
+
+ boolean xmlOnly = true;
+
+ // Set the default Taglet order
+
+ registerTaglet(new VersionTaglet());
+ registerTaglet(new AuthorTaglet());
+ //registerTaglet(new SinceTaglet());
+ registerTaglet(new StandardTaglet("deprecated"));
+ registerTaglet(new StandardTaglet("see"));
+ registerTaglet(new StandardTaglet("param"));
+
+ // Set the built-in Taglet filter
+
+ AuthorTaglet.setTagletEnabled(false);
+ VersionTaglet.setTagletEnabled(false);
+ SinceTaglet.setTagletEnabled(true);
+ DeprecatedTaglet.setTagletEnabled(true);
+
+ try {
+ {
+
+ // Process command line options passed through to this doclet
+
+ TargetContext targetContext = null;
+
+ TargetContext htmlTargetContext
+ = new TargetContext(DocTranslet.fromClasspath("/doctranslets/html/gjdoc.xsl"),
+ targetDirectory);
+
+ for (int i=0, ilim=rootDoc.options().length; i<ilim; ++i) {
+
+ String[] option = rootDoc.options()[i];
+ String optionTag = option[0];
+
+ if ("-d".equals(optionTag)) {
+ if (null == targetDirectory) {
+ targetDirectory = new File(option[1]);
+ }
+ if (null != targetContext) {
+ targetContext.setTargetDirectory(targetDirectory);
+ }
+ }
+
+ else if ("-nofixhtml".equals(optionTag)) {
+ fixHTML = false;
+ printError("-nofixhtml currently not supported.");
+ return false;
+ }
+ else if ("-compress".equals(optionTag)) {
+ compress = true;
+ }
+ else if ("-nohtmlwarn".equals(optionTag)) {
+ noHTMLWarn = true;
+ }
+ else if ("-noemailwarn".equals(optionTag)) {
+ noEmailWarn = true;
+ }
+ else if ("-indentstep".equals(optionTag)) {
+ indentStep = Integer.parseInt(option[1]);
+ }
+ else if ("-doctranslet".equals(optionTag)) {
+ targets.add(targetContext = new TargetContext(DocTranslet.fromJarFile(new File(option[1])),
+ targetDirectory));
+ }
+ else if ("-genhtml".equals(optionTag)) {
+ htmlTargetContext.setTargetDirectory(targetDirectory);
+ targets.add(targetContext = htmlTargetContext);
+ xmlOnly = false;
+ }
+ else if ("-geninfo".equals(optionTag)) {
+ targetContext
+ = new TargetContext(DocTranslet.fromClasspath("/doctranslets/info/gengj.xsl"),
+ targetDirectory);
+ targets.add(targetContext);
+ if (!fixHTML) {
+ printNotice("NOTE: -geninfo implies -fixhtml.");
+ fixHTML = true;
+ }
+ xmlOnly = false;
+ }
+ else if ("-gendocbook".equals(optionTag)) {
+ targetContext = new TargetContext(DocTranslet.fromClasspath("/doctranslets/docbook/gengj.xsl"),
+ targetDirectory);
+ targets.add(targetContext);
+ if (!fixHTML) {
+ printNotice("NOTE: -gendocbook implies -fixhtml.");
+ fixHTML = true;
+ }
+ }
+ else if ("-genpdf".equals(optionTag)) {
+ targetContext
+ = new TargetContext(DocTranslet.fromClasspath("/doctranslets/docbook/gengj.xsl"),
+ targetDirectory);
+ /** "gnu.classpath.tools.doclets.xmldoclet.DocBookPostprocessor") **/
+ targets.add(targetContext);
+ if (!fixHTML) {
+ printNotice("NOTE: -genpdf implies -fixhtml.");
+ fixHTML = true;
+ }
+ }
+ else if ("-xmlonly".equals(optionTag)) {
+ xmlOnly = true;
+ }
+ else if ("-bottomnote".equals(optionTag)) {
+
+ FileReader reader = new FileReader(option[1]);
+ StringWriter writer = new StringWriter();
+ char[] buf = new char[256];
+ int nread;
+ while ((nread = reader.read(buf)) >= 0) {
+ writer.write(buf, 0, nread);
+ }
+ writer.flush();
+ bottomNote = writer.toString();
+ writer.close();
+ reader.close();
+ }
+ else if ("-title".equals(optionTag)) {
+
+ title = option[1];
+ }
+ else if ("-workpath".equals(optionTag)) {
+
+ workingPath = option[1];
+ }
+ else if ("-tagletpath".equals(optionTag)) {
+
+ if (null == tagletPath) {
+ tagletPath = option[1];
+ }
+ else {
+ tagletPath = tagletPath + File.pathSeparator + option[1];
+ }
+ }
+ else if ("-taglet".equals(optionTag)) {
+
+ boolean tagletLoaded = false;
+
+ String useTagletPath = this.tagletPath;
+ if (null == useTagletPath) {
+ useTagletPath = System.getProperty("java.class.path");
+ }
+
+ try {
+ Class tagletClass;
+ try {
+ tagletClass
+ = new FileSystemClassLoader(useTagletPath).loadClass(option[1]);
+ }
+ catch (ClassNotFoundException e) {
+ // If not found on specified tagletpath, try default classloader
+ tagletClass
+ = Class.forName(option[1]);
+ }
+ Method registerTagletMethod
+ = tagletClass.getDeclaredMethod("register", new Class[] { java.util.Map.class });
+
+ if (!registerTagletMethod.getReturnType().equals(Void.TYPE)) {
+ printError("Taglet class '" + option[1] + "' found, but register method doesn't return void.");
+ }
+ else if (registerTagletMethod.getExceptionTypes().length > 0) {
+ printError("Taglet class '" + option[1] + "' found, but register method contains throws clause.");
+ }
+ else if ((registerTagletMethod.getModifiers() & (Modifier.STATIC | Modifier.PUBLIC | Modifier.ABSTRACT)) != (Modifier.STATIC | Modifier.PUBLIC)) {
+ printError("Taglet class '" + option[1] + "' found, but register method isn't public static, or is abstract..");
+ }
+ else {
+ Map tempMap = new HashMap();
+ registerTagletMethod.invoke(null, new Object[] { tempMap });
+ tagletLoaded = true;
+ String name = (String)tempMap.keySet().iterator().next();
+ Taglet taglet = (Taglet)tempMap.get(name);
+ tagletMap.put(name, taglet);
+ mentionedTags.add(taglet);
+ }
+ }
+ catch (NoSuchMethodException e) {
+ printError("Taglet class '" + option[1] + "' found, but doesn't contain the register method.");
+ }
+ catch (SecurityException e) {
+ printError("Taglet class '" + option[1] + "' cannot be loaded: " + e.getMessage());
+ }
+ catch (InvocationTargetException e) {
+ printError("Taglet class '" + option[1] + "' found, but register method throws exception: " + e.toString());
+ }
+ catch (IllegalAccessException e) {
+ printError("Taglet class '" + option[1] + "' found, but there was a problem when accessing the register method: " + e.toString());
+ }
+ catch (IllegalArgumentException e) {
+ printError("Taglet class '" + option[1] + "' found, but there was a problem when accessing the register method: " + e.toString());
+ }
+ catch (ClassNotFoundException e) {
+ printError("Taglet class '" + option[1] + "' cannot be found.");
+ }
+ if (!tagletLoaded) {
+ return false;
+ }
+ }
+ else if ("-author".equals(optionTag)) {
+ AuthorTaglet.setTagletEnabled(true);
+ }
+ else if ("-version".equals(optionTag)) {
+ VersionTaglet.setTagletEnabled(true);
+ }
+ else if ("-nosince".equals(optionTag)) {
+ SinceTaglet.setTagletEnabled(false);
+ }
+ else if ("-nodeprecated".equals(optionTag)) {
+ DeprecatedTaglet.setTagletEnabled(false);
+ }
+ else if ("-authormail".equals(optionTag)) {
+
+ if ("no-replace".equalsIgnoreCase(option[1])) {
+ AuthorTaglet.setEmailReplacementType(AuthorTaglet.EmailReplacement.NO_REPLACEMENT);
+ }
+ else if ("mailto-name".equalsIgnoreCase(option[1])) {
+ AuthorTaglet.setEmailReplacementType(AuthorTaglet.EmailReplacement.MAILTO_NAME);
+ }
+ else if ("name-mailto-address".equalsIgnoreCase(option[1])) {
+ AuthorTaglet.setEmailReplacementType(AuthorTaglet.EmailReplacement.NAME_MAILTO_ADDRESS);
+ }
+ else if ("name-mangled-address".equalsIgnoreCase(option[1])) {
+ AuthorTaglet.setEmailReplacementType(AuthorTaglet.EmailReplacement.NAME_MANGLED_ADDRESS);
+ }
+ else {
+ printError("Invalid value for option '-authortag-email'. Allowed values are:"
+ + " no-replace, mailto-name, name-mailto-address, name-mangled-address.");
+ return false;
+ }
+ }
+ else if ("-mailmangledot".equals(optionTag)) {
+ AuthorTaglet.setDotReplacement(option[1]);
+ }
+ else if ("-mailmangleat".equals(optionTag)) {
+ AuthorTaglet.setAtReplacement(option[1]);
+ }
+ else if ("-docfilessubdirs".equals(optionTag)) {
+ docFilesSubdirsEnabled = true;
+ }
+ else if ("-excludedocfilessubdir".equals(optionTag)) {
+ StringTokenizer st = new StringTokenizer(option[1]);
+ while (st.hasMoreTokens()) {
+ excludeDocFilesSubDirs.add(st.nextToken());
+ }
+ }
+ else if ("-nonavbar".equals(optionTag)) {
+ docTransletOptions.nonavbar = true;
+ }
+ else if ("-noindex".equals(optionTag)) {
+ docTransletOptions.noindex = true;
+ }
+ else if ("-notree".equals(optionTag)) {
+ docTransletOptions.notree = true;
+ }
+ else if ("-nocomment".equals(optionTag)) {
+ docTransletOptions.nocomment = true;
+ }
+ else if ("-nohelp".equals(optionTag)) {
+ docTransletOptions.nohelp = true;
+ }
+ else if ("-splitindex".equals(optionTag)) {
+ docTransletOptions.splitindex = true;
+ }
+ else if ("-linksource".equals(optionTag)) {
+ docTransletOptions.linksource = true;
+ }
+ else if ("-windowtitle".equals(optionTag)) {
+ docTransletOptions.windowtitle = option[1];
+ }
+ else if ("-helpfile".equals(optionTag)) {
+ docTransletOptions.helpfile = new File(option[1]).toURL().toString();
+ }
+ else if ("-stylesheetfile".equals(optionTag)) {
+ docTransletOptions.stylesheetfile = new File(option[1]).toURL().toString();
+ }
+ else if ("-header".equals(optionTag)) {
+ docTransletOptions.header = option[1];
+ }
+ else if ("-footer".equals(optionTag)) {
+ docTransletOptions.footer = option[1];
+ }
+ else if ("-bottom".equals(optionTag)) {
+ docTransletOptions.bottom = option[1];
+ }
+ else if ("-doctitle".equals(optionTag)) {
+ docTransletOptions.doctitle = option[1];
+ }
+ else if ("-nodeprecatedlist".equals(optionTag)) {
+ docTransletOptions.nodeprecatedlist = true;
+ }
+ else if ("-uses".equals(optionTag)) {
+ docTransletOptions.uses = true;
+ }
+ else if ("-group".equals(optionTag)) {
+ if (!processGroupOption(option[1], option[2])) {
+ printError("Invalid package wildcard list in -group option \"" + option[1] + "\" " + option[2]);
+ return false;
+ }
+ }
+ else if ("-tag".equals(optionTag)) {
+ String tagSpec = option[1];
+ boolean validTagSpec = false;
+ int ndx1 = tagSpec.indexOf(':');
+ if (ndx1 < 0) {
+ Taglet taglet = (Taglet)tagletMap.get(tagSpec);
+ if (null == taglet) {
+ printError("There is no standard tag '" + tagSpec + "'.");
+ }
+ else {
+ if (mentionedTags.contains(taglet)) {
+ printError("Tag '" + tagSpec + "' has been added or moved before.");
+ }
+ else {
+ mentionedTags.add(taglet);
+
+ // re-append taglet
+ tagletMap.remove(tagSpec);
+ tagletMap.put(tagSpec, taglet);
+ }
+ }
+ }
+ else {
+ int ndx2 = tagSpec.indexOf(':', ndx1 + 1);
+ if (ndx2 > ndx1 && ndx2 < tagSpec.length() - 1) {
+ String tagName = tagSpec.substring(0, ndx1);
+ String tagHead = null;
+ if (tagSpec.charAt(ndx2 + 1) == '\"') {
+ if (tagSpec.charAt(tagSpec.length() - 1) == '\"') {
+ tagHead = tagSpec.substring(ndx2 + 2, tagSpec.length() - 1);
+ validTagSpec = true;
+ }
+ }
+ else {
+ tagHead = tagSpec.substring(ndx2 + 1);
+ validTagSpec = true;
+ }
+
+ boolean tagScopeOverview = false;
+ boolean tagScopePackages = false;
+ boolean tagScopeTypes = false;
+ boolean tagScopeConstructors = false;
+ boolean tagScopeMethods = false;
+ boolean tagScopeFields = false;
+ boolean tagDisabled = false;
+
+ tag_option_loop:
+ for (int n=ndx1+1; n<ndx2; ++n) {
+ switch (tagSpec.charAt(n)) {
+ case 'X':
+ tagDisabled = true;
+ break;
+ case 'a':
+ tagScopeOverview = true;
+ tagScopePackages = true;
+ tagScopeTypes = true;
+ tagScopeConstructors = true;
+ tagScopeMethods = true;
+ tagScopeFields = true;
+ break;
+ case 'o':
+ tagScopeOverview = true;
+ break;
+ case 'p':
+ tagScopePackages = true;
+ break;
+ case 't':
+ tagScopeTypes = true;
+ break;
+ case 'c':
+ tagScopeConstructors = true;
+ break;
+ case 'm':
+ tagScopeMethods = true;
+ break;
+ case 'f':
+ tagScopeFields = true;
+ break;
+ default:
+ validTagSpec = false;
+ break tag_option_loop;
+ }
+ }
+
+ if (validTagSpec) {
+ GenericTaglet taglet
+ = new GenericTaglet(tagName,
+ tagHead,
+ tagScopeOverview,
+ tagScopePackages,
+ tagScopeTypes,
+ tagScopeConstructors,
+ tagScopeMethods,
+ tagScopeFields);
+ taglet.setTagletEnabled(!tagDisabled);
+ taglet.register(tagletMap);
+ mentionedTags.add(taglet);
+ }
+ }
+ }
+ if (!validTagSpec) {
+ printError("Value for option -tag must be in format \"<tagname>:Xaoptcmf:<taghead>\".");
+ }
+ }
+ }
+
+ // Use current directory if target directory hasn't been set.
+ if (null == targetDirectory) {
+ targetDirectory = new File(System.getProperty("user.dir"));
+ }
+ if (null != targetContext) {
+ targetContext.setTargetDirectory(targetDirectory);
+ }
+
+ // It is illegal to specify targets AND -xmlonly.
+
+ if (xmlOnly && targets.size() > 0) {
+
+ printError("You can only specify one of -xmlonly and a target format.");
+ return false;
+ }
+
+ // If no target was specified and XML only was not
+ // requested, use HTML as default target.
+
+ if (!xmlOnly && targets.size() == 0) {
+ targets.add(targetContext = htmlTargetContext);
+ }
+
+ // Set the same target directory for all output.
+
+ // FIXME: Allow separate target directories for different
+ // output formats.
+
+ for (Iterator it = targets.iterator(); it.hasNext(); ) {
+ TargetContext t = (TargetContext)it.next();
+ t.setTargetDirectory(targetDirectory);
+ }
+
+ // Create temporary directory if necessary
+
+ if (xmlOnly) {
+
+ xmlTargetDirectory = targetDirectory;
+ }
+ else {
+
+ File workingTopDirectory = new File(workingPath);
+
+ workingDirectory = new File(workingTopDirectory, "gjdoc.tmp."+System.currentTimeMillis());
+
+ if (!workingDirectory.mkdir()) {
+ printError("Cannot create temporary directory at "+System.getProperty("java.io.tmpdir"));
+ return false;
+ }
+
+ File xmlTempDirectory = new File(workingDirectory, "xmloutput");
+
+ if (!xmlTempDirectory.mkdir()) {
+ printError("Cannot create temporary directory for XML output at "+System.getProperty("java.io.tmpdir"));
+ return false;
+ }
+
+ xmlTargetDirectory = xmlTempDirectory;
+ }
+
+ // Create target directory if necessary
+
+ if (!targetDirectory.exists()) {
+ printNotice("Creating destination directory: \""
+ + targetDirectory + "\"");
+ if (!targetDirectory.mkdirs()) {
+ printError("Failed to create destination directory \""
+ + targetDirectory + "\"");
+ return false;
+ }
+ }
+
+ // Check for deprecation
+
+ boolean hasDeprecatedClasses = false;
+ boolean hasDeprecatedInterfaces = false;
+ boolean hasDeprecatedExceptions = false;
+ boolean hasDeprecatedErrors = false;
+ boolean hasDeprecatedMethods = false;
+ boolean hasDeprecatedFields = false;
+
+ {
+ ClassDoc[] classes = rootDoc.classes();
+ for (int i = 0, ilim = classes.length; i < ilim; ++ i) {
+ ClassDoc c = classes[i];
+ Tag[] deprecatedTags = c.tags("deprecated");
+ if (null != deprecatedTags && 0 != deprecatedTags.length) {
+ if (c.isInterface()) {
+ hasDeprecatedInterfaces = true;
+ }
+ else if (c.isException()) {
+ hasDeprecatedExceptions = true;
+ }
+ else if (c.isError()) {
+ hasDeprecatedErrors = true;
+ }
+ else /*if (c.isOrdinaryClass())*/ {
+ hasDeprecatedClasses = true;
+ }
+ }
+
+ MethodDoc[] methods = c.methods();
+ for (int j = 0, jlim = methods.length; j < jlim; ++ j) {
+ MethodDoc m = methods[j];
+ deprecatedTags = m.tags("deprecated");
+ if (null != deprecatedTags && 0 != deprecatedTags.length) {
+ hasDeprecatedMethods = true;
+ }
+ }
+
+ FieldDoc[] fields = c.fields();
+ for (int j = 0, jlim = fields.length; j < jlim; ++ j) {
+ FieldDoc f = fields[j];
+ deprecatedTags = f.tags("deprecated");
+ if (null != deprecatedTags && 0 != deprecatedTags.length) {
+ hasDeprecatedFields = true;
+ }
+ }
+ }
+ }
+
+ htmlRepairer = new HtmlRepairer(rootDoc, noHTMLWarn, noEmailWarn,
+ currentClass, currentMember,
+ false);
+
+ collectUsage();
+
+ // Begin XML generation
+
+ printNotice("Writing XML Index file...");
+
+ // Assign output stream
+
+ setTargetFile("index.xml");
+
+ // Output XML document header
+
+ println(0, "<?xml version=\"1.0\"?>");
+ println("<!DOCTYPE gjdoc SYSTEM \"dtd/gjdoc.dtd\">");
+ println();
+ printOpenTag(0, "rootdoc xmlns=\"http://www.w3.org/TR/REC-html40\" xmlns:gjdoc=\"http://www.gnu.org/software/cp-tools/gjdocxml\"");
+
+ println();
+ println(1, "<!-- Tags from overview page, if available -->");
+
+ if (rootDoc.firstSentenceTags().length > 0) {
+ printOpenTag(2, "firstSentenceTags", false);
+ outputTags(3, rootDoc.firstSentenceTags(), true, CONTEXT_PACKAGE);
+ printCloseTag(0, "firstSentenceTags");
+ }
+
+ if (rootDoc.inlineTags().length > 0) {
+ printOpenTag(2, "inlineTags");
+ outputTags(3, rootDoc.inlineTags(), true, CONTEXT_PACKAGE);
+ printCloseTag(2, "inlineTags");
+ }
+
+ if (null != bottomNote) {
+ printOpenTag(1, "bottomnote");
+ print(bottomNote);
+ printCloseTag(1, "bottomnote");
+ }
+
+ if (null != title) {
+ printOpenTag(1, "title");
+ println(2, title);
+ printCloseTag(1, "title");
+ }
+
+ printOpenTag(1, "created");
+ println(2, DateFormat.getDateInstance(DateFormat.LONG, Locale.US).format(new java.util.Date()));
+ printCloseTag(1, "created");
+
+ if (hasDeprecatedClasses) printAtomTag(1, "hasDeprecatedClasses");
+ if (hasDeprecatedInterfaces) printAtomTag(1, "hasDeprecatedInterfaces");
+ if (hasDeprecatedExceptions) printAtomTag(1, "hasDeprecatedExceptions");
+ if (hasDeprecatedErrors) printAtomTag(1, "hasDeprecatedErrors");
+ if (hasDeprecatedMethods) printAtomTag(1, "hasDeprecatedMethods");
+ if (hasDeprecatedFields) printAtomTag(1, "hasDeprecatedFields");
+
+ // Output summary of all classes specified on command line
+
+ println();
+ println(1, "<!-- Classes specified by user on command line -->");
+ ClassDoc[] specifiedClasses = rootDoc.specifiedClasses();
+ for (int i=0, ilim=specifiedClasses.length; i<ilim; ++i) {
+ ClassDoc sc = specifiedClasses[i];
+ printAtomTag(1, "specifiedclass fqname=\""+sc.qualifiedName()+"\" name=\""+sc.name()+"\"");
+ }
+ specifiedClasses = null;
+
+ // Output summary of all packages specified on command line
+
+ println();
+ println(1, "<!-- Packages specified by user on command line -->");
+ PackageDoc[] specifiedPackages = rootDoc.specifiedPackages();
+ for (int i=0, ilim=specifiedPackages.length; i<ilim; ++i) {
+ PackageDoc sp = specifiedPackages[i];
+ printAtomTag(1, "specifiedpackage name=\""+sp.name()+"\"");
+ }
+ specifiedPackages = null;
+
+ // Output package group information specified on the
+ // command line
+
+ println();
+ println(1, "<!-- Package groups specified by user on command line -->");
+ {
+ Iterator packageGroupIt = packageGroups.iterator();
+ while (packageGroupIt.hasNext()) {
+ PackageGroup packageGroup = (PackageGroup)packageGroupIt.next();
+ SortedSet groupedPackages = packageGroup.getPackages();
+ if (groupedPackages.isEmpty()) {
+ printWarning("Package group named '"
+ + packageGroup.getName() + "' didn't match any packages.");
+ }
+ else {
+ printOpenTag(1, "packagegroup name=\"" + packageGroup.getName() + "\"");
+ Iterator groupedPackageIt = groupedPackages.iterator();
+ while (groupedPackageIt.hasNext()) {
+ PackageDoc groupedPackageDoc = (PackageDoc)groupedPackageIt.next();
+ printAtomTag(2, "package name=\"" + groupedPackageDoc.name() + "\"");
+ }
+ printCloseTag(1, "packagegroup");
+ }
+ }
+ packageGroups = null;
+ }
+
+ // Output information on all packages for which documentation
+ // has been made available via the Doclet API
+
+ println();
+ println(1, "<!-- Documentation for all packages -->");
+ PackageDoc[] packages = rootDoc.specifiedPackages();
+ for (int i=0, ilim=packages.length; i<ilim; ++i) {
+ PackageDoc c = packages[i];
+ outputPackageDoc(c);
+ }
+ packages = null;
+
+ // Output brief summary on all classes for which documentation
+ // has been made available via the Doclet API.
+ //
+ // While this is redundant, it can speed up XSLT
+ // processing by orders of magnitude
+
+ println();
+ println(1, "<!-- Brief summary for all classes -->");
+ ClassDoc[] sumclasses = rootDoc.classes();
+ for (int i=0, ilim=sumclasses.length; i<ilim; ++i) {
+ ClassDoc c = sumclasses[i];
+ outputClassDocSummary(c);
+ }
+ sumclasses = null;
+
+ // Output closing tag, finish output stream
+
+ println();
+ printCloseTag(0, "rootdoc");
+
+ closeTargetFile();
+
+ createIndexByName();
+
+
+
+ // Output information on all classes for which documentation
+ // has been made available via the Doclet API
+
+ println();
+ println(1, "<!-- Documentation for all classes -->");
+ ClassDoc[] classes = rootDoc.classes();
+ String prevPackageName = null;
+ for (int i = 0, ilim = classes.length; i < ilim; ++ i) {
+ ClassDoc c = classes[i];
+
+ if (isVerbose()) {
+ printNotice("Writing XML information for "+c.qualifiedName()+"...");
+ }
+ else {
+ String packageName = c.containingPackage().name();
+ if (null == prevPackageName || !packageName.equals(prevPackageName)) {
+ printNotice("Writing XML information for "+packageName+"...");
+ prevPackageName = packageName;
+ }
+ }
+
+ setTargetFile(c.qualifiedName().replace('/','.')+".xml");
+
+ println("<?xml version=\"1.0\"?>");
+ println("<!DOCTYPE gjdoc SYSTEM \"dtd/gjdoc.dtd\">");
+
+ outputClassDoc(c);
+
+ closeTargetFile();
+ }
+ classes = null;
+ }
+
+ // Copy DTD files to temporary directory
+
+ // FIXME: try to solve this via jar: URLs. but this will
+ // probably break libxmlj compatibility (?)
+
+ String[] resources = new String[] {
+ "gjdoc.dtd",
+ "gjdoc-alphaindex.dtd",
+ "dbcentx.mod",
+ "ent/iso-amsa.ent",
+ "ent/iso-amsb.ent",
+ "ent/iso-amsc.ent",
+ "ent/iso-amsn.ent",
+ "ent/iso-amso.ent",
+ "ent/iso-amsr.ent",
+ "ent/iso-box.ent",
+ "ent/iso-cyr1.ent",
+ "ent/iso-cyr2.ent",
+ "ent/iso-dia.ent",
+ "ent/iso-grk1.ent",
+ "ent/iso-grk2.ent",
+ "ent/iso-grk3.ent",
+ "ent/iso-grk4.ent",
+ "ent/iso-lat1.ent",
+ "ent/iso-lat2.ent",
+ "ent/iso-num.ent",
+ "ent/iso-pub.ent",
+ "ent/iso-tech.ent",
+ };
+
+ File tempDtdDirectory = new File(xmlTargetDirectory, "dtd");
+ File tempDtdEntDirectory = new File(tempDtdDirectory, "ent");
+
+ if ((tempDtdDirectory.exists() || tempDtdDirectory.mkdir())
+ && (tempDtdEntDirectory.exists() || tempDtdEntDirectory.mkdir())) {
+ for (int i = 0; i < resources.length; ++ i) {
+ copyResourceToFile("/dtd/" + resources[i],
+ new File(tempDtdDirectory, resources[i]));
+ }
+ }
+ else {
+ printError("Cannot create temporary directories for DTD data at " + tempDtdDirectory);
+ return false;
+ }
+
+ // Copy package data-dir directory
+
+ {
+ PackageDoc[] packages = rootDoc.specifiedPackages();
+ for (int i=0, ilim=packages.length; i<ilim; ++i) {
+ PackageDoc c = packages[i];
+ if (c instanceof GjdocPackageDoc) {
+ copyPackageDataDir((GjdocPackageDoc)c);
+ }
+ }
+ }
+
+ // All information has been output. Apply stylesheet if given.
+
+ gnu.classpath.tools.gjdoc.Main.releaseRootDoc();
+
+ this.currentClass = null;
+ this.currentMember = null;
+ this.currentExecMember = null;
+
+ System.gc();
+
+ // From this point we are only operating on files, so we don't
+ // need this anymore and can free up some memory
+
+ for (Iterator it = targets.iterator(); it.hasNext(); ) {
+
+ TargetContext target = (TargetContext)it.next();
+
+ // We have XSLT postprocessing, run DocTranslet.
+
+ //DocTranslet docTranslet = DocTranslet.fromClasspath("/doctranslets/html/gjdoc.xsl");
+
+ //docTranslet.setOptions(docTransletOptions);
+
+ target.getDocTranslet().setOptions(docTransletOptions);
+
+ target.getDocTranslet().apply(xmlTargetDirectory,
+ target.getTargetDirectory(),
+ rootDoc);
+ }
+
+ // Done
+
+ targets = null;
+
+ System.gc();
+ Runtime.getRuntime().runFinalization();
+
+ return true;
+ }
+ catch (Exception e) {
+
+ // Something went wrong. Report to stderr and pass error to
+ // Javadoc Reporter
+
+ e.printStackTrace();
+ printError(e.toString());
+
+ Throwable rootCause = e.getCause();
+ if (null != rootCause) {
+ while (null != rootCause.getCause()) {
+ rootCause = rootCause.getCause();
+ }
+ System.err.println("Root cause:");
+ rootCause.printStackTrace();
+ }
+
+ return false;
+ }
+ finally {
+
+ // In any case, delete the working directory if we created one
+
+ if (null != workingDirectory) {
+
+ if (!deleteRecursive(workingDirectory)) {
+ printWarning("Could not delete temporary directory at "+workingDirectory);
+ }
+ }
+
+ printNotice("Done.");
+ }
+ }
+
+ /**
+ * Recursively delete the specified directory and its contents,
+ * like <code>rm -Rf directory</code>
+ *
+ * @return <code>true</code> on success
+ */
+ private static boolean deleteRecursive(File directory) {
+
+ boolean success = true;
+
+ File[] files = directory.listFiles();
+
+ for (int i=0, ilim=files.length; i<ilim; ++i) {
+
+ File file = files[i];
+
+ if (file.isDirectory()) {
+
+ success = deleteRecursive(file) && success;
+ }
+ else {
+
+ success = file.delete() && success;
+ }
+ }
+
+ return directory.delete() && success;
+ }
+
+ /**
+ * Prints a string to stdout and appends a newline. Convenience
+ * method.
+ */
+ protected void println(String str) {
+ out.println(str);
+ }
+
+ /**
+ * Prints a string to stdout without appending a newline.
+ * Convenience method.
+ */
+ protected void print(String str) {
+ out.print(str);
+ }
+
+ /**
+ * In standard mode, prints an empty line to stdout.
+ * In thight mode, nothing happens.
+ * Convenience method.
+ */
+ protected void println() {
+ if (!compress) {
+ out.println();
+ }
+ }
+
+ /**
+ * In standard mode, prints the given text indented to stdout and appends newline.
+ * In tight mode, doesn't print indentation or newlines.
+ */
+ protected void print(int indentLevel, String msg) {
+ if (compress) {
+ out.print(msg);
+ }
+ else {
+ StringBuffer indentation = new StringBuffer();
+ for (int i=0; i<indentLevel*indentStep; ++i) {
+ indentation.append(' ');
+ }
+ out.print(indentation+msg);
+ }
+ }
+
+ /**
+ * In tight mode, prints a message at a given indentation level.
+ * In standard mode, appends a newline in addition.
+ */
+ protected void println(int indentLevel, String msg) {
+ print(indentLevel, msg);
+ if (!compress) out.println();
+ }
+
+ /**
+ * Prints an atom tag at the given indentation level.
+ */
+ protected void printAtomTag(int level, String tag) {
+ println(level, "<"+tagPrefix+":"+replaceCharsInTag(tag)+"/>");
+ }
+
+ /**
+ * Prints an open tag at the given indentation level.
+ */
+ protected void printOpenTag(int level, String tag) {
+ printOpenTag(level, replaceCharsInTag(tag), true);
+ }
+
+ /**
+ * Prints an open tag at the given indentation level and
+ * conditionally appends a newline (if not in tight mode).
+ */
+ protected void printOpenTag(int level, String tag, boolean appendNewline) {
+ if (appendNewline && !compress) {
+ println(level, "<"+tagPrefix+":"+replaceCharsInTag(tag)+">");
+ }
+ else {
+ print(level, "<"+tagPrefix+":"+replaceCharsInTag(tag)+">");
+ }
+ }
+
+ /**
+ * Prints a close tag at the given indentation level.
+ */
+ protected void printCloseTag(int level, String tag) {
+ printCloseTag(level, tag, true);
+ }
+
+ /**
+ * Prints a close tag at the given indentation level and
+ * conditionally appends a newline (if not in tight mode).
+ */
+ protected void printCloseTag(int level, String tag, boolean appendNewline) {
+ if (appendNewline && !compress) {
+ println(level, "</"+tagPrefix+":"+replaceCharsInTag(tag)+">");
+ }
+ else {
+ print(level, "</"+tagPrefix+":"+replaceCharsInTag(tag)+">");
+ }
+ }
+
+ public static int optionLength(String option) {
+ if ("-d".equals(option)) return 2;
+ else if ("-fixhtml".equals(option)) return 1;
+ else if ("-compress".equals(option)) return 1;
+ else if ("-nohtmlwarn".equals(option)) return 1;
+ else if ("-noemailwarn".equals(option)) return 1;
+ else if ("-indentstep".equals(option)) return 2;
+ else if ("-xslsheet".equals(option)) return 2;
+ else if ("-xsltdriver".equals(option)) return 2;
+ else if ("-postprocess".equals(option)) return 2;
+ else if ("-genhtml".equals(option)) return 1;
+ else if ("-geninfo".equals(option)) return 1;
+ else if ("-gendocbook".equals(option)) return 1;
+ else if ("-xmlonly".equals(option)) return 1;
+ else if ("-bottomnote".equals(option)) return 2;
+ else if ("-workpath".equals(option)) return 2;
+ else if ("-title".equals(option)) return 2;
+ else if ("-tagletpath".equals(option)) return 2;
+ else if ("-taglet".equals(option)) return 2;
+ else if ("-authormail".equals(option)) return 2;
+ else if ("-mailmangledot".equals(option)) return 2;
+ else if ("-mailmangleat".equals(option)) return 2;
+ else if ("-noindex".equals(option)) return 1;
+ else if ("-nocomment".equals(option)) return 1;
+ else if ("-notree".equals(option)) return 1;
+ else if ("-nohelp".equals(option)) return 1;
+ else if ("-nonavbar".equals(option)) return 1;
+ else if ("-splitindex".equals(option)) return 1;
+ else if ("-author".equals(option)) return 1;
+ else if ("-version".equals(option)) return 1;
+ else if ("-nosince".equals(option)) return 1;
+ else if ("-nodeprecated".equals(option)) return 1;
+ else if ("-linksource".equals(option)) return 1;
+ else if ("-windowtitle".equals(option)) return 2;
+ else if ("-helpfile".equals(option)) return 2;
+ else if ("-stylesheetfile".equals(option)) return 2;
+ else if ("-tag".equals(option)) return 2;
+ else if ("-header".equals(option)) return 2;
+ else if ("-footer".equals(option)) return 2;
+ else if ("-bottom".equals(option)) return 2;
+ else if ("-doctitle".equals(option)) return 2;
+ else if ("-nodeprecatedlist".equals(option)) return 1;
+ else if ("-uses".equals(option)) return 1;
+ else if ("-group".equals(option)) return 3;
+
+ else return -1;
+ }
+
+ public static boolean validOptions(String[][] options) {
+ return true;
+ }
+
+
+ /**
+ * Workaround for non well-formed comments: fix tag contents
+ * by replacing <code>&lt;</code> with <code>&amp;lt;</code>,
+ * <code>&gt;</code> with <code>&amp;gt;</code> and
+ * <code>&amp;</code> with <code>&amp;amp;</code>.
+ *
+ * @param tagContent String to process
+ *
+ * @return given String with all special characters replaced by
+ * HTML entities.
+ */
+ private static String replaceCharsInTag(String tagContent) {
+ return
+ replaceString(
+ replaceString(
+ replaceString(
+ tagContent,
+ "<", "&lt;"
+ ),
+ ">", "&gt;"
+ ),
+ "&", "&amp;"
+ );
+ }
+
+ /**
+ * Replaces all occurences of string <code>needle</code> within string
+ * <code>haystack</code> by string <code>replacement</code>.
+ *
+ * @param haystack The string to search and replace in.
+ * @param needle The string which is searched for.
+ * @param replacement The string by which every occurence of <code>needle</code> is replaced.
+ */
+ private static String replaceString(String haystack, String needle, String replacement) {
+ int ndx = haystack.indexOf(needle);
+ if (ndx<0)
+ return haystack;
+ else
+ return haystack.substring(0, ndx) + replacement
+ + replaceString(haystack.substring(ndx+needle.length()), needle, replacement);
+ }
+
+ protected void setTargetFile(String filename) throws IOException {
+
+ OutputStream fileOut = new FileOutputStream(new File(xmlTargetDirectory, filename));
+ out = new PrintWriter(new BufferedWriter(new OutputStreamWriter(fileOut, "UTF8")));;
+ }
+
+ protected void closeTargetFile() {
+
+ out.flush();
+ out.close();
+ }
+
+ private String cdata(String str) {
+
+ if (null==str) {
+ return str;
+ } // end of if ((null==str)
+
+ StringBuffer rc = new StringBuffer();
+ for (int i=0; i<str.length(); ++i) {
+ char c = str.charAt(i);
+ if (c==0x09 || c==0x0a || c==0x0d || (c>=0x20 && c<=0xd7ff) || (c>=0xe000 && c<=0xfffd) || (c>=0x10000 && c<=0x10ffff)) {
+ rc.append(c);
+ }
+ else {
+ printWarning("Invalid Unicode character 0x"+Integer.toString(c, 16)+" in javadoc markup has been stripped.");
+ } // end of else
+
+ }
+ return rc.toString();
+ }
+
+ static void copyResourceToFile(String resourceName, File target) throws IOException {
+
+ InputStream in = Driver.class.getResourceAsStream(resourceName);
+
+ if (null != in) {
+
+ FileOutputStream out = new FileOutputStream(target);
+ int size;
+ byte[] buffer = new byte[512];
+ while ((size = in.read(buffer)) >= 0) {
+ out.write(buffer, 0, size);
+ }
+ out.close();
+ }
+ else {
+
+ throw new IOException("Can't find resource named "+resourceName);
+ }
+ }
+
+ private void printError(String error) {
+ if (null != rootDoc) {
+ rootDoc.printError(error);
+ }
+ else {
+ System.err.println("ERROR: "+error);
+ }
+ }
+
+ private void printWarning(String warning) {
+ if (null != rootDoc) {
+ rootDoc.printWarning(warning);
+ }
+ else {
+ System.err.println("WARNING: "+warning);
+ }
+ }
+
+ private void printNotice(String notice) {
+ if (null != rootDoc) {
+ rootDoc.printNotice(notice);
+ }
+ else {
+ System.err.println(notice);
+ }
+ }
+
+ /**
+ * Copy the contents of the input directory to the output
+ * directory. The output directory must exist.
+ */
+ private void copyPackageDataDir(GjdocPackageDoc packageDoc) throws IOException {
+ File docFilesSourceDirectory
+ = new File(packageDoc.packageDirectory(), "doc-files");
+ File docFilesTargetDirectory
+ = new File(this.targetDirectory,
+ packageDoc.name().replace('.', File.separatorChar));
+ if (docFilesSourceDirectory.exists()) {
+ printNotice("Copying files from " + docFilesSourceDirectory);
+ copyDirectory(docFilesSourceDirectory, docFilesTargetDirectory,
+ docFilesSubdirsEnabled,
+ excludeDocFilesSubDirs);
+ }
+ }
+
+ /**
+ * Recursively copy the contents of the input directory to the
+ * output directory. The output directory must exist.
+ */
+ private static void copyDirectory(File sourceDir, File targetDir,
+ boolean recursive,
+ Set excludeDirs) throws IOException {
+ if (!targetDir.exists() && !targetDir.mkdirs()) {
+ throw new IOException("Cannot create directory " + targetDir);
+ }
+
+ File[] sourceFiles = sourceDir.listFiles();
+ for (int i=0; i<sourceFiles.length; ++i) {
+ if (sourceFiles[i].isDirectory()) {
+ if (recursive && (null == excludeDirs
+ || !excludeDirs.contains(sourceFiles[i].getName()))) {
+ File targetSubDir = new File(targetDir,
+ sourceFiles[i].getName());
+ if (targetSubDir.exists() || targetSubDir.mkdir()) {
+ copyDirectory(sourceFiles[i], targetSubDir, recursive, null);
+ }
+ else {
+ throw new IOException("Cannot create directory " + targetSubDir);
+ }
+ }
+ }
+ else {
+ copyFile(sourceFiles[i], new File(targetDir, sourceFiles[i].getName()));
+ }
+ }
+ }
+
+ /**
+ * Copy the contents of the input file to the output file. The
+ * output file's parent directory must exist.
+ */
+ private static void copyFile(File sourceFile, File targetFile) throws IOException {
+
+ InputStream in = new FileInputStream(sourceFile);
+ OutputStream out = new FileOutputStream(targetFile);
+ int nread;
+ byte[] buf = new byte[512];
+ while ((nread = in.read(buf)) >= 0) {
+ out.write(buf, 0, nread);
+ }
+ in.close();
+ out.close();
+ }
+
+ private void createIndexByName() throws IOException {
+ // Create index
+
+ // Collect index
+
+ Map indexMap = new TreeMap(new Comparator() {
+ public int compare(Object o1, Object o2) {
+ return o1.toString().toLowerCase().compareTo(o2.toString().toLowerCase());
+ }
+ });
+
+ // Add packages to index
+
+ PackageDoc[] packages = rootDoc.specifiedPackages();
+ for (int i=0, ilim=packages.length; i<ilim; ++i) {
+ PackageDoc c = packages[i];
+ indexMap.put(c.name(), c);
+ }
+
+ // Add classes, fields and methods to index
+
+ ClassDoc[] sumclasses = rootDoc.classes();
+ for (int i=0, ilim=sumclasses.length; i<ilim; ++i) {
+ ClassDoc c = sumclasses[i];
+ if (null == c.containingClass()) {
+ indexMap.put(c.name(), c);
+ }
+ else {
+ indexMap.put(c.name().substring(c.containingClass().name().length() + 1), c);
+ }
+ FieldDoc[] fields = c.fields();
+ for (int j=0, jlim=fields.length; j<jlim; ++j) {
+ indexMap.put(fields[j].name(), fields[j]);
+ }
+ MethodDoc[] methods = c.methods();
+ for (int j=0, jlim=methods.length; j<jlim; ++j) {
+ MethodDoc method = methods[j];
+ StringBuffer signature = new StringBuffer();
+ signature.append(method.name());
+ signature.append('(');
+ Parameter[] parameters = method.parameters();
+ for (int k=0, klim=parameters.length; k<klim; ++k) {
+ if (k > 0) {
+ signature.append(", ");
+ }
+ signature.append(parameters[k].typeName());
+ }
+ signature.append(')');
+ indexMap.put(signature.toString(), method);
+ }
+ }
+
+ // Assign output stream
+
+ setTargetFile("alphaindex.xml");
+
+ // Output XML document header
+
+ println(0, "<?xml version=\"1.0\"?>");
+ println("<!DOCTYPE gjdoc SYSTEM \"dtd/gjdoc-alphaindex.dtd\">");
+ println();
+ printOpenTag(0, "alphaindex xmlns=\"http://www.w3.org/TR/REC-html40\" xmlns:gjdoc=\"http://www.gnu.org/software/cp-tools/gjdocxml\"");
+
+ Iterator it = indexMap.keySet().iterator();
+
+ char previousCategoryLetter = '\0';
+ boolean categoryOpen = false;
+
+ while (it.hasNext()) {
+ String key = (String)it.next();
+ Doc entry = (Doc)indexMap.get(key);
+
+ char firstChar = Character.toUpperCase(key.charAt(0));
+ if (firstChar != previousCategoryLetter) {
+ if (categoryOpen) {
+ printCloseTag(1, "category");
+ }
+ printOpenTag(1, "category letter=\"" + firstChar + "\"");
+ categoryOpen = true;
+ previousCategoryLetter = firstChar;
+ }
+
+ printOpenTag(2, "entry name=\"" + key + "\"");
+ if (entry instanceof PackageDoc) {
+ printAtomTag(3, "isPackage");
+ }
+ else if (entry instanceof ClassDoc) {
+ printAtomTag(3, "isClass");
+ ClassDoc centry = (ClassDoc)entry;
+ currentClass = centry;
+ printAtomTag(3, "containingPackage name=\"" + centry.containingPackage().name() + "\"");
+ if (null != centry.containingClass()) {
+ printAtomTag(3, "containingClass name=\"" + centry.containingClass().name() + "\"");
+ }
+ if (centry.isInterface()) {
+ printAtomTag(3, "isInterface");
+ }
+ if (centry.isException()) {
+ printAtomTag(3, "isException");
+ }
+ if (centry.isError()) {
+ printAtomTag(3, "isError");
+ }
+ if (centry.isOrdinaryClass()) {
+ printAtomTag(3, "isOrdinaryClass");
+ }
+ }
+ else if (entry instanceof ProgramElementDoc) {
+ ProgramElementDoc pentry = (ProgramElementDoc)entry;
+ currentClass = pentry.containingClass();
+ printAtomTag(3, "containingPackage name=\"" + pentry.containingPackage().name() + "\"");
+ printAtomTag(3, "containingClass name=\"" + pentry.containingClass().name() + "\"");
+ if (pentry.isMethod()) {
+ printAtomTag(3, "isMethod");
+ ExecutableMemberDoc mentry = (ExecutableMemberDoc)pentry;
+ printAtomTag(3, "signature full=\""+mentry.signature()+"\" flat=\""+mentry.flatSignature()+"\"");
+ printAtomTag(3, "method name=\"" + mentry.name() + "\"");
+ }
+ if (pentry.isField()) {
+ printAtomTag(3, "isField");
+ }
+ }
+
+ Tag[] tags = entry.firstSentenceTags();
+ for (int i=0, ilim=tags.length; i<ilim; ++i) {
+ Tag tag = tags[i];
+ if (tag.firstSentenceTags().length>0) {
+ printOpenTag(3, "firstSentenceTags", false);
+ outputTags(4, tag.firstSentenceTags(), false, CONTEXT_TYPE);
+ printCloseTag(3, "firstSentenceTags");
+ }
+ }
+
+
+ printCloseTag(2, "entry");
+ }
+
+ if (categoryOpen) {
+ printCloseTag(1, "category");
+ }
+
+ printCloseTag(0, "alphaindex");
+
+ closeTargetFile();
+ }
+
+ private static class UsageType
+ {
+ public static final UsageType CLASS_DERIVED_FROM = new UsageType("class-derived-from");
+ public static final UsageType FIELD_OF_TYPE = new UsageType("field-of-type");
+ public static final UsageType METHOD_WITH_RETURN_TYPE = new UsageType("method-with-return-type");
+ public static final UsageType METHOD_WITH_PARAMETER_TYPE = new UsageType("method-with-parameter-type");
+ public static final UsageType METHOD_WITH_THROWN_TYPE = new UsageType("method-with-thrown-type");
+ public static final UsageType CONSTRUCTOR_WITH_PARAMETER_TYPE = new UsageType("constructor-with-parameter-type");
+ public static final UsageType CONSTRUCTOR_WITH_THROWN_TYPE = new UsageType("constructor-with-thrown-type");
+ private String id;
+
+ private UsageType(String id)
+ {
+ this.id = id;
+ }
+
+ public String toString() {
+ return "UsageType{id=" + id + "}";
+ }
+
+ public String getId() {
+ return id;
+ }
+ }
+
+ /**
+ * ClassDoc -> (PackageDoc -> (UsageType -> (Set of Doc)))
+ */
+ private Map usedClassToPackagesMap = new HashMap();
+
+ private void addUsedBy(ClassDoc usedClass, UsageType usageType, Doc user, PackageDoc userPackage)
+ {
+ Map packageToUsageTypeMap = (Map)usedClassToPackagesMap.get(usedClass);
+ if (null == packageToUsageTypeMap) {
+ packageToUsageTypeMap = new HashMap();
+ usedClassToPackagesMap.put(usedClass, packageToUsageTypeMap);
+ }
+
+ Map usageTypeToUsersMap = (Map)packageToUsageTypeMap.get(userPackage);
+ if (null == usageTypeToUsersMap) {
+ usageTypeToUsersMap = new HashMap();
+ packageToUsageTypeMap.put(userPackage, usageTypeToUsersMap);
+ }
+
+ Set userSet = (Set)usageTypeToUsersMap.get(usageType);
+ if (null == userSet) {
+ userSet = new TreeSet(); // FIXME: we need the collator from Main here
+ usageTypeToUsersMap.put(usageType, userSet);
+ }
+ userSet.add(user);
+ }
+
+ /**
+ * Create the cross reference database.
+ */
+ private void collectUsage() {
+
+ ClassDoc[] classes = rootDoc.classes();
+ for (int i = 0, ilim = classes.length; i < ilim; ++ i) {
+ ClassDoc clazz = classes[i];
+
+ // classes derived from
+ for (ClassDoc superclass = clazz.superclass(); superclass != null;
+ superclass = superclass.superclass()) {
+ addUsedBy(superclass, UsageType.CLASS_DERIVED_FROM, clazz, clazz.containingPackage());
+ }
+
+ FieldDoc[] fields = clazz.fields();
+ for (int j = 0, jlim = fields.length; j < jlim; ++ j) {
+ FieldDoc field = fields[j];
+
+ // fields of type
+ ClassDoc fieldType = field.type().asClassDoc();
+ if (null != fieldType) {
+ addUsedBy(fieldType, UsageType.FIELD_OF_TYPE,
+ field, clazz.containingPackage());
+ }
+ }
+
+ MethodDoc[] methods = clazz.methods();
+ for (int j = 0, jlim = methods.length; j < jlim; ++ j) {
+ MethodDoc method = methods[j];
+
+ // methods with return type
+
+ ClassDoc returnType = method.returnType().asClassDoc();
+ if (null != returnType) {
+ addUsedBy(returnType, UsageType.METHOD_WITH_RETURN_TYPE,
+ method, clazz.containingPackage());
+ }
+ Parameter[] parameters = method.parameters();
+ for (int k=0; k<parameters.length; ++k) {
+
+ // methods with parameter type
+
+ Parameter parameter = parameters[k];
+ ClassDoc parameterType = parameter.type().asClassDoc();
+ if (null != parameterType) {
+ addUsedBy(parameterType, UsageType.METHOD_WITH_PARAMETER_TYPE,
+ method, clazz.containingPackage());
+ }
+ }
+
+ // methods which throw
+
+ ClassDoc[] thrownExceptions = method.thrownExceptions();
+ for (int k = 0, klim = thrownExceptions.length; k < klim; ++ k) {
+ ClassDoc thrownException = thrownExceptions[k];
+ addUsedBy(thrownException, UsageType.METHOD_WITH_THROWN_TYPE,
+ method, clazz.containingPackage());
+ }
+ }
+
+ ConstructorDoc[] constructors = clazz.constructors();
+ for (int j = 0, jlim = constructors.length; j < jlim; ++ j) {
+
+ ConstructorDoc constructor = constructors[j];
+
+ Parameter[] parameters = constructor.parameters();
+ for (int k = 0, klim = parameters.length; k < klim; ++ k) {
+
+ // constructors with parameter type
+
+ Parameter parameter = parameters[k];
+ ClassDoc parameterType = parameter.type().asClassDoc();
+ if (null != parameterType) {
+ addUsedBy(parameterType, UsageType.CONSTRUCTOR_WITH_PARAMETER_TYPE,
+ constructor, clazz.containingPackage());
+ }
+ }
+
+ // constructors which throw
+
+ ClassDoc[] thrownExceptions = constructor.thrownExceptions();
+ for (int k = 0, klim = thrownExceptions.length; k < klim; ++ k) {
+ ClassDoc thrownException = thrownExceptions[k];
+ addUsedBy(thrownException, UsageType.CONSTRUCTOR_WITH_THROWN_TYPE,
+ constructor, clazz.containingPackage());
+ }
+ }
+ }
+ }
+
+ private void outputUsage(ClassDoc clazz, int level) {
+
+ Map packageToUsageTypeMap = (Map)usedClassToPackagesMap.get(clazz);
+ if (null != packageToUsageTypeMap) {
+ printOpenTag(level, "references");
+
+ Iterator packagesIterator = packageToUsageTypeMap.keySet().iterator();
+
+ while (packagesIterator.hasNext()) {
+ PackageDoc packageDoc = (PackageDoc)packagesIterator.next();
+ printOpenTag(level + 1, "referencing-package name=\"" + packageDoc.name() + "\"");
+ Map usageTypeToUsersMap = (Map)packageToUsageTypeMap.get(packageDoc);
+ Iterator usageTypeIterator = usageTypeToUsersMap.keySet().iterator();
+ while (usageTypeIterator.hasNext()) {
+ UsageType usageType = (UsageType)usageTypeIterator.next();
+ printOpenTag(level + 2, "usage-type id=\"" + usageType.getId() + "\"");
+ Set users = (Set)usageTypeToUsersMap.get(usageType);
+ Iterator userIterator = users.iterator();
+ while (userIterator.hasNext()) {
+ Doc user = (Doc)userIterator.next();
+ if (user instanceof ClassDoc) {
+ printAtomTag(level + 3, "user"
+ + " class=\"" + ((ClassDoc)user).name() + "\"");
+ }
+ else if (user instanceof FieldDoc) {
+ FieldDoc fieldDoc = (FieldDoc)user;
+ printAtomTag(level + 3, "user"
+ + " class=\"" + fieldDoc.containingClass().name() + "\""
+ + " field=\"" + fieldDoc.name() + "\"");
+ }
+ else if (user instanceof MethodDoc) {
+ MethodDoc methodDoc = (MethodDoc)user;
+ printAtomTag(level + 3, "user"
+ + " class=\"" + methodDoc.containingClass().name() + "\""
+ + " method=\"" + methodDoc.name() + "\""
+ + " signature=\"" + methodDoc.signature() + "\""
+ + " flatSignature=\"" + methodDoc.flatSignature() + "\"");
+ }
+ else if (user instanceof ConstructorDoc) {
+ ConstructorDoc constructorDoc = (ConstructorDoc)user;
+ printAtomTag(level + 3, "user"
+ + " class=\"" + constructorDoc.containingClass().name() + "\""
+ + " signature=\"" + constructorDoc.signature() + "\""
+ + " flatSignature=\"" + constructorDoc.flatSignature() + "\"");
+ }
+ }
+ printCloseTag(level +2, "usage-type");
+ }
+ printCloseTag(level + 1, "referencing-package");
+ }
+
+ printCloseTag(level, "references");
+ }
+ }
+
+ private boolean processGroupOption(String groupName, String colonSeparatedPackageList)
+ {
+ try {
+ PackageMatcher packageMatcher = new PackageMatcher();
+
+ StringTokenizer tokenizer = new StringTokenizer(colonSeparatedPackageList, ":");
+ while (tokenizer.hasMoreTokens()) {
+ String packageWildcard = tokenizer.nextToken();
+ packageMatcher.addWildcard(packageWildcard);
+ }
+
+ SortedSet groupPackages = packageMatcher.filter(rootDoc.specifiedPackages());
+
+ packageGroups.add(new PackageGroup(groupName, groupPackages));
+
+ return true;
+ }
+ catch (InvalidPackageWildcardException e) {
+ return false;
+ }
+ }
+
+ private void registerTaglet(Taglet taglet)
+ {
+ tagletMap.put(taglet.getName(), taglet);
+ }
+
+ private boolean isVerbose()
+ {
+ return false;
+ }
+}
diff --git a/libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/Driver1_4.java b/libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/Driver1_4.java
index bbb57aca2d5..e2297d8e968 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/Driver1_4.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/Driver1_4.java
@@ -1,67 +1,84 @@
-/* gnu.classpath.tools.doclets.xmldoclet.Driver1_4
- Copyright (C) 2001 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
-
-package gnu.classpath.tools.doclets.xmldoclet;
-
-import com.sun.javadoc.*;
-import java.io.IOException;
-
-/**
- * A Doclet which retrieves all information presented by the Doclet
- * API, dumping it to stdout in XML format.
- *
- * Supports Doclet API Version 1.4.
- *
- * @author Julian Scheid
- */
-public class Driver1_4 extends Driver {
-
- /**
- * Official Doclet entry point.
- */
- public static boolean start(RootDoc root) {
-
- // Create a new XmlDoclet instance and delegate control.
- return new Driver1_4().instanceStart(root);
- }
-
- /* since 1.4
- private void outputSourcePosition(int level, SourcePosition sourcePosition) {
- println(level, "<sourceposition"
- + " file=\""+sourcePosition.file().toString()+"\""
- + " line=\""+sourcePosition.line()+"\""
- + " column=\""+sourceposition.column()+"\""
- + "/>");
- }
- */
-
- protected void outputClassDoc(ClassDoc classDoc)
- throws IOException
- {
- super.outputClassDoc(classDoc);
- //outputSourcePosition(level, doc.position());
- }
-
- protected void outputFieldDocBody(int level, FieldDoc fieldDoc) {
- super.outputFieldDocBody(level, fieldDoc);
- //println(level, "<constantValueExpression>"+fieldDoc.constantValueExpression()+"</constantValueExpression>");
- }
-
-}
+/* gnu.classpath.tools.doclets.xmldoclet.Driver1_4
+ Copyright (C) 2001 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package gnu.classpath.tools.doclets.xmldoclet;
+
+import com.sun.javadoc.*;
+import java.io.IOException;
+
+/**
+ * A Doclet which retrieves all information presented by the Doclet
+ * API, dumping it to stdout in XML format.
+ *
+ * Supports Doclet API Version 1.4.
+ *
+ * @author Julian Scheid
+ */
+public class Driver1_4 extends Driver {
+
+ /**
+ * Official Doclet entry point.
+ */
+ public static boolean start(RootDoc root) {
+
+ // Create a new XmlDoclet instance and delegate control.
+ return new Driver1_4().instanceStart(root);
+ }
+
+ /* since 1.4
+ private void outputSourcePosition(int level, SourcePosition sourcePosition) {
+ println(level, "<sourceposition"
+ + " file=\""+sourcePosition.file().toString()+"\""
+ + " line=\""+sourcePosition.line()+"\""
+ + " column=\""+sourceposition.column()+"\""
+ + "/>");
+ }
+ */
+
+ protected void outputClassDoc(ClassDoc classDoc)
+ throws IOException
+ {
+ super.outputClassDoc(classDoc);
+ //outputSourcePosition(level, doc.position());
+ }
+
+ protected void outputFieldDocBody(int level, FieldDoc fieldDoc) {
+ super.outputFieldDocBody(level, fieldDoc);
+ //println(level, "<constantValueExpression>"+fieldDoc.constantValueExpression()+"</constantValueExpression>");
+ }
+
+}
diff --git a/libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/HtmlRepairer.java b/libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/HtmlRepairer.java
index df9be0ae583..175d4e864a1 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/HtmlRepairer.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/HtmlRepairer.java
@@ -1,674 +1,691 @@
-/* gnu.classpath.tools.doclets.xmldoclet.HtmlRepairer.java
- Copyright (C) 2003 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
-
-package gnu.classpath.tools.doclets.xmldoclet;
-
-import java.io.*;
-import java.util.*;
-import com.sun.javadoc.DocErrorReporter;
-import com.sun.javadoc.ClassDoc;
-import com.sun.javadoc.MemberDoc;
-
-/**
- * Provides methods for tidying up HTML source.
- *
- * @author Julian Scheid
- */
-public final class HtmlRepairer {
-
- private static class TagInfo {
-
- private Set parentTags = new HashSet();
-
- public TagInfo(String parentTag) {
- this.parentTags.add(parentTag);
- }
-
- public TagInfo(String[] parentTagArr) {
- for (int i=0; i<parentTagArr.length; ++i) {
- this.parentTags.add(parentTagArr[i]);
- }
- }
-
- public boolean isLegalParentTag(String tag) {
- return this.parentTags.contains(tag);
- }
- }
-
- private DocErrorReporter warningReporter;
- private boolean noWarn;
- private boolean noEmailWarn;
- private ClassDoc contextClass;
- private MemberDoc contextMember;
- private StringBuffer output = new StringBuffer();
- private Stack tagStack = new Stack();
- private boolean isLeadingTag = true;
- private boolean throwAwayLeadingPara = false;
-
- private static Map tagInfoMap;
-
- private static Set noTextParentTags;
-
- static {
- tagInfoMap = new HashMap();
- tagInfoMap.put("li", new TagInfo(new String[] { "ul", "ol", "nl", "menu", "dir" }));
- tagInfoMap.put("td", new TagInfo(new String[] { "tr" }));
- tagInfoMap.put("th", new TagInfo(new String[] { "tr" }));
- tagInfoMap.put("tr", new TagInfo(new String[] { "table" }));
- tagInfoMap.put("dt", new TagInfo(new String[] { "dl" }));
- tagInfoMap.put("dd", new TagInfo(new String[] { "dl" }));
- tagInfoMap.put("param", new TagInfo(new String[] { "applet" }));
-
- String[] noTextParentTagArr = {
- "area", "base", "body", "br", "dd", "dt", "head", "hr", "html",
- "img", "input", "link", "map", "meta", "ol", "optgroup", "param",
- "select", "table", "tbody", "tfoot", "thead", "tr", "ul",
- };
-
- noTextParentTags = new HashSet();
- for (int i=0; i<noTextParentTagArr.length; ++i) {
- noTextParentTags.add(noTextParentTagArr[i]);
- }
- }
-
- public HtmlRepairer(DocErrorReporter warningReporter,
- boolean noWarn, boolean noEmailWarn,
- ClassDoc contextClass, MemberDoc contextMember,
- boolean throwAwayLeadingPara) {
- this.warningReporter = warningReporter;
- this.noWarn = noWarn;
- this.noEmailWarn = noEmailWarn;
- this.contextClass = contextClass;
- this.contextMember = contextMember;
- this.throwAwayLeadingPara = throwAwayLeadingPara;
- }
-
- private static String replaceStr(String haystack, String needle, String replacement) {
- int ndx=haystack.indexOf(needle);
- if (ndx<0)
- return haystack;
- else
- return haystack.substring(0, ndx)+replacement
- + replaceStr(haystack.substring(ndx+needle.length()), needle, replacement);
- }
-
- private void haveText(String text) {
-
- if (isLeadingTag && throwAwayLeadingPara) {
- if (0 != text.trim().length()) {
- isLeadingTag = false;
- }
- }
-
- if (tagStack.isEmpty() || !noTextParentTags.contains(tagStack.peek())) {
-
- text = replaceStr(text, "&lt1", "&lt;1");
- text = replaceStr(text, "&&", "&amp;&amp;");
- text = replaceStr(text, "& ", "&amp; ");
- text = replaceStr(text, "&\t", "&amp;\t");
- text = replaceStr(text, "&\r", "&amp;\r");
- text = replaceStr(text, "&\n", "&amp;\n");
- for (char c='0'; c<='9'; ++c)
- text = replaceStr(text, "&"+c, "&amp;"+c);
- text = replaceStr(text, "\u00a7", "&sect;");
- output.append(text);
- }
- else {
- printWarning("Discarded text in <" + tagStack.peek() + "> element");
- }
- }
-
- private void haveStartOrEndTag(String tag) {
-
- boolean _isLeadingTag = isLeadingTag;
- isLeadingTag = false;
-
- tag = tag.trim();
-
- boolean isEndTag = tag.startsWith("/");
- boolean isAtomTag = tag.endsWith("/");
-
- if (isEndTag && isAtomTag) {
- // got something like '</a/>' which is invalid.
- // suppose a close tag was intended.
- tag = tag.substring(0, tag.length()-1);
- }
-
- if (tag.length() < 1) {
- printWarning("Deleting broken tag");
- return;
- }
-
- String tagName = tag.substring(isEndTag?1:0, isAtomTag?tag.length()-1:tag.length());
- String tagAttributes = "";
-
- for (int i=0; i<tagName.length(); ++i) {
- if (" \t\r\n".indexOf(tagName.charAt(i))>=0) {
- tagAttributes = tagName.substring(i).trim();
- tagName = tagName.substring(0, i);
- break;
- }
- }
-
- if (!isEndTag && tagName.indexOf('@')>0) {
- if (!noEmailWarn) {
- printWarning("Tag looks like email address: <"+tagName+">");
- }
- output.append("&lt;"+tag+"&gt;");
- return;
- }
-
- tagName = tagName.toLowerCase();
-
- if (_isLeadingTag && "p".equals(tagName) && !isEndTag && throwAwayLeadingPara) {
- return;
- }
-
- if ("p".equals(tagName) || "br".equals(tagName) || "hr".equals(tagName)) {
- // throw away </p> and </br>
- if (isEndTag) {
- return;
- }
- // make sure every <p> is a <p/> and every <br> is a <br/>
- else if (!isAtomTag) {
- tag += "/";
- isAtomTag = true;
- }
- }
-
- if (isEndTag) {
-
- // check whether this close tag is on the stack
- // if yes, close all tags up to this tag
- if (tagStack.contains(tagName)) {
- String popped;
- do {
- popped = (String)tagStack.pop();
- if (!popped.equals(tagName))
- printWarning("Inserting '</"+popped+">");
- output.append("</"+popped+">");
- }
- while (!popped.equals(tagName));
- }
- // if not, just throw it away
- else {
- printWarning("Deleting <"+tag+">");
- }
- }
- else {
-
- final int STATE_INITIAL = 1;
- final int STATE_EXPECT_ATTRIBUTENAME = 2;
- final int STATE_UNQUOTED_ATTRIBUTEVALUE = 3;
- final int STATE_SINGLEQUOTE_ATTRIBUTEVALUE = 4;
- final int STATE_DOUBLEQUOTE_ATTRIBUTEVALUE = 5;
- final int STATE_EXPECT_ATTRIBUTEVALUE = 6;
- final int STATE_EXPECT_EQUALSIGN = 7;
-
- int state = STATE_INITIAL;
-
- String newAttributes = "";
- String attributeName = null;
- StringBuffer buf = new StringBuffer();
-
- char[] attrsAsChars = tagAttributes.toCharArray();
- for (int i=0, ilim=attrsAsChars.length+1; i<ilim; ++i) {
- int c;
- if (i<attrsAsChars.length)
- c = (int)attrsAsChars[i];
- else
- c = -1;
-
- switch (state) {
-
- case STATE_INITIAL:
- if (" \t\r\n".indexOf(c)>=0){
- continue;
- }
- else if (-1==c) {
- continue;
- }
- else {
- state = STATE_EXPECT_ATTRIBUTENAME;
- buf.append((char)c);
- }
- break;
-
- case STATE_EXPECT_ATTRIBUTENAME:
- if ('='==c) {
- attributeName = buf.toString();
- buf.setLength(0);
- state = STATE_EXPECT_ATTRIBUTEVALUE;
- }
- else if (-1==c) {
- attributeName = buf.toString();
- buf.setLength(0);
- printWarning("In Tag '"+tag+"':\nAttribute name without a value, inserting value =\""+attributeName+"\"");
- }
- else if (" \t\r\n".indexOf(c)>=0) {
- state = STATE_EXPECT_EQUALSIGN;
- }
- else {
- buf.append((char)c);
- }
- break;
-
- case STATE_EXPECT_EQUALSIGN:
- if (" \t\r\n".indexOf(c)>=0){
- continue;
- }
- else if ('='==c) {
- state = STATE_EXPECT_ATTRIBUTEVALUE;
- attributeName = buf.toString();
- buf.setLength(0);
- }
- else {
- attributeName = buf.toString();
- buf.setLength(0);
- printWarning("In Tag '"+tag+"':\nAttribute name without a value, inserting value =\""+attributeName+"\"");
- newAttributes += " "+attributeName+"=\""+attributeName+"\"";
- buf.append((char)c);
- state = STATE_EXPECT_ATTRIBUTENAME;
- }
- break;
-
- case STATE_EXPECT_ATTRIBUTEVALUE:
- if (" \t\r\n".indexOf(c)>=0){
- continue;
- }
- else if ('\"'==c) {
- state = STATE_DOUBLEQUOTE_ATTRIBUTEVALUE;
- }
- else if ('\''==c) {
- state = STATE_SINGLEQUOTE_ATTRIBUTEVALUE;
- }
- else {
- state = STATE_UNQUOTED_ATTRIBUTEVALUE;
- buf.append((char)c);
- }
- break;
-
- case STATE_UNQUOTED_ATTRIBUTEVALUE:
- if (-1==c || " \t\r\n".indexOf(c)>=0){
- state = STATE_INITIAL;
- newAttributes += " "+attributeName + "=\"" + buf.toString() + "\"";
- buf.setLength(0);
- }
- else {
- buf.append((char)c);
- }
- break;
-
- case STATE_SINGLEQUOTE_ATTRIBUTEVALUE:
- if ('\''==c) {
- state = STATE_INITIAL;
- newAttributes += " "+attributeName + "=\"" + buf.toString() + "\"";
- buf.setLength(0);
- }
- else {
- buf.append((char)c);
- }
- break;
-
- case STATE_DOUBLEQUOTE_ATTRIBUTEVALUE:
- if ('\"'==c) {
- state = STATE_INITIAL;
- newAttributes += " "+attributeName + "=\"" + buf.toString() + "\"";
- buf.setLength(0);
- }
- else {
- buf.append((char)c);
- }
- break;
- }
- }
-
-
- if (!isAtomTag) {
-
- // check whether this open tag is equal to the topmost
- // entry on the stack; if yes, emit a close tag first
-
- // corrects stuff like '<tr><td>...<td>...');
- if (!tagStack.isEmpty() && tagStack.peek().equals(tagName)) {
- printWarning("Inserting </"+tagName+">");
- output.append("</"+tagName+">");
- tagStack.pop();
- }
- else {
- processKnownChildTags(tagName, tagStack, output);
- }
-
- // otherwise, we assume there are no close tags required
- // before this open tag.
- tagStack.push(tagName);
-
- output.append("<"+tagName+newAttributes+">");
- }
- else {
- output.append("<"+tagName+newAttributes+"/>");
- }
- }
- }
-
- private boolean processKnownChildTags(String tagName, Stack tagStack, StringBuffer output) {
-
- TagInfo tagInfo = (TagInfo)tagInfoMap.get(tagName);
- if (null != tagInfo) {
-
- String parentTag = null;
- for (Enumeration en = tagStack.elements(); en.hasMoreElements(); ) {
- String tag = (String)en.nextElement();
- if (tagInfo.isLegalParentTag(tag)) {
- parentTag = tag;
- break;
- }
- }
- if (parentTag != null) {
- while (((String)tagStack.peek()) != parentTag) {
- String poppedTagName = (String)tagStack.pop();
- output.append("</"+poppedTagName+">");
- printWarning("Inserting </"+poppedTagName+">");
- }
- return true;
- }
- }
- return false;
- }
-
- private void flush() {
-
- // close all pending tags
- while (!tagStack.isEmpty()) {
- String tagName = (String)tagStack.pop();
- printWarning("Inserting </"+tagName+">");
- output.append("</"+tagName+">");
- }
- }
-
- /**
- * Takes HTML fragment and returns a well-formed XHTML
- * equivalent.
- *
- * In the returned String, all tags are properly closed and
- * nested.
- *
- * Currently, the returned String is not guaranteed to be
- * well-formed. In particular there are no checks on the tag
- * names, attribute names and entity names.
- */
- public String getWellformedHTML(String text) {
-
- final int STATE_INITIAL = 1;
- final int STATE_TAG_START = 2;
- final int STATE_TAG = 3;
- final int STATE_TAG_DOUBLEQUOTE = 4;
- final int STATE_TAG_SINGLEQUOTE = 5;
- final int STATE_AMP = 6;
-
- int state = STATE_INITIAL;
- output.setLength(0);
-
-
- StringBuffer buf = new StringBuffer();
- char[] textAsChars = text.toCharArray();
-
- outer_loop:
- for (int i=0, ilim=textAsChars.length+1; i<ilim; ++i) {
- int c;
-
- if (i<textAsChars.length) {
- c = textAsChars[i];
- }
- else {
- c = -1;
- }
-
- switch (state) {
-
- case STATE_INITIAL:
- if ('<'==c) {
- state = STATE_TAG_START;
- if (buf.length()>0) {
- haveText(buf.toString());
- buf.setLength(0);
- }
- }
- else if ('>'==c) {
- // assume this is a greater-than sign
- buf.append("&gt;");
- }
- else if ('&'==c) {
- state = STATE_AMP;
- }
- else if (-1==c) {
- if (buf.length()>0) {
- haveText(buf.toString());
- buf.setLength(0);
- }
- continue;
- }
- else {
- buf.append((char)c);
- }
- break;
-
- case STATE_AMP:
- if ('<'==c) {
- buf.append("&amp;");
- state = STATE_TAG_START;
- if (buf.length()>0) {
- haveText(buf.toString());
- buf.setLength(0);
- }
- }
- else if ('>'==c) {
- // assume this is a greater-than sign
- buf.append("&amp;");
- buf.append("&gt;");
- state = STATE_INITIAL;
- }
- else if ('&'==c) {
- buf.append("&amp;");
- buf.append("&amp;");
- state = STATE_INITIAL;
- }
- else if (-1==c) {
- buf.append("&amp;");
- haveText(buf.toString());
- buf.setLength(0);
- state = STATE_INITIAL;
- continue;
- }
- else {
- // peek forward and see whether this is a valid entity.
- if ('#'==c) {
- buf.append("&");
- buf.append((char)c);
- state = STATE_INITIAL;
- continue outer_loop;
- }
- else if (Character.isLetter((char)c)) {
- for (int i2=i+1; i2<ilim-1; i2++) {
- if (';' == textAsChars[i2]) {
- buf.append("&");
- buf.append((char)c);
- state = STATE_INITIAL;
- continue outer_loop;
- }
- else if (!Character.isLetter((char)c)
- && !Character.isDigit((char)c)
- && ".-_:".indexOf((char)c) < 0
- //&& !isCombiningChar(c) // FIXME
- //&& !isExtender(c) // FIXME
- ) {
- break;
- }
- }
- // not a valid entity declaration; assume &amp;
- }
- buf.append("&amp;");
- buf.append((char)c);
- state = STATE_INITIAL;
- }
-
- /*
- else if ('#'==c || Character.isLetter((char)c)) {
- buf.append("&");
- buf.append((char)c);
- state = STATE_INITIAL;
- }
- else {
- buf.append("&amp;");
- buf.append((char)c);
- state = STATE_INITIAL;
- }
- */
- break;
-
- case STATE_TAG_START:
- if (" \t\r\n".indexOf(c)>=0) {
- //continue;
-
- // new: assume this is a less-sign
- haveText("&lt;"+c);
- state = STATE_INITIAL;
- }
- else if ('/'==c) {
- buf.append((char)c);
- state = STATE_TAG;
- }
- else if ('<'==c) {
- // assume this is a less-sign
- haveText("&lt;&lt;");
- state = STATE_INITIAL;
- }
- else if ('>'==c) {
- // assume this is a less-sign
- haveText("&lt;&gt;");
- state = STATE_INITIAL;
- }
- //else if ('-'==c || '+'==c || '='==c || '\''==c || "0123456789".indexOf(c)>=0) {
- else if (!Character.isLetter((char)c)) {
- // assume this is a less-sign
- haveText("&lt;"+(char)c);
- state = STATE_INITIAL;
- }
- else {
- buf.append((char)c);
- state = STATE_TAG;
- }
- break;
-
- case STATE_TAG:
- if ('\"'==c) {
- buf.append((char)c);
- state = STATE_TAG_DOUBLEQUOTE;
- }
- else if ('\''==c) {
- buf.append((char)c);
- state = STATE_TAG_SINGLEQUOTE;
- }
- else if ('>'==c) {
- state = STATE_INITIAL;
- haveStartOrEndTag(buf.toString());
- buf.setLength(0);
- }
- else if ('<'==c) {
- // notify user, missing greater-than sign
- haveStartOrEndTag(buf.toString());
- buf.setLength(0);
- }
- else if (-1==c) {
- printWarning("Unclosed tag at end-of-comment: <"+buf);
- haveStartOrEndTag(buf.toString());
- buf.setLength(0);
- }
- else {
- buf.append((char)c);
- }
- break;
-
- case STATE_TAG_DOUBLEQUOTE:
- if ('\"'==c) {
- buf.append((char)c);
- state = STATE_TAG;
- }
- else if (-1==c) {
- printWarning("Unclosed attribute value at end-of-comment.");
- haveStartOrEndTag(buf.toString()+"\"");
- }
- else {
- buf.append((char)c);
- }
- break;
-
- case STATE_TAG_SINGLEQUOTE:
- if ('\''==c) {
- buf.append((char)c);
- state = STATE_TAG;
- }
- else if (-1==c) {
- printWarning("Unclosed attribute value at end-of-comment.");
- haveStartOrEndTag(buf.toString()+"'");
- }
- else {
- buf.append((char)c);
- }
- break;
- }
- }
-
- return output.toString();
- }
-
- private String getContext() {
- if (null != contextClass) {
- StringBuffer rc = new StringBuffer();
- rc.append(contextClass.qualifiedTypeName());
- if (null != contextMember) {
- rc.append("."+contextMember.toString());
- }
- return rc.toString();
- }
- else {
- return null;
- }
- }
-
- private void printWarning(String msg) {
- if (null != warningReporter && !noWarn) {
- String context = getContext();
- if (null != context) {
- warningReporter.printWarning("In "+getContext()+": "+msg);
- }
- else {
- warningReporter.printWarning("In overview page: "+msg);
- }
- }
- }
-
- public String terminateText() {
- output.setLength(0);
- flush();
- return output.toString();
- }
-}
-
+/* gnu.classpath.tools.doclets.xmldoclet.HtmlRepairer.java
+ Copyright (C) 2003 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package gnu.classpath.tools.doclets.xmldoclet;
+
+import java.io.*;
+import java.util.*;
+import com.sun.javadoc.DocErrorReporter;
+import com.sun.javadoc.ClassDoc;
+import com.sun.javadoc.MemberDoc;
+
+/**
+ * Provides methods for tidying up HTML source.
+ *
+ * @author Julian Scheid
+ */
+public final class HtmlRepairer {
+
+ private static class TagInfo {
+
+ private Set parentTags = new HashSet();
+
+ public TagInfo(String parentTag) {
+ this.parentTags.add(parentTag);
+ }
+
+ public TagInfo(String[] parentTagArr) {
+ for (int i=0; i<parentTagArr.length; ++i) {
+ this.parentTags.add(parentTagArr[i]);
+ }
+ }
+
+ public boolean isLegalParentTag(String tag) {
+ return this.parentTags.contains(tag);
+ }
+ }
+
+ private DocErrorReporter warningReporter;
+ private boolean noWarn;
+ private boolean noEmailWarn;
+ private ClassDoc contextClass;
+ private MemberDoc contextMember;
+ private StringBuffer output = new StringBuffer();
+ private Stack tagStack = new Stack();
+ private boolean isLeadingTag = true;
+ private boolean throwAwayLeadingPara = false;
+
+ private static Map tagInfoMap;
+
+ private static Set noTextParentTags;
+
+ static {
+ tagInfoMap = new HashMap();
+ tagInfoMap.put("li", new TagInfo(new String[] { "ul", "ol", "nl", "menu", "dir" }));
+ tagInfoMap.put("td", new TagInfo(new String[] { "tr" }));
+ tagInfoMap.put("th", new TagInfo(new String[] { "tr" }));
+ tagInfoMap.put("tr", new TagInfo(new String[] { "table" }));
+ tagInfoMap.put("dt", new TagInfo(new String[] { "dl" }));
+ tagInfoMap.put("dd", new TagInfo(new String[] { "dl" }));
+ tagInfoMap.put("param", new TagInfo(new String[] { "applet" }));
+
+ String[] noTextParentTagArr = {
+ "area", "base", "body", "br", "dd", "dt", "head", "hr", "html",
+ "img", "input", "link", "map", "meta", "ol", "optgroup", "param",
+ "select", "table", "tbody", "tfoot", "thead", "tr", "ul",
+ };
+
+ noTextParentTags = new HashSet();
+ for (int i=0; i<noTextParentTagArr.length; ++i) {
+ noTextParentTags.add(noTextParentTagArr[i]);
+ }
+ }
+
+ public HtmlRepairer(DocErrorReporter warningReporter,
+ boolean noWarn, boolean noEmailWarn,
+ ClassDoc contextClass, MemberDoc contextMember,
+ boolean throwAwayLeadingPara) {
+ this.warningReporter = warningReporter;
+ this.noWarn = noWarn;
+ this.noEmailWarn = noEmailWarn;
+ this.contextClass = contextClass;
+ this.contextMember = contextMember;
+ this.throwAwayLeadingPara = throwAwayLeadingPara;
+ }
+
+ private static String replaceStr(String haystack, String needle, String replacement) {
+ int ndx=haystack.indexOf(needle);
+ if (ndx<0)
+ return haystack;
+ else
+ return haystack.substring(0, ndx)+replacement
+ + replaceStr(haystack.substring(ndx+needle.length()), needle, replacement);
+ }
+
+ private void haveText(String text) {
+
+ if (isLeadingTag && throwAwayLeadingPara) {
+ if (0 != text.trim().length()) {
+ isLeadingTag = false;
+ }
+ }
+
+ if (tagStack.isEmpty() || !noTextParentTags.contains(tagStack.peek())) {
+
+ text = replaceStr(text, "&lt1", "&lt;1");
+ text = replaceStr(text, "&&", "&amp;&amp;");
+ text = replaceStr(text, "& ", "&amp; ");
+ text = replaceStr(text, "&\t", "&amp;\t");
+ text = replaceStr(text, "&\r", "&amp;\r");
+ text = replaceStr(text, "&\n", "&amp;\n");
+ for (char c='0'; c<='9'; ++c)
+ text = replaceStr(text, "&"+c, "&amp;"+c);
+ text = replaceStr(text, "\u00a7", "&sect;");
+ output.append(text);
+ }
+ else {
+ printWarning("Discarded text in <" + tagStack.peek() + "> element");
+ }
+ }
+
+ private void haveStartOrEndTag(String tag) {
+
+ boolean _isLeadingTag = isLeadingTag;
+ isLeadingTag = false;
+
+ tag = tag.trim();
+
+ boolean isEndTag = tag.startsWith("/");
+ boolean isAtomTag = tag.endsWith("/");
+
+ if (isEndTag && isAtomTag) {
+ // got something like '</a/>' which is invalid.
+ // suppose a close tag was intended.
+ tag = tag.substring(0, tag.length()-1);
+ }
+
+ if (tag.length() < 1) {
+ printWarning("Deleting broken tag");
+ return;
+ }
+
+ String tagName = tag.substring(isEndTag?1:0, isAtomTag?tag.length()-1:tag.length());
+ String tagAttributes = "";
+
+ for (int i=0; i<tagName.length(); ++i) {
+ if (" \t\r\n".indexOf(tagName.charAt(i))>=0) {
+ tagAttributes = tagName.substring(i).trim();
+ tagName = tagName.substring(0, i);
+ break;
+ }
+ }
+
+ if (!isEndTag && tagName.indexOf('@')>0) {
+ if (!noEmailWarn) {
+ printWarning("Tag looks like email address: <"+tagName+">");
+ }
+ output.append("&lt;"+tag+"&gt;");
+ return;
+ }
+
+ tagName = tagName.toLowerCase();
+
+ if (_isLeadingTag && "p".equals(tagName) && !isEndTag && throwAwayLeadingPara) {
+ return;
+ }
+
+ if ("p".equals(tagName) || "br".equals(tagName) || "hr".equals(tagName)) {
+ // throw away </p> and </br>
+ if (isEndTag) {
+ return;
+ }
+ // make sure every <p> is a <p/> and every <br> is a <br/>
+ else if (!isAtomTag) {
+ tag += "/";
+ isAtomTag = true;
+ }
+ }
+
+ if (isEndTag) {
+
+ // check whether this close tag is on the stack
+ // if yes, close all tags up to this tag
+ if (tagStack.contains(tagName)) {
+ String popped;
+ do {
+ popped = (String)tagStack.pop();
+ if (!popped.equals(tagName))
+ printWarning("Inserting '</"+popped+">");
+ output.append("</"+popped+">");
+ }
+ while (!popped.equals(tagName));
+ }
+ // if not, just throw it away
+ else {
+ printWarning("Deleting <"+tag+">");
+ }
+ }
+ else {
+
+ final int STATE_INITIAL = 1;
+ final int STATE_EXPECT_ATTRIBUTENAME = 2;
+ final int STATE_UNQUOTED_ATTRIBUTEVALUE = 3;
+ final int STATE_SINGLEQUOTE_ATTRIBUTEVALUE = 4;
+ final int STATE_DOUBLEQUOTE_ATTRIBUTEVALUE = 5;
+ final int STATE_EXPECT_ATTRIBUTEVALUE = 6;
+ final int STATE_EXPECT_EQUALSIGN = 7;
+
+ int state = STATE_INITIAL;
+
+ String newAttributes = "";
+ String attributeName = null;
+ StringBuffer buf = new StringBuffer();
+
+ char[] attrsAsChars = tagAttributes.toCharArray();
+ for (int i=0, ilim=attrsAsChars.length+1; i<ilim; ++i) {
+ int c;
+ if (i<attrsAsChars.length)
+ c = (int)attrsAsChars[i];
+ else
+ c = -1;
+
+ switch (state) {
+
+ case STATE_INITIAL:
+ if (" \t\r\n".indexOf(c)>=0){
+ continue;
+ }
+ else if (-1==c) {
+ continue;
+ }
+ else {
+ state = STATE_EXPECT_ATTRIBUTENAME;
+ buf.append((char)c);
+ }
+ break;
+
+ case STATE_EXPECT_ATTRIBUTENAME:
+ if ('='==c) {
+ attributeName = buf.toString();
+ buf.setLength(0);
+ state = STATE_EXPECT_ATTRIBUTEVALUE;
+ }
+ else if (-1==c) {
+ attributeName = buf.toString();
+ buf.setLength(0);
+ printWarning("In Tag '"+tag+"':\nAttribute name without a value, inserting value =\""+attributeName+"\"");
+ }
+ else if (" \t\r\n".indexOf(c)>=0) {
+ state = STATE_EXPECT_EQUALSIGN;
+ }
+ else {
+ buf.append((char)c);
+ }
+ break;
+
+ case STATE_EXPECT_EQUALSIGN:
+ if (" \t\r\n".indexOf(c)>=0){
+ continue;
+ }
+ else if ('='==c) {
+ state = STATE_EXPECT_ATTRIBUTEVALUE;
+ attributeName = buf.toString();
+ buf.setLength(0);
+ }
+ else {
+ attributeName = buf.toString();
+ buf.setLength(0);
+ printWarning("In Tag '"+tag+"':\nAttribute name without a value, inserting value =\""+attributeName+"\"");
+ newAttributes += " "+attributeName+"=\""+attributeName+"\"";
+ buf.append((char)c);
+ state = STATE_EXPECT_ATTRIBUTENAME;
+ }
+ break;
+
+ case STATE_EXPECT_ATTRIBUTEVALUE:
+ if (" \t\r\n".indexOf(c)>=0){
+ continue;
+ }
+ else if ('\"'==c) {
+ state = STATE_DOUBLEQUOTE_ATTRIBUTEVALUE;
+ }
+ else if ('\''==c) {
+ state = STATE_SINGLEQUOTE_ATTRIBUTEVALUE;
+ }
+ else {
+ state = STATE_UNQUOTED_ATTRIBUTEVALUE;
+ buf.append((char)c);
+ }
+ break;
+
+ case STATE_UNQUOTED_ATTRIBUTEVALUE:
+ if (-1==c || " \t\r\n".indexOf(c)>=0){
+ state = STATE_INITIAL;
+ newAttributes += " "+attributeName + "=\"" + buf.toString() + "\"";
+ buf.setLength(0);
+ }
+ else {
+ buf.append((char)c);
+ }
+ break;
+
+ case STATE_SINGLEQUOTE_ATTRIBUTEVALUE:
+ if ('\''==c) {
+ state = STATE_INITIAL;
+ newAttributes += " "+attributeName + "=\"" + buf.toString() + "\"";
+ buf.setLength(0);
+ }
+ else {
+ buf.append((char)c);
+ }
+ break;
+
+ case STATE_DOUBLEQUOTE_ATTRIBUTEVALUE:
+ if ('\"'==c) {
+ state = STATE_INITIAL;
+ newAttributes += " "+attributeName + "=\"" + buf.toString() + "\"";
+ buf.setLength(0);
+ }
+ else {
+ buf.append((char)c);
+ }
+ break;
+ }
+ }
+
+
+ if (!isAtomTag) {
+
+ // check whether this open tag is equal to the topmost
+ // entry on the stack; if yes, emit a close tag first
+
+ // corrects stuff like '<tr><td>...<td>...');
+ if (!tagStack.isEmpty() && tagStack.peek().equals(tagName)) {
+ printWarning("Inserting </"+tagName+">");
+ output.append("</"+tagName+">");
+ tagStack.pop();
+ }
+ else {
+ processKnownChildTags(tagName, tagStack, output);
+ }
+
+ // otherwise, we assume there are no close tags required
+ // before this open tag.
+ tagStack.push(tagName);
+
+ output.append("<"+tagName+newAttributes+">");
+ }
+ else {
+ output.append("<"+tagName+newAttributes+"/>");
+ }
+ }
+ }
+
+ private boolean processKnownChildTags(String tagName, Stack tagStack, StringBuffer output) {
+
+ TagInfo tagInfo = (TagInfo)tagInfoMap.get(tagName);
+ if (null != tagInfo) {
+
+ String parentTag = null;
+ for (Enumeration en = tagStack.elements(); en.hasMoreElements(); ) {
+ String tag = (String)en.nextElement();
+ if (tagInfo.isLegalParentTag(tag)) {
+ parentTag = tag;
+ break;
+ }
+ }
+ if (parentTag != null) {
+ while (((String)tagStack.peek()) != parentTag) {
+ String poppedTagName = (String)tagStack.pop();
+ output.append("</"+poppedTagName+">");
+ printWarning("Inserting </"+poppedTagName+">");
+ }
+ return true;
+ }
+ }
+ return false;
+ }
+
+ private void flush() {
+
+ // close all pending tags
+ while (!tagStack.isEmpty()) {
+ String tagName = (String)tagStack.pop();
+ printWarning("Inserting </"+tagName+">");
+ output.append("</"+tagName+">");
+ }
+ }
+
+ /**
+ * Takes HTML fragment and returns a well-formed XHTML
+ * equivalent.
+ *
+ * In the returned String, all tags are properly closed and
+ * nested.
+ *
+ * Currently, the returned String is not guaranteed to be
+ * well-formed. In particular there are no checks on the tag
+ * names, attribute names and entity names.
+ */
+ public String getWellformedHTML(String text) {
+
+ final int STATE_INITIAL = 1;
+ final int STATE_TAG_START = 2;
+ final int STATE_TAG = 3;
+ final int STATE_TAG_DOUBLEQUOTE = 4;
+ final int STATE_TAG_SINGLEQUOTE = 5;
+ final int STATE_AMP = 6;
+
+ int state = STATE_INITIAL;
+ output.setLength(0);
+
+
+ StringBuffer buf = new StringBuffer();
+ char[] textAsChars = text.toCharArray();
+
+ outer_loop:
+ for (int i=0, ilim=textAsChars.length+1; i<ilim; ++i) {
+ int c;
+
+ if (i<textAsChars.length) {
+ c = textAsChars[i];
+ }
+ else {
+ c = -1;
+ }
+
+ switch (state) {
+
+ case STATE_INITIAL:
+ if ('<'==c) {
+ state = STATE_TAG_START;
+ if (buf.length()>0) {
+ haveText(buf.toString());
+ buf.setLength(0);
+ }
+ }
+ else if ('>'==c) {
+ // assume this is a greater-than sign
+ buf.append("&gt;");
+ }
+ else if ('&'==c) {
+ state = STATE_AMP;
+ }
+ else if (-1==c) {
+ if (buf.length()>0) {
+ haveText(buf.toString());
+ buf.setLength(0);
+ }
+ continue;
+ }
+ else {
+ buf.append((char)c);
+ }
+ break;
+
+ case STATE_AMP:
+ if ('<'==c) {
+ buf.append("&amp;");
+ state = STATE_TAG_START;
+ if (buf.length()>0) {
+ haveText(buf.toString());
+ buf.setLength(0);
+ }
+ }
+ else if ('>'==c) {
+ // assume this is a greater-than sign
+ buf.append("&amp;");
+ buf.append("&gt;");
+ state = STATE_INITIAL;
+ }
+ else if ('&'==c) {
+ buf.append("&amp;");
+ buf.append("&amp;");
+ state = STATE_INITIAL;
+ }
+ else if (-1==c) {
+ buf.append("&amp;");
+ haveText(buf.toString());
+ buf.setLength(0);
+ state = STATE_INITIAL;
+ continue;
+ }
+ else {
+ // peek forward and see whether this is a valid entity.
+ if ('#'==c) {
+ buf.append("&");
+ buf.append((char)c);
+ state = STATE_INITIAL;
+ continue outer_loop;
+ }
+ else if (Character.isLetter((char)c)) {
+ for (int i2=i+1; i2<ilim-1; i2++) {
+ if (';' == textAsChars[i2]) {
+ buf.append("&");
+ buf.append((char)c);
+ state = STATE_INITIAL;
+ continue outer_loop;
+ }
+ else if (!Character.isLetter((char)c)
+ && !Character.isDigit((char)c)
+ && ".-_:".indexOf((char)c) < 0
+ //&& !isCombiningChar(c) // FIXME
+ //&& !isExtender(c) // FIXME
+ ) {
+ break;
+ }
+ }
+ // not a valid entity declaration; assume &amp;
+ }
+ buf.append("&amp;");
+ buf.append((char)c);
+ state = STATE_INITIAL;
+ }
+
+ /*
+ else if ('#'==c || Character.isLetter((char)c)) {
+ buf.append("&");
+ buf.append((char)c);
+ state = STATE_INITIAL;
+ }
+ else {
+ buf.append("&amp;");
+ buf.append((char)c);
+ state = STATE_INITIAL;
+ }
+ */
+ break;
+
+ case STATE_TAG_START:
+ if (" \t\r\n".indexOf(c)>=0) {
+ //continue;
+
+ // new: assume this is a less-sign
+ haveText("&lt;"+c);
+ state = STATE_INITIAL;
+ }
+ else if ('/'==c) {
+ buf.append((char)c);
+ state = STATE_TAG;
+ }
+ else if ('<'==c) {
+ // assume this is a less-sign
+ haveText("&lt;&lt;");
+ state = STATE_INITIAL;
+ }
+ else if ('>'==c) {
+ // assume this is a less-sign
+ haveText("&lt;&gt;");
+ state = STATE_INITIAL;
+ }
+ //else if ('-'==c || '+'==c || '='==c || '\''==c || "0123456789".indexOf(c)>=0) {
+ else if (!Character.isLetter((char)c)) {
+ // assume this is a less-sign
+ haveText("&lt;"+(char)c);
+ state = STATE_INITIAL;
+ }
+ else {
+ buf.append((char)c);
+ state = STATE_TAG;
+ }
+ break;
+
+ case STATE_TAG:
+ if ('\"'==c) {
+ buf.append((char)c);
+ state = STATE_TAG_DOUBLEQUOTE;
+ }
+ else if ('\''==c) {
+ buf.append((char)c);
+ state = STATE_TAG_SINGLEQUOTE;
+ }
+ else if ('>'==c) {
+ state = STATE_INITIAL;
+ haveStartOrEndTag(buf.toString());
+ buf.setLength(0);
+ }
+ else if ('<'==c) {
+ // notify user, missing greater-than sign
+ haveStartOrEndTag(buf.toString());
+ buf.setLength(0);
+ }
+ else if (-1==c) {
+ printWarning("Unclosed tag at end-of-comment: <"+buf);
+ haveStartOrEndTag(buf.toString());
+ buf.setLength(0);
+ }
+ else {
+ buf.append((char)c);
+ }
+ break;
+
+ case STATE_TAG_DOUBLEQUOTE:
+ if ('\"'==c) {
+ buf.append((char)c);
+ state = STATE_TAG;
+ }
+ else if (-1==c) {
+ printWarning("Unclosed attribute value at end-of-comment.");
+ haveStartOrEndTag(buf.toString()+"\"");
+ }
+ else {
+ buf.append((char)c);
+ }
+ break;
+
+ case STATE_TAG_SINGLEQUOTE:
+ if ('\''==c) {
+ buf.append((char)c);
+ state = STATE_TAG;
+ }
+ else if (-1==c) {
+ printWarning("Unclosed attribute value at end-of-comment.");
+ haveStartOrEndTag(buf.toString()+"'");
+ }
+ else {
+ buf.append((char)c);
+ }
+ break;
+ }
+ }
+
+ return output.toString();
+ }
+
+ private String getContext() {
+ if (null != contextClass) {
+ StringBuffer rc = new StringBuffer();
+ rc.append(contextClass.qualifiedTypeName());
+ if (null != contextMember) {
+ rc.append("."+contextMember.toString());
+ }
+ return rc.toString();
+ }
+ else {
+ return null;
+ }
+ }
+
+ private void printWarning(String msg) {
+ if (null != warningReporter && !noWarn) {
+ String context = getContext();
+ if (null != context) {
+ warningReporter.printWarning("In "+getContext()+": "+msg);
+ }
+ else {
+ warningReporter.printWarning("In overview page: "+msg);
+ }
+ }
+ }
+
+ public String terminateText() {
+ output.setLength(0);
+ flush();
+ return output.toString();
+ }
+}
+
diff --git a/libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/TargetContext.java b/libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/TargetContext.java
index 72dd9f6a6bc..6fdb8cb4875 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/TargetContext.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/TargetContext.java
@@ -1,86 +1,103 @@
-/* gnu.classpath.tools.doclets.xmldoclet.TargetContext
- Copyright (C) 2001 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
-
-package gnu.classpath.tools.doclets.xmldoclet;
-
-import java.io.File;
-import java.io.InputStream;
-import java.io.OutputStream;
-import java.io.FileInputStream;
-import java.io.FileOutputStream;
-import java.io.IOException;
-
-import java.net.URL;
-
-import java.util.List;
-import java.util.Iterator;
-import java.util.Map;
-import java.util.HashMap;
-
-import gnu.classpath.tools.doclets.xmldoclet.doctranslet.DocTranslet;
-
-/**
- * Stores any XSL transformation and postprocessing-specific
- * information given by the user on the doclet command line.
- *
- * @author Julian Scheid
- */
-public class TargetContext {
-
- /**
- * The DocTranslet to use for processing doclet output.
- */
- private DocTranslet docTranslet;
-
- /**
- * Directory to write final output to.
- */
- private File targetDirectory;
-
- /**
- * Directory where XSLT output will be written to. If an XSLT
- * sheet was specified, but no postprocessing driver was given,
- * this is the target directory specified by the user. Otherwise,
- * this is a temporary directory.
- */
- private File xsltTargetDirectory;
-
-
- public TargetContext(DocTranslet docTranslet, File targetDirectory) {
- this.docTranslet = docTranslet;
- this.targetDirectory = targetDirectory;
- }
-
- public File getTargetDirectory() {
- return targetDirectory;
- }
-
- public void setTargetDirectory(File targetDirectory) {
- this.targetDirectory = targetDirectory;
- }
-
- public DocTranslet getDocTranslet() {
- return docTranslet;
- }
-
- public void setDocTranslet(DocTranslet docTranslet) {
- this.docTranslet = docTranslet;
- }
-}
+/* gnu.classpath.tools.doclets.xmldoclet.TargetContext
+ Copyright (C) 2001 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package gnu.classpath.tools.doclets.xmldoclet;
+
+import java.io.File;
+import java.io.InputStream;
+import java.io.OutputStream;
+import java.io.FileInputStream;
+import java.io.FileOutputStream;
+import java.io.IOException;
+
+import java.net.URL;
+
+import java.util.List;
+import java.util.Iterator;
+import java.util.Map;
+import java.util.HashMap;
+
+import gnu.classpath.tools.doclets.xmldoclet.doctranslet.DocTranslet;
+
+/**
+ * Stores any XSL transformation and postprocessing-specific
+ * information given by the user on the doclet command line.
+ *
+ * @author Julian Scheid
+ */
+public class TargetContext {
+
+ /**
+ * The DocTranslet to use for processing doclet output.
+ */
+ private DocTranslet docTranslet;
+
+ /**
+ * Directory to write final output to.
+ */
+ private File targetDirectory;
+
+ /**
+ * Directory where XSLT output will be written to. If an XSLT
+ * sheet was specified, but no postprocessing driver was given,
+ * this is the target directory specified by the user. Otherwise,
+ * this is a temporary directory.
+ */
+ private File xsltTargetDirectory;
+
+
+ public TargetContext(DocTranslet docTranslet, File targetDirectory) {
+ this.docTranslet = docTranslet;
+ this.targetDirectory = targetDirectory;
+ }
+
+ public File getTargetDirectory() {
+ return targetDirectory;
+ }
+
+ public void setTargetDirectory(File targetDirectory) {
+ this.targetDirectory = targetDirectory;
+ }
+
+ public DocTranslet getDocTranslet() {
+ return docTranslet;
+ }
+
+ public void setDocTranslet(DocTranslet docTranslet) {
+ this.docTranslet = docTranslet;
+ }
+}
diff --git a/libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTranslet.java b/libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTranslet.java
index 573ca368c6a..3a8cabceb23 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTranslet.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTranslet.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.doclets.xmldoclet.doctranslet;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTransletConfigurationException.java b/libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTransletConfigurationException.java
index b25d77ef38f..1992d166249 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTransletConfigurationException.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTransletConfigurationException.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.doclets.xmldoclet.doctranslet;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTransletException.java b/libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTransletException.java
index e672c628e51..bfb3f7697bd 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTransletException.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTransletException.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.doclets.xmldoclet.doctranslet;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTransletOptions.java b/libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTransletOptions.java
index 0c6813082ea..8bf65835898 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTransletOptions.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/DocTransletOptions.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.doclets.xmldoclet.doctranslet;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/JarClassLoader.java b/libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/JarClassLoader.java
index 50a9681e1b8..f6eb679f84b 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/JarClassLoader.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/JarClassLoader.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.doclets.xmldoclet.doctranslet;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/OutputFileInfo.java b/libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/OutputFileInfo.java
index 92a1fba27be..b4e394cec54 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/OutputFileInfo.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/doclets/xmldoclet/doctranslet/OutputFileInfo.java
@@ -1,49 +1,66 @@
-/* gnu.classpath.tools.doclets.xmldoclet.doctranslet.OutputFileInfo
- Copyright (C) 2003 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
-
-package gnu.classpath.tools.doclets.xmldoclet.doctranslet;
-
-/**
- * Holds information about a file to be generated by the DocTranslet.
- */
-public class OutputFileInfo {
-
- private String name;
- private String source;
- private String sheet;
- private String comment;
- private String info;
-
- public OutputFileInfo(String name, String source, String sheet, String comment, String info) {
- this.name = name;
- this.source = source;
- this.sheet = sheet;
- this.comment = comment;
- this.info = info;
- }
-
- public String getName() { return name; }
- public String getSource() { return source; }
- public String getSheet() { return sheet; }
- public String getComment() { return comment; }
- public String getInfo() { return info; }
-
- public String toString() { return "OutputFileInfo{name="+name+",source="+source+",sheet="+sheet+",comment="+comment+",info="+info+"}"; }
-}
+/* gnu.classpath.tools.doclets.xmldoclet.doctranslet.OutputFileInfo
+ Copyright (C) 2003 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package gnu.classpath.tools.doclets.xmldoclet.doctranslet;
+
+/**
+ * Holds information about a file to be generated by the DocTranslet.
+ */
+public class OutputFileInfo {
+
+ private String name;
+ private String source;
+ private String sheet;
+ private String comment;
+ private String info;
+
+ public OutputFileInfo(String name, String source, String sheet, String comment, String info) {
+ this.name = name;
+ this.source = source;
+ this.sheet = sheet;
+ this.comment = comment;
+ this.info = info;
+ }
+
+ public String getName() { return name; }
+ public String getSource() { return source; }
+ public String getSheet() { return sheet; }
+ public String getComment() { return comment; }
+ public String getInfo() { return info; }
+
+ public String toString() { return "OutputFileInfo{name="+name+",source="+source+",sheet="+sheet+",comment="+comment+",info="+info+"}"; }
+}
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/AbstractTagImpl.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/AbstractTagImpl.java
index 4a638e25426..2ec5af477bc 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/AbstractTagImpl.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/AbstractTagImpl.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ArrayCharacterIterator.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ArrayCharacterIterator.java
index 8c23e989acd..4bfac862f53 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ArrayCharacterIterator.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ArrayCharacterIterator.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ClassDocImpl.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ClassDocImpl.java
index fee68006f40..b1012247164 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ClassDocImpl.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ClassDocImpl.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ClassDocProxy.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ClassDocProxy.java
index 79abf3dc6ee..6dfe821bc50 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ClassDocProxy.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ClassDocProxy.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ClassDocReflectedImpl.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ClassDocReflectedImpl.java
index 2920e89f235..b3fd83c7339 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ClassDocReflectedImpl.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ClassDocReflectedImpl.java
@@ -16,7 +16,24 @@
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
+ 02111-1307 USA.
+
+ Linking this library statically or dynamically with other modules is
+ making a combined work based on this library. Thus, the terms and
+ conditions of the GNU General Public License cover the whole
+ combination.
+
+ As a special exception, the copyright holders of this library give you
+ permission to link this library with independent modules to produce an
+ executable, regardless of the license terms of these independent
+ modules, and to copy and distribute the resulting executable under
+ terms of your choice, provided that you also meet, for each linked
+ independent module, the terms and conditions of the license of that
+ module. An independent module is a module which is not derived from
+ or based on this library. If you modify this library, you may extend
+ this exception to your version of the library, but you are not
+ obligated to do so. If you do not wish to do so, delete this
+ exception statement from your version. */
package gnu.classpath.tools.gjdoc;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ConstructorDocImpl.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ConstructorDocImpl.java
index f114485c19b..06785ae0f17 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ConstructorDocImpl.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ConstructorDocImpl.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/Debug.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/Debug.java
index 06f39a4fa1b..3dddf43d26c 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/Debug.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/Debug.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/DirectoryTree.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/DirectoryTree.java
index 7d8e4bc5c54..da365d98329 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/DirectoryTree.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/DirectoryTree.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/DocImpl.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/DocImpl.java
index 163051380ff..86680799e37 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/DocImpl.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/DocImpl.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ErrorReporter.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ErrorReporter.java
index a72c53e43f2..129689bc9ae 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ErrorReporter.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ErrorReporter.java
@@ -1,104 +1,121 @@
-/* gnu.classpath.tools.gjdoc.ErrorReporter
- Copyright (C) 2001 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
-
-package gnu.classpath.tools.gjdoc;
-
-import com.sun.javadoc.*;
-import java.io.*;
-import java.util.*;
-import java.lang.reflect.*;
-
-/**
- * Simple implementation of a <code>DocErrorReporter</code>: writes
- * to <code>System.err</code>.
- */
-public class ErrorReporter implements DocErrorReporter {
-
- private PrintStream out;
-
- /**
- * Keeps track of the number of errors occured
- * during generation.
- */
- private int errorCount=0;
-
- /**
- * Keeps track of the number of warnings occured
- * during generation.
- */
- private int warningCount=0;
-
- /*
- * When <code>true</code>, no notices will be emitted.
- */
- private boolean quiet = false;
-
- /*
- * When <code>true</code>, no warnings will be emitted.
- */
- private boolean noWarn = false;
-
- public ErrorReporter()
- {
- this.out = System.err;
- }
-
- // Print error message, increment error count.
- public void printError(java.lang.String msg) {
- out.println("ERROR: "+msg);
- ++errorCount;
- }
-
- // Print error message, increment error count.
- public void printFatal(java.lang.String msg) {
- out.println("FATAL: "+msg);
- System.exit(10);
- }
-
- // Print a message.
- public void printNotice(java.lang.String msg) {
- if (!quiet) {
- out.println(msg);
- }
- }
-
- // Print warning message, increment warning count.
- public void printWarning(java.lang.String msg) {
- if (!noWarn) {
- out.println("WARNING: "+msg);
- ++warningCount;;
- }
- }
-
- public int getErrorCount() {
- return errorCount;
- }
-
- public int getWarningCount() {
- return warningCount;
- }
-
- /**
- * Specify whether notices should be printed.
- */
- public void setQuiet(boolean quiet) {
- this.quiet = quiet;
- }
-}
+/* gnu.classpath.tools.gjdoc.ErrorReporter
+ Copyright (C) 2001 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package gnu.classpath.tools.gjdoc;
+
+import com.sun.javadoc.*;
+import java.io.*;
+import java.util.*;
+import java.lang.reflect.*;
+
+/**
+ * Simple implementation of a <code>DocErrorReporter</code>: writes
+ * to <code>System.err</code>.
+ */
+public class ErrorReporter implements DocErrorReporter {
+
+ private PrintStream out;
+
+ /**
+ * Keeps track of the number of errors occured
+ * during generation.
+ */
+ private int errorCount=0;
+
+ /**
+ * Keeps track of the number of warnings occured
+ * during generation.
+ */
+ private int warningCount=0;
+
+ /*
+ * When <code>true</code>, no notices will be emitted.
+ */
+ private boolean quiet = false;
+
+ /*
+ * When <code>true</code>, no warnings will be emitted.
+ */
+ private boolean noWarn = false;
+
+ public ErrorReporter()
+ {
+ this.out = System.err;
+ }
+
+ // Print error message, increment error count.
+ public void printError(java.lang.String msg) {
+ out.println("ERROR: "+msg);
+ ++errorCount;
+ }
+
+ // Print error message, increment error count.
+ public void printFatal(java.lang.String msg) {
+ out.println("FATAL: "+msg);
+ System.exit(10);
+ }
+
+ // Print a message.
+ public void printNotice(java.lang.String msg) {
+ if (!quiet) {
+ out.println(msg);
+ }
+ }
+
+ // Print warning message, increment warning count.
+ public void printWarning(java.lang.String msg) {
+ if (!noWarn) {
+ out.println("WARNING: "+msg);
+ ++warningCount;;
+ }
+ }
+
+ public int getErrorCount() {
+ return errorCount;
+ }
+
+ public int getWarningCount() {
+ return warningCount;
+ }
+
+ /**
+ * Specify whether notices should be printed.
+ */
+ public void setQuiet(boolean quiet) {
+ this.quiet = quiet;
+ }
+}
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ExecutableMemberDocImpl.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ExecutableMemberDocImpl.java
index 7dcdd25d215..f177c1531b6 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ExecutableMemberDocImpl.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ExecutableMemberDocImpl.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/FieldDocImpl.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/FieldDocImpl.java
index 8d5b66f819b..341797611ce 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/FieldDocImpl.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/FieldDocImpl.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/GjdocPackageDoc.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/GjdocPackageDoc.java
index 3a3e38f20f3..e0c74cea1a8 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/GjdocPackageDoc.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/GjdocPackageDoc.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/GjdocRootDoc.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/GjdocRootDoc.java
index 65020d7b7d1..a49be2f9ec3 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/GjdocRootDoc.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/GjdocRootDoc.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/InheritDocTagImpl.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/InheritDocTagImpl.java
index 773c5fd3b44..95b706acd00 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/InheritDocTagImpl.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/InheritDocTagImpl.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/JavadocWrapper.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/JavadocWrapper.java
index 3728630bcae..f5a507bdb08 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/JavadocWrapper.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/JavadocWrapper.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/LinkTagImpl.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/LinkTagImpl.java
index 167c5154c7c..ac92dba86a5 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/LinkTagImpl.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/LinkTagImpl.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/Main.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/Main.java
index cbbc8f4f7dd..0c30a48e8b7 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/Main.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/Main.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/MemberDocImpl.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/MemberDocImpl.java
index aae2462bbf3..07817bcb906 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/MemberDocImpl.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/MemberDocImpl.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/MethodDocImpl.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/MethodDocImpl.java
index 8654a224991..34f3b28545b 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/MethodDocImpl.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/MethodDocImpl.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/PackageDocImpl.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/PackageDocImpl.java
index d0b28d62742..2f37e445cf8 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/PackageDocImpl.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/PackageDocImpl.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ParamTagImpl.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ParamTagImpl.java
index 2d9567e66c4..499d43e31e2 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ParamTagImpl.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ParamTagImpl.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ParameterImpl.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ParameterImpl.java
index 9132270bc31..133077d06f4 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ParameterImpl.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ParameterImpl.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ParseException.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ParseException.java
index 4984ead855c..c0ea48ea7bd 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ParseException.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ParseException.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/Parser.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/Parser.java
index 5569d4b014c..030d4ae315d 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/Parser.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/Parser.java
@@ -16,7 +16,24 @@
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
+ 02111-1307 USA.
+
+ Linking this library statically or dynamically with other modules is
+ making a combined work based on this library. Thus, the terms and
+ conditions of the GNU General Public License cover the whole
+ combination.
+
+ As a special exception, the copyright holders of this library give you
+ permission to link this library with independent modules to produce an
+ executable, regardless of the license terms of these independent
+ modules, and to copy and distribute the resulting executable under
+ terms of your choice, provided that you also meet, for each linked
+ independent module, the terms and conditions of the license of that
+ module. An independent module is a module which is not derived from
+ or based on this library. If you modify this library, you may extend
+ this exception to your version of the library, but you are not
+ obligated to do so. If you do not wish to do so, delete this
+ exception statement from your version. */
package gnu.classpath.tools.gjdoc;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ProgramElementDocImpl.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ProgramElementDocImpl.java
index 19353cc015c..a5588ff46cc 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ProgramElementDocImpl.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ProgramElementDocImpl.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/RootDocImpl.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/RootDocImpl.java
index b60a0b6e2fb..21640d2feef 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/RootDocImpl.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/RootDocImpl.java
@@ -16,7 +16,24 @@
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
+ 02111-1307 USA.
+
+ Linking this library statically or dynamically with other modules is
+ making a combined work based on this library. Thus, the terms and
+ conditions of the GNU General Public License cover the whole
+ combination.
+
+ As a special exception, the copyright holders of this library give you
+ permission to link this library with independent modules to produce an
+ executable, regardless of the license terms of these independent
+ modules, and to copy and distribute the resulting executable under
+ terms of your choice, provided that you also meet, for each linked
+ independent module, the terms and conditions of the license of that
+ module. An independent module is a module which is not derived from
+ or based on this library. If you modify this library, you may extend
+ this exception to your version of the library, but you are not
+ obligated to do so. If you do not wish to do so, delete this
+ exception statement from your version. */
package gnu.classpath.tools.gjdoc;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/SeeTagImpl.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/SeeTagImpl.java
index f126c21aec3..971cdef5285 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/SeeTagImpl.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/SeeTagImpl.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/SerialFieldTagImpl.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/SerialFieldTagImpl.java
index 14516109966..a4408fc76ae 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/SerialFieldTagImpl.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/SerialFieldTagImpl.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/SourcePositionImpl.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/SourcePositionImpl.java
index 605d1321e8d..93f487912f1 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/SourcePositionImpl.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/SourcePositionImpl.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/TagContainer.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/TagContainer.java
index 597d73b9160..d3e243ede98 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/TagContainer.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/TagContainer.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/TagImpl.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/TagImpl.java
index 320ccfd20a8..d51ce239adf 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/TagImpl.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/TagImpl.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/TemporaryStore.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/TemporaryStore.java
index eb3417d42c2..f062b2a8dcc 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/TemporaryStore.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/TemporaryStore.java
@@ -1,115 +1,132 @@
-/* gnu.classpath.tools.gjdoc.TemporaryStore
- Copyright (C) 2001 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
-
-package gnu.classpath.tools.gjdoc;
-
-/**
- * Useful for passing big objects that are no longer needed by the
- * calling method, reducing memory usage. <p/>
- *
- * Consider the following problem:
- * <pre>
- * public class A {
- * public static void foo() {
- * long[] hugeArray = new long[1000000]; // takes around 8 MB
- * // ... fill hugeArray with some information ...
- * bar(hugeArray);
- * // ... hugeArray is no more required at this point
- * }
- * public static void bar(long[] arr) {
- * // ... process contents of arr ...
- * arr = null;
- * System.gc(); // NOTE: will not collect arr!
- * // ... do something memory-intensive where arr is not needed
- * }
- * }
- * </pre>
- *
- * In method <code>bar()</code>, the array cannot be garbage
- * collected because the local variable <code>hugeArray</code> in
- * method <code>foo()</code> still holds a reference to the array.
- * <p/>
- *
- * When calling <code>bar(new long[1000000]);</code> in
- * <code>arr</code> the array <i>can</i> be collected in
- * <code>bar()</code>, but that way it can't be initialized in
- * <code>foo()</code>. A local variable is needed for
- * initialization, but the variable can't be cleared before it is
- * passed to <code>bar()</code>! <p/>
- *
- * <code>TemporaryStore</code> is the solution for this
- * dilemma. The modified method <code>foo()</code> which uses a
- * <code>TemporaryStore</code> object would look like this:
- *
- * <pre>
- * public static void foo() {
- * long[] hugeArray = new long[1000000]; // takes around 7 MB
- * // ... fill hugeArray with some very important information ...
- * TemporaryStore tstore = new TemporaryStore(hugeArray);
- * hugeArray = null;
- * bar((long[])tstore.getAndClear());
- * }
- * </pre>
- *
- * When control flow is transferred to <code>bar()</code>,
- * <code>foo()</code> will hold no more references to the array
- * and so it can be garbage collected in <code>bar()</code>.
- *
- */
-public class TemporaryStore {
-
- private Object storedObject;
-
- /**
- * Temporarily store the given object for passing it to a
- * different method. <p/>
- *
- * The method constructing a new TemporaryStore object should
- * clear all other references to the stored object, so that
- * this TemporaryStore is the only object referencing it.
- *
- * @param storedObject the object to store temporarily
- *
- */
- public TemporaryStore(Object storedObject) {
- this.storedObject = storedObject;
- }
-
- /**
- * Return the stored object after clearing the reference to it.
- * <p/>
- *
- * When the user of this class followed the recommendations in
- * the documentation of @link{TemporaryStore(Object)}, the
- * returned reference will be the only reference to the stored
- * object after this method returns. If the returned reference
- * is passed in a method call, the called method will hold the
- * only reference to the stored object and can release it by
- * nulling the corresponding parameter.
- *
- * @return the object which was passed to the constructor.
- *
- */
- public Object getAndClear() {
- Object rc = this.storedObject;
- this.storedObject = null;
- return rc;
- }
-}
+/* gnu.classpath.tools.gjdoc.TemporaryStore
+ Copyright (C) 2001 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package gnu.classpath.tools.gjdoc;
+
+/**
+ * Useful for passing big objects that are no longer needed by the
+ * calling method, reducing memory usage. <p/>
+ *
+ * Consider the following problem:
+ * <pre>
+ * public class A {
+ * public static void foo() {
+ * long[] hugeArray = new long[1000000]; // takes around 8 MB
+ * // ... fill hugeArray with some information ...
+ * bar(hugeArray);
+ * // ... hugeArray is no more required at this point
+ * }
+ * public static void bar(long[] arr) {
+ * // ... process contents of arr ...
+ * arr = null;
+ * System.gc(); // NOTE: will not collect arr!
+ * // ... do something memory-intensive where arr is not needed
+ * }
+ * }
+ * </pre>
+ *
+ * In method <code>bar()</code>, the array cannot be garbage
+ * collected because the local variable <code>hugeArray</code> in
+ * method <code>foo()</code> still holds a reference to the array.
+ * <p/>
+ *
+ * When calling <code>bar(new long[1000000]);</code> in
+ * <code>arr</code> the array <i>can</i> be collected in
+ * <code>bar()</code>, but that way it can't be initialized in
+ * <code>foo()</code>. A local variable is needed for
+ * initialization, but the variable can't be cleared before it is
+ * passed to <code>bar()</code>! <p/>
+ *
+ * <code>TemporaryStore</code> is the solution for this
+ * dilemma. The modified method <code>foo()</code> which uses a
+ * <code>TemporaryStore</code> object would look like this:
+ *
+ * <pre>
+ * public static void foo() {
+ * long[] hugeArray = new long[1000000]; // takes around 7 MB
+ * // ... fill hugeArray with some very important information ...
+ * TemporaryStore tstore = new TemporaryStore(hugeArray);
+ * hugeArray = null;
+ * bar((long[])tstore.getAndClear());
+ * }
+ * </pre>
+ *
+ * When control flow is transferred to <code>bar()</code>,
+ * <code>foo()</code> will hold no more references to the array
+ * and so it can be garbage collected in <code>bar()</code>.
+ *
+ */
+public class TemporaryStore {
+
+ private Object storedObject;
+
+ /**
+ * Temporarily store the given object for passing it to a
+ * different method. <p/>
+ *
+ * The method constructing a new TemporaryStore object should
+ * clear all other references to the stored object, so that
+ * this TemporaryStore is the only object referencing it.
+ *
+ * @param storedObject the object to store temporarily
+ *
+ */
+ public TemporaryStore(Object storedObject) {
+ this.storedObject = storedObject;
+ }
+
+ /**
+ * Return the stored object after clearing the reference to it.
+ * <p/>
+ *
+ * When the user of this class followed the recommendations in
+ * the documentation of @link{TemporaryStore(Object)}, the
+ * returned reference will be the only reference to the stored
+ * object after this method returns. If the returned reference
+ * is passed in a method call, the called method will hold the
+ * only reference to the stored object and can release it by
+ * nulling the corresponding parameter.
+ *
+ * @return the object which was passed to the constructor.
+ *
+ */
+ public Object getAndClear() {
+ Object rc = this.storedObject;
+ this.storedObject = null;
+ return rc;
+ }
+}
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/TextTagImpl.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/TextTagImpl.java
index 6d7ee820c8a..f8f19630aad 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/TextTagImpl.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/TextTagImpl.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ThrowsTagImpl.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ThrowsTagImpl.java
index df0091de08a..b48236af016 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ThrowsTagImpl.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ThrowsTagImpl.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/Timer.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/Timer.java
index d1d832ce529..bd866b3c1b8 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/Timer.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/Timer.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/TimerDoclet.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/TimerDoclet.java
index 68d2c4d8b66..7d364a17210 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/TimerDoclet.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/TimerDoclet.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/TypeImpl.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/TypeImpl.java
index a66a85e8911..a0b4cf0d2ca 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/TypeImpl.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/TypeImpl.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/TypeVariableImpl.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/TypeVariableImpl.java
index 4524ab169bf..097b1ff869b 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/TypeVariableImpl.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/TypeVariableImpl.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ValueTagImpl.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ValueTagImpl.java
index 8f0ba79e6ee..14381dff537 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ValueTagImpl.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/ValueTagImpl.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/WritableType.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/WritableType.java
index 6293602b881..00f599bb2c2 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/WritableType.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/WritableType.java
@@ -1,27 +1,44 @@
-/* gnu.classpath.tools.gjdoc.WritableType
- Copyright (C) 2001 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
-
-package gnu.classpath.tools.gjdoc;
-
-public interface WritableType extends Cloneable {
-
- public void setDimension(String dimension);
- public Object clone() throws CloneNotSupportedException;
-}
+/* gnu.classpath.tools.gjdoc.WritableType
+ Copyright (C) 2001 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package gnu.classpath.tools.gjdoc;
+
+public interface WritableType extends Cloneable {
+
+ public void setDimension(String dimension);
+ public Object clone() throws CloneNotSupportedException;
+}
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/AdditionExpression.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/AdditionExpression.java
index bf9e3ff1c5c..ed2cb24bac8 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/AdditionExpression.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/AdditionExpression.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/AndExpression.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/AndExpression.java
index 9e9e13c99f2..6411cdac70c 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/AndExpression.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/AndExpression.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/BinaryBitwiseExpression.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/BinaryBitwiseExpression.java
index 4b0a993e5ef..90ae8920387 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/BinaryBitwiseExpression.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/BinaryBitwiseExpression.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/BinaryComputationExpression.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/BinaryComputationExpression.java
index 97cdf221eb2..519ab828730 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/BinaryComputationExpression.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/BinaryComputationExpression.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/BinaryEqualityExpression.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/BinaryEqualityExpression.java
index 27fe2cf1f22..7b3312e9192 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/BinaryEqualityExpression.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/BinaryEqualityExpression.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/BinaryExpression.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/BinaryExpression.java
index e44551d059e..28ba32f0123 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/BinaryExpression.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/BinaryExpression.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/BinaryLogicalExpression.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/BinaryLogicalExpression.java
index 00bbfccbcad..7314fa9bca7 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/BinaryLogicalExpression.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/BinaryLogicalExpression.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/BinaryRelationExpression.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/BinaryRelationExpression.java
index 91c4441ca3a..c7fbee838e2 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/BinaryRelationExpression.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/BinaryRelationExpression.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/BinaryShiftExpression.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/BinaryShiftExpression.java
index a5eac4d98e7..17129e25555 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/BinaryShiftExpression.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/BinaryShiftExpression.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/BitShiftRightExpression.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/BitShiftRightExpression.java
index 503421ed4d1..27ed3b308c5 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/BitShiftRightExpression.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/BitShiftRightExpression.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/CircularExpressionException.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/CircularExpressionException.java
index b745de41a27..008cee64a2b 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/CircularExpressionException.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/CircularExpressionException.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConditionalExpression.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConditionalExpression.java
index e4f86f65747..c01dc6a407b 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConditionalExpression.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConditionalExpression.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantBoolean.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantBoolean.java
index 4ef75c642d7..4119dd9d10a 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantBoolean.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantBoolean.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantByte.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantByte.java
index bbe30b29568..ccdeed99547 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantByte.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantByte.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantChar.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantChar.java
index 56d32308336..a6dfef16935 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantChar.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantChar.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantDouble.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantDouble.java
index ad9709277a7..1b8e35a7fce 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantDouble.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantDouble.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantExpression.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantExpression.java
index 3078b4c585c..78f8590c10d 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantExpression.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantExpression.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantFloat.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantFloat.java
index cf378dba4f8..0735ff64139 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantFloat.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantFloat.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantInteger.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantInteger.java
index 56217cc02d4..667eb615a93 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantInteger.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantInteger.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantLong.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantLong.java
index bfc1a0ad39e..c6828f4ec18 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantLong.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantLong.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantNull.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantNull.java
index 23f9659076b..e5b1e2532c3 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantNull.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantNull.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantShort.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantShort.java
index acd020de2bb..ef9f76e8790 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantShort.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantShort.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantString.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantString.java
index 847e2951a1a..ba24cc39230 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantString.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ConstantString.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/Context.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/Context.java
index 99093f7cb0c..f22dffb366d 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/Context.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/Context.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/DivisionExpression.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/DivisionExpression.java
index baaf65de642..caa9ae907ff 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/DivisionExpression.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/DivisionExpression.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/EqualExpression.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/EqualExpression.java
index c31ff884f73..18639adda43 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/EqualExpression.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/EqualExpression.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/Evaluator.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/Evaluator.java
index 94c54c25d30..e1d089f235e 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/Evaluator.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/Evaluator.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/EvaluatorEnvironment.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/EvaluatorEnvironment.java
index a268b965e2a..0f51f90dbb7 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/EvaluatorEnvironment.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/EvaluatorEnvironment.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ExclusiveOrExpression.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ExclusiveOrExpression.java
index 563cb1b0dc2..1d4b0fbb72d 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ExclusiveOrExpression.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ExclusiveOrExpression.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/Expression.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/Expression.java
index 660806d599f..6a0f3dc20cd 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/Expression.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/Expression.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/GreaterThanExpression.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/GreaterThanExpression.java
index 647ac77faea..6594b49678e 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/GreaterThanExpression.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/GreaterThanExpression.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/GreaterThanOrEqualExpression.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/GreaterThanOrEqualExpression.java
index e183482aaf1..51f3cd22d59 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/GreaterThanOrEqualExpression.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/GreaterThanOrEqualExpression.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/IdentifierExpression.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/IdentifierExpression.java
index d6cf3224b32..2d8df5ea734 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/IdentifierExpression.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/IdentifierExpression.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/IllegalExpressionException.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/IllegalExpressionException.java
index bb84a5547e7..315265e93d5 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/IllegalExpressionException.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/IllegalExpressionException.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/InclusiveOrExpression.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/InclusiveOrExpression.java
index 350027ea276..7a3d69e5b6d 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/InclusiveOrExpression.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/InclusiveOrExpression.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/LessThanExpression.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/LessThanExpression.java
index d57b862c9b3..dbddecb4143 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/LessThanExpression.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/LessThanExpression.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/LessThanOrEqualExpression.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/LessThanOrEqualExpression.java
index eaf24994e61..9ba697c0be9 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/LessThanOrEqualExpression.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/LessThanOrEqualExpression.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/LogicalAndExpression.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/LogicalAndExpression.java
index 44e50751f09..b78315ed2f4 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/LogicalAndExpression.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/LogicalAndExpression.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/LogicalNotExpression.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/LogicalNotExpression.java
index c315166d0df..dc85eb65c47 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/LogicalNotExpression.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/LogicalNotExpression.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/LogicalOrExpression.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/LogicalOrExpression.java
index 77c33b4fe6a..181bb68e276 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/LogicalOrExpression.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/LogicalOrExpression.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ModuloExpression.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ModuloExpression.java
index c8681177b7d..6375b163dfd 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ModuloExpression.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ModuloExpression.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/MultiplicationExpression.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/MultiplicationExpression.java
index 520380c3408..6108a97bf39 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/MultiplicationExpression.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/MultiplicationExpression.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/NegateExpression.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/NegateExpression.java
index e14a469c22e..6cdb0c9cce0 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/NegateExpression.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/NegateExpression.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/NotEqualExpression.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/NotEqualExpression.java
index c3d8ab234dc..c7db2550d5b 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/NotEqualExpression.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/NotEqualExpression.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/NotExpression.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/NotExpression.java
index 3351b8ef7c4..41bb0fc2be0 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/NotExpression.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/NotExpression.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ShiftLeftExpression.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ShiftLeftExpression.java
index af51cf3dea2..132cd35f46c 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ShiftLeftExpression.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ShiftLeftExpression.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ShiftRightExpression.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ShiftRightExpression.java
index 0aedf12f0de..bebd0ce5170 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ShiftRightExpression.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/ShiftRightExpression.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/SubtractionExpression.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/SubtractionExpression.java
index 14e5edf039e..8f9def918d0 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/SubtractionExpression.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/SubtractionExpression.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/Type.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/Type.java
index 47f9ea68d60..55c8b996594 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/Type.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/Type.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/TypeCastExpression.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/TypeCastExpression.java
index 8c06ee27a9d..46f0cc5346c 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/TypeCastExpression.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/TypeCastExpression.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/UnaryExpression.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/UnaryExpression.java
index e5421c061bf..9a912b95591 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/UnaryExpression.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/UnaryExpression.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/UnknownIdentifierException.java b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/UnknownIdentifierException.java
index f84970717a6..9eedd66172f 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/UnknownIdentifierException.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/gjdoc/expr/UnknownIdentifierException.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.gjdoc.expr;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/java2xhtml/Java2xhtml.java b/libjava/classpath/tools/gnu/classpath/tools/java2xhtml/Java2xhtml.java
index a7da7c4aa15..70e238ec7a3 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/java2xhtml/Java2xhtml.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/java2xhtml/Java2xhtml.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
/** Java2xhtml.java Version 0.9
* Produces an XHTML file from Java source code with syntax highlighting,
diff --git a/libjava/classpath/tools/gnu/classpath/tools/javah/ClassWrapper.java b/libjava/classpath/tools/gnu/classpath/tools/javah/ClassWrapper.java
index 22278eba84c..4b4d250469c 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/javah/ClassWrapper.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/javah/ClassWrapper.java
@@ -58,21 +58,21 @@ public class ClassWrapper
ClassWrapper superClass;
- ArrayList interfaceClasses;
+ ArrayList<ClassWrapper> interfaceClasses;
// The virtual table for this class.
- ArrayList vtable;
+ ArrayList<MethodNode> vtable;
// A set of all the bridge method targets we've found.
- HashSet bridgeTargets;
+ HashSet<String> bridgeTargets;
// A set of all the method names in this class.
- HashSet methodNames = new HashSet();
+ HashSet<String> methodNames = new HashSet<String>();
// This maps a method name + descriptor, e.g. "method()V", to the
// name chosen for the method. This is used when computing the
// names of bridge method targets.
- HashMap methodNameMap = new HashMap();
+ HashMap<String,String> methodNameMap = new HashMap<String,String>();
public ClassWrapper(Main classpath)
{
@@ -81,7 +81,7 @@ public class ClassWrapper
public boolean hasNativeMethod()
{
- Iterator i = methods.iterator();
+ Iterator<?> i = methods.iterator();
while (i.hasNext())
{
MethodNode method = (MethodNode) i.next();
@@ -104,7 +104,7 @@ public class ClassWrapper
return false;
}
- private void linkSupers() throws IOException
+ void linkSupers() throws IOException
{
if (superName == null)
{
@@ -115,7 +115,7 @@ public class ClassWrapper
{
superClass = classpath.getClass(superName);
assert interfaceClasses == null;
- interfaceClasses = new ArrayList();
+ interfaceClasses = new ArrayList<ClassWrapper>();
for (int i = 0; i < interfaces.size(); ++i)
{
String ifname = (String) interfaces.get(i);
@@ -131,7 +131,7 @@ public class ClassWrapper
{
for (int i = vtable.size() - 1; i >= 0; --i)
{
- MethodNode base = (MethodNode) vtable.get(i);
+ MethodNode base = vtable.get(i);
if (MethodHelper.overrides(method, base))
return i;
}
@@ -140,7 +140,7 @@ public class ClassWrapper
private void addInterfaceMethods(ClassWrapper iface)
{
- Iterator i = iface.methods.iterator();
+ Iterator<?> i = iface.methods.iterator();
while (i.hasNext())
{
MethodNode im = (MethodNode) i.next();
@@ -159,7 +159,7 @@ public class ClassWrapper
{
if (base.interfaceClasses == null)
return;
- Iterator i = base.interfaceClasses.iterator();
+ Iterator<?> i = base.interfaceClasses.iterator();
while (i.hasNext())
{
ClassWrapper iface = (ClassWrapper) i.next();
@@ -169,7 +169,7 @@ public class ClassWrapper
private void addLocalMethods()
{
- Iterator i = methods.iterator();
+ Iterator<?> i = methods.iterator();
while (i.hasNext())
{
MethodNode meth = (MethodNode) i.next();
@@ -191,16 +191,16 @@ public class ClassWrapper
if (superClass != null)
{
superClass.makeVtable();
- vtable = new ArrayList(superClass.vtable);
- bridgeTargets = new HashSet(superClass.bridgeTargets);
- methodNameMap = new HashMap(superClass.methodNameMap);
+ vtable = new ArrayList<MethodNode>(superClass.vtable);
+ bridgeTargets = new HashSet<String>(superClass.bridgeTargets);
+ methodNameMap = new HashMap<String,String>(superClass.methodNameMap);
}
else
{
// Object.
- vtable = new ArrayList();
- bridgeTargets = new HashSet();
- methodNameMap = new HashMap();
+ vtable = new ArrayList<MethodNode>();
+ bridgeTargets = new HashSet<String>();
+ methodNameMap = new HashMap<String,String>();
}
addLocalMethods();
addInterfaces(this);
@@ -211,7 +211,7 @@ public class ClassWrapper
// methods by definition override a method from the superclass --
// and we have to consider the superclass' header as an
// unchangeable entity.
- Iterator i = methods.iterator();
+ Iterator<?> i = methods.iterator();
while (i.hasNext())
{
MethodNode m = (MethodNode) i.next();
@@ -234,7 +234,7 @@ public class ClassWrapper
private void printFields(CniPrintStream out)
{
- Iterator i = fields.iterator();
+ Iterator<?> i = fields.iterator();
ClassWrapper self = superClass;
while (i.hasNext())
{
@@ -251,7 +251,7 @@ public class ClassWrapper
// A given method is either static, overrides a super method, or
// is already in vtable order.
- Iterator i = methods.iterator();
+ Iterator<?> i = methods.iterator();
while (i.hasNext())
{
MethodNode m = (MethodNode) i.next();
@@ -266,15 +266,15 @@ public class ClassWrapper
}
}
- private void printTextList(PrintStream out, int what, ArrayList textList)
+ private void printTextList(PrintStream out, int what, ArrayList<Text> textList)
{
if (textList == null)
return;
- Iterator i = textList.iterator();
+ Iterator<Text> i = textList.iterator();
boolean first = true;
while (i.hasNext())
{
- Text item = (Text) i.next();
+ Text item = i.next();
if (item.type == what)
{
if (first)
@@ -296,7 +296,7 @@ public class ClassWrapper
}
// This prints the body of a class to a CxxPrintStream.
- private void printContents(CniPrintStream out, ArrayList textList)
+ private void printContents(CniPrintStream out, ArrayList<Text> textList)
throws IOException
{
printTextList(out, Text.PREPEND, textList);
@@ -338,7 +338,7 @@ public class ClassWrapper
{
linkSupers();
- ArrayList textList = classpath.getClassTextList(name);
+ ArrayList<Text> textList = classpath.getClassTextList(name);
out.println("// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-");
out.println();
diff --git a/libjava/classpath/tools/gnu/classpath/tools/javah/CniPrintStream.java b/libjava/classpath/tools/gnu/classpath/tools/javah/CniPrintStream.java
index 315fd8ae326..52e6e539da7 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/javah/CniPrintStream.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/javah/CniPrintStream.java
@@ -55,7 +55,7 @@ public class CniPrintStream
boolean sawArray;
// All the classes referenced by this header.
- HashSet allClasses = new HashSet();
+ HashSet<String> allClasses = new HashSet<String>();
String[] previousPackage = new String[0];
@@ -245,7 +245,7 @@ public class CniPrintStream
out.println();
}
- String[] classes = (String[]) allClasses.toArray(new String[0]);
+ String[] classes = allClasses.toArray(new String[0]);
Arrays.sort(classes);
boolean first = true;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/javah/CniStubPrinter.java b/libjava/classpath/tools/gnu/classpath/tools/javah/CniStubPrinter.java
index bbdda9249a1..9b5dc2c3611 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/javah/CniStubPrinter.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/javah/CniStubPrinter.java
@@ -103,7 +103,7 @@ public class CniStubPrinter
out.println("#include <" + klass.name + ".h>");
out.println();
- Iterator i = klass.methods.iterator();
+ Iterator<?> i = klass.methods.iterator();
boolean first = true;
while (i.hasNext())
{
diff --git a/libjava/classpath/tools/gnu/classpath/tools/javah/GcjhMain.java b/libjava/classpath/tools/gnu/classpath/tools/javah/GcjhMain.java
index 15bcec2630b..0b69d311658 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/javah/GcjhMain.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/javah/GcjhMain.java
@@ -49,7 +49,7 @@ import java.util.ArrayList;
public class GcjhMain extends Main
{
- ArrayList commands = new ArrayList();
+ ArrayList<Text> commands = new ArrayList<Text>();
public GcjhMain()
{
diff --git a/libjava/classpath/tools/gnu/classpath/tools/javah/JniIncludePrinter.java b/libjava/classpath/tools/gnu/classpath/tools/javah/JniIncludePrinter.java
index ba44a571133..bbede8ea0c3 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/javah/JniIncludePrinter.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/javah/JniIncludePrinter.java
@@ -59,11 +59,13 @@ public class JniIncludePrinter
}
private void writeFields(ClassWrapper klass, JniPrintStream out)
+ throws IOException
{
+ klass.linkSupers();
boolean wroteAny = false;
for (; klass != null; klass = klass.superClass)
{
- Iterator i = klass.fields.iterator();
+ Iterator<?> i = klass.fields.iterator();
while (i.hasNext())
{
FieldNode field = (FieldNode) i.next();
@@ -138,7 +140,7 @@ public class JniIncludePrinter
out.println("#endif");
out.println();
- Iterator i = klass.methods.iterator();
+ Iterator<?> i = klass.methods.iterator();
while (i.hasNext())
{
MethodNode method = (MethodNode) i.next();
diff --git a/libjava/classpath/tools/gnu/classpath/tools/javah/JniPrintStream.java b/libjava/classpath/tools/gnu/classpath/tools/javah/JniPrintStream.java
index a0461f475fd..96f9e7d1aa7 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/javah/JniPrintStream.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/javah/JniPrintStream.java
@@ -54,7 +54,7 @@ public class JniPrintStream
Main classpath;
// This is used to determine whether a method has an overload.
- HashMap methodNameMap = new HashMap();
+ HashMap<String,Integer> methodNameMap = new HashMap<String,Integer>();
public JniPrintStream(Main classpath, OutputStream out, ClassWrapper klass)
{
@@ -65,7 +65,7 @@ public class JniPrintStream
private void computeOverloads(ClassWrapper klass)
{
- Iterator i = klass.methods.iterator();
+ Iterator<?> i = klass.methods.iterator();
while (i.hasNext())
{
MethodNode method = (MethodNode) i.next();
@@ -73,11 +73,11 @@ public class JniPrintStream
continue;
if (methodNameMap.containsKey(method.name))
{
- Integer val = (Integer) methodNameMap.get(method.name);
- methodNameMap.put(method.name, new Integer(val.intValue() + 1));
+ Integer val = methodNameMap.get(method.name);
+ methodNameMap.put(method.name, Integer.valueOf(val.intValue() + 1));
}
else
- methodNameMap.put(method.name, new Integer(1));
+ methodNameMap.put(method.name, Integer.valueOf(1));
}
}
diff --git a/libjava/classpath/tools/gnu/classpath/tools/javah/JniStubPrinter.java b/libjava/classpath/tools/gnu/classpath/tools/javah/JniStubPrinter.java
index d4b34fc2067..41b90b017db 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/javah/JniStubPrinter.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/javah/JniStubPrinter.java
@@ -87,7 +87,7 @@ public class JniStubPrinter
out.print(klass.name.replace('/', '_'));
out.println(".h>");
- Iterator i = klass.methods.iterator();
+ Iterator<?> i = klass.methods.iterator();
while (i.hasNext())
{
MethodNode method = (MethodNode) i.next();
diff --git a/libjava/classpath/tools/gnu/classpath/tools/javah/Keywords.java b/libjava/classpath/tools/gnu/classpath/tools/javah/Keywords.java
index b281197c5e9..73e2c627caa 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/javah/Keywords.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/javah/Keywords.java
@@ -152,10 +152,10 @@ public class Keywords
"xor_eq"
};
- private static final HashSet keywords;
+ private static final HashSet<String> keywords;
static
{
- keywords = new HashSet();
+ keywords = new HashSet<String>();
for (int i = 0; i < words.length; ++i)
keywords.add(words[i]);
}
diff --git a/libjava/classpath/tools/gnu/classpath/tools/javah/Main.java b/libjava/classpath/tools/gnu/classpath/tools/javah/Main.java
index bfca4444645..15fd52c8a05 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/javah/Main.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/javah/Main.java
@@ -96,10 +96,10 @@ public class Main
boolean force;
// Map class names to class wrappers.
- HashMap classMap = new HashMap();
+ HashMap<String,ClassWrapper> classMap = new HashMap<String,ClassWrapper>();
// Map class names to lists of Text objects.
- HashMap textMap = new HashMap();
+ HashMap<String,ArrayList<Text>> textMap = new HashMap<String,ArrayList<Text>>();
void readCommandFile(String textFileName) throws OptionException
{
@@ -114,7 +114,7 @@ public class Main
}
BufferedReader reader = new BufferedReader(new InputStreamReader(fis));
String currentClass = null;
- ArrayList currentValues = null;
+ ArrayList<Text> currentValues = null;
while (true)
{
String line;
@@ -142,7 +142,7 @@ public class Main
textMap.put(currentClass, currentValues);
}
currentClass = value;
- currentValues = new ArrayList();
+ currentValues = new ArrayList<Text>();
continue;
}
if (currentClass == null)
@@ -165,7 +165,7 @@ public class Main
}
}
- void scanDirectory(File dir, final HashSet results)
+ void scanDirectory(File dir, final HashSet<Object> results)
{
File[] files = dir.listFiles(new FileFilter()
{
@@ -317,15 +317,15 @@ public class Main
return result;
}
- private void writeHeaders(HashMap klasses, Printer printer)
+ private void writeHeaders(HashMap<File,ClassWrapper> klasses, Printer printer)
throws IOException
{
- Iterator i = klasses.entrySet().iterator();
+ Iterator<Map.Entry<File,ClassWrapper>> i = klasses.entrySet().iterator();
while (i.hasNext())
{
- Map.Entry e = (Map.Entry) i.next();
- File file = (File) e.getKey();
- ClassWrapper klass = (ClassWrapper) e.getValue();
+ Map.Entry<File,ClassWrapper> e = i.next();
+ File file = e.getKey();
+ ClassWrapper klass = e.getValue();
if (verbose)
System.err.println("[writing " + klass + " as " + file + "]");
printer.printClass(file, klass);
@@ -368,7 +368,7 @@ public class Main
// First we load all of the files. That way if
// there are references between the files we will
// be loading the set that the user asked for.
- HashSet klasses = new HashSet();
+ HashSet<Object> klasses = new HashSet<Object>();
if (allDirectory != null)
scanDirectory(new File(allDirectory), klasses);
// Add the command-line arguments. We use the type of
@@ -385,8 +385,8 @@ public class Main
}
}
- Iterator i = klasses.iterator();
- HashMap results = new HashMap();
+ Iterator<Object> i = klasses.iterator();
+ HashMap<File,ClassWrapper> results = new HashMap<File,ClassWrapper>();
while (i.hasNext())
{
// Let user specify either kind of class name or a
@@ -419,9 +419,9 @@ public class Main
writeHeaders(results, printer);
}
- public ArrayList getClassTextList(String name)
+ public ArrayList<Text> getClassTextList(String name)
{
- return (ArrayList) textMap.get(name);
+ return textMap.get(name);
}
private ClassWrapper readClass(InputStream is) throws IOException
diff --git a/libjava/classpath/tools/gnu/classpath/tools/javah/MethodHelper.java b/libjava/classpath/tools/gnu/classpath/tools/javah/MethodHelper.java
index e12e47c540e..8743f9a84f4 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/javah/MethodHelper.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/javah/MethodHelper.java
@@ -64,7 +64,7 @@ public class MethodHelper
{
if ((meth.access & Opcodes.ACC_BRIDGE) == 0)
return null;
- Iterator i = meth.instructions.iterator();
+ Iterator<?> i = meth.instructions.iterator();
while (i.hasNext())
{
AbstractInsnNode insn = (AbstractInsnNode) i.next();
diff --git a/libjava/classpath/tools/gnu/classpath/tools/javah/PathOptionGroup.java b/libjava/classpath/tools/gnu/classpath/tools/javah/PathOptionGroup.java
index ea61eece751..8eec4cc6051 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/javah/PathOptionGroup.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/javah/PathOptionGroup.java
@@ -55,11 +55,11 @@ import java.util.StringTokenizer;
public class PathOptionGroup
extends OptionGroup
{
- ArrayList classpath = new ArrayList();
+ ArrayList<String> classpath = new ArrayList<String>();
- ArrayList bootclasspath = new ArrayList();
+ ArrayList<String> bootclasspath = new ArrayList<String>();
- void setPath(ArrayList list, String path)
+ void setPath(ArrayList<String> list, String path)
{
list.clear();
StringTokenizer st = new StringTokenizer(path, File.pathSeparator);
@@ -69,7 +69,7 @@ public class PathOptionGroup
}
}
- void addExtDirs(ArrayList list, String path)
+ void addExtDirs(ArrayList<String> list, String path)
{
StringTokenizer tok = new StringTokenizer(path, File.pathSeparator);
while (tok.hasMoreTokens())
@@ -133,15 +133,15 @@ public class PathOptionGroup
public URLClassLoader getLoader() throws MalformedURLException
{
- ArrayList urls = new ArrayList();
+ ArrayList<URL> urls = new ArrayList<URL>();
classpath.addAll(bootclasspath);
- Iterator i = classpath.iterator();
+ Iterator<String> i = classpath.iterator();
while (i.hasNext())
{
- String f = (String) i.next();
+ String f = i.next();
urls.add(new File(f).toURL());
}
- URL[] urlArray = (URL[]) urls.toArray(new URL[0]);
+ URL[] urlArray = urls.toArray(new URL[0]);
return new URLClassLoader(urlArray);
}
}
diff --git a/libjava/classpath/tools/gnu/classpath/tools/rmic/ClassRmicCompiler.java b/libjava/classpath/tools/gnu/classpath/tools/rmic/ClassRmicCompiler.java
index 255946711db..251e2199e0d 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/rmic/ClassRmicCompiler.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/rmic/ClassRmicCompiler.java
@@ -17,7 +17,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.rmic;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/rmic/CompilationError.java b/libjava/classpath/tools/gnu/classpath/tools/rmic/CompilationError.java
index 176a09598d2..244b469133e 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/rmic/CompilationError.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/rmic/CompilationError.java
@@ -17,7 +17,24 @@ You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
02110-1301 USA.
-*/
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
package gnu.classpath.tools.rmic;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/rmic/Generator.java b/libjava/classpath/tools/gnu/classpath/tools/rmic/Generator.java
index 70793cf6cd3..270f6eaf806 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/rmic/Generator.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/rmic/Generator.java
@@ -17,7 +17,24 @@ You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
02110-1301 USA.
-*/
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
package gnu.classpath.tools.rmic;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/rmic/GiopIo.java b/libjava/classpath/tools/gnu/classpath/tools/rmic/GiopIo.java
index 0d77d1a787e..42f291b4fb5 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/rmic/GiopIo.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/rmic/GiopIo.java
@@ -17,7 +17,24 @@ You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
02110-1301 USA.
-*/
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
package gnu.classpath.tools.rmic;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/rmic/HashFinder.java b/libjava/classpath/tools/gnu/classpath/tools/rmic/HashFinder.java
index cf4d67f0cc0..c3e363c8da1 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/rmic/HashFinder.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/rmic/HashFinder.java
@@ -17,7 +17,23 @@ You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
02110-1301 USA.
-*/
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.rmic;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/rmic/Main.java b/libjava/classpath/tools/gnu/classpath/tools/rmic/Main.java
index 28f4d193144..204bb3be719 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/rmic/Main.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/rmic/Main.java
@@ -17,7 +17,24 @@ You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
02110-1301 USA.
-*/
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
package gnu.classpath.tools.rmic;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/rmic/MethodGenerator.java b/libjava/classpath/tools/gnu/classpath/tools/rmic/MethodGenerator.java
index 650468d9465..ecac907657d 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/rmic/MethodGenerator.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/rmic/MethodGenerator.java
@@ -17,7 +17,24 @@ You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
02110-1301 USA.
-*/
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
package gnu.classpath.tools.rmic;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/rmic/RMICException.java b/libjava/classpath/tools/gnu/classpath/tools/rmic/RMICException.java
index 300d60947d7..28eb8d42c56 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/rmic/RMICException.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/rmic/RMICException.java
@@ -16,8 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.rmic;
@@ -25,7 +41,7 @@ package gnu.classpath.tools.rmic;
* Thrown by the underlying compiler used by RMIC when it fails to compile a
* file.
*
- * @author Dalibor Topic <robilad@kaffe.org>
+ * @author Dalibor Topic (robilad@kaffe.org)
*/
public class RMICException
extends Exception
diff --git a/libjava/classpath/tools/gnu/classpath/tools/rmic/RmiMethodGenerator.java b/libjava/classpath/tools/gnu/classpath/tools/rmic/RmiMethodGenerator.java
index b526bbb9f75..8d1a1e805ba 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/rmic/RmiMethodGenerator.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/rmic/RmiMethodGenerator.java
@@ -22,8 +22,18 @@
making a combined work based on this library. Thus, the terms and
conditions of the GNU General Public License cover the whole
combination.
-*/
+ As a special exception, the copyright holders of this library give you
+ permission to link this library with independent modules to produce an
+ executable, regardless of the license terms of these independent
+ modules, and to copy and distribute the resulting executable under
+ terms of your choice, provided that you also meet, for each linked
+ independent module, the terms and conditions of the license of that
+ module. An independent module is a module which is not derived from
+ or based on this library. If you modify this library, you may extend
+ this exception to your version of the library, but you are not
+ obligated to do so. If you do not wish to do so, delete this
+ exception statement from your version. */
package gnu.classpath.tools.rmic;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/rmic/RmicBackend.java b/libjava/classpath/tools/gnu/classpath/tools/rmic/RmicBackend.java
index 60eb854ca4c..db71b21effe 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/rmic/RmicBackend.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/rmic/RmicBackend.java
@@ -17,7 +17,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.rmic;
public interface RmicBackend
diff --git a/libjava/classpath/tools/gnu/classpath/tools/rmic/SourceRmicCompiler.java b/libjava/classpath/tools/gnu/classpath/tools/rmic/SourceRmicCompiler.java
index 20ab8c15637..a6f642b7997 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/rmic/SourceRmicCompiler.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/rmic/SourceRmicCompiler.java
@@ -22,8 +22,18 @@ Linking this library statically or dynamically with other modules is
making a combined work based on this library. Thus, the terms and
conditions of the GNU General Public License cover the whole
combination.
-*/
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.rmic;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/rmic/Variables.java b/libjava/classpath/tools/gnu/classpath/tools/rmic/Variables.java
index bddf5f78377..e3568e93340 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/rmic/Variables.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/rmic/Variables.java
@@ -17,7 +17,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.rmic;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/rmic/WrapUnWrapper.java b/libjava/classpath/tools/gnu/classpath/tools/rmic/WrapUnWrapper.java
index c51925fa6b9..3737334a458 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/rmic/WrapUnWrapper.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/rmic/WrapUnWrapper.java
@@ -17,7 +17,23 @@ You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
02110-1301 USA.
-*/
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.rmic;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/serialver/SerialVer.java b/libjava/classpath/tools/gnu/classpath/tools/serialver/SerialVer.java
index a8c526c82ef..ba586170e52 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/serialver/SerialVer.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/serialver/SerialVer.java
@@ -16,8 +16,24 @@
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
-
+ 02111-1307 USA.
+
+ Linking this library statically or dynamically with other modules is
+ making a combined work based on this library. Thus, the terms and
+ conditions of the GNU General Public License cover the whole
+ combination.
+
+ As a special exception, the copyright holders of this library give you
+ permission to link this library with independent modules to produce an
+ executable, regardless of the license terms of these independent
+ modules, and to copy and distribute the resulting executable under
+ terms of your choice, provided that you also meet, for each linked
+ independent module, the terms and conditions of the license of that
+ module. An independent module is a module which is not derived from
+ or based on this library. If you modify this library, you may extend
+ this exception to your version of the library, but you are not
+ obligated to do so. If you do not wish to do so, delete this
+ exception statement from your version. */
package gnu.classpath.tools.serialver;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/taglets/AuthorTaglet.java b/libjava/classpath/tools/gnu/classpath/tools/taglets/AuthorTaglet.java
index d3bb3719b92..fd6e924f18c 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/taglets/AuthorTaglet.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/taglets/AuthorTaglet.java
@@ -1,276 +1,293 @@
-/* gnu.classpath.tools.taglets.AuthorTaglet
- Copyright (C) 2001 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
-
-package gnu.classpath.tools.taglets;
-
-import java.util.Map;
-
-import java.util.regex.Pattern;
-import java.util.regex.Matcher;
-
-import com.sun.tools.doclets.Taglet;
-
-import com.sun.javadoc.Tag;
-
-/**
- * The default Taglet which handles Author information.
- *
- * @author Julian Scheid (julian@sektor37.de)
- */
-public class AuthorTaglet implements Taglet {
-
- /**
- * Enum class which denotes whether and how to replace email
- * addresses in author tags.
- */
- public static class EmailReplacement {
- private EmailReplacement() {}
-
- /**
- * Specifies that email addresses should not be replaced.
- */
- public static final EmailReplacement NO_REPLACEMENT = new EmailReplacement();
-
- /**
- * Specifies that author tag text matching "Real Name
- * (user@domain.tld)" is converted to "&lt;a
- * href="mailto:user@domain.tld"&gt;Real Name&lt;/a&gt;.
- */
- public static final EmailReplacement MAILTO_NAME = new EmailReplacement();
-
- /**
- * Specifies that author tag text matching "Real Name
- * (user@domain.tld)" is converted to "Real Name (&lt;a
- * href="mailto:user@domain.tld"&gt;user@domain.tld&lt;/a&gt;).
- */
- public static final EmailReplacement NAME_MAILTO_ADDRESS = new EmailReplacement();
-
- /**
- * Specifies that author tag text matching "Real Name
- * (user@domain.tld)" is converted to "Real Name (user AT
- * domain DOT tld)", where the "AT" and "DOT" replacement are
- * specified by AuthorTaglet.emailAtReplacement and
- * AuthorTaglet.emailDotReplacement.
- */
- public static final EmailReplacement NAME_MANGLED_ADDRESS = new EmailReplacement();
- }
-
- private static EmailReplacement emailReplacementType = EmailReplacement.NO_REPLACEMENT;
- private static String atReplacement = " <b>at</b> ";
- private static String dotReplacement = " <b>dot</b> ";
-
- private static final String NAME = "author";
- private static final String SINGLE_HEADER = "Author:";
- private static final String MULTI_HEADER = "Authors:";
-
- private static boolean enabled = true;
-
- /**
- * Matches <code>.</code> (dot).
- */
- private static final Pattern dotPattern = Pattern.compile("[.]");
-
- /**
- * Matches <code>@</code> (at sign).
- */
- private static final Pattern atPattern = Pattern.compile("[@]");
-
- /**
- * Matches <code>Real Name (user@domain.tld)</code>.
- */
- private static final Pattern authorEmailPattern
- = Pattern.compile("^"
- + "\\s*" // optional whitespace
- + "(" // group #1 start (real name)
- + "(?:[^\t\r\n ]|\\()+" // first name
- + "(?:\\s+(?:[^\t\r\n ]|\\()+)*" // additional names
- + ")" // group #1 end
- + "\\s*" // optional whitespace
- + "[(<]" // opening paren
- + "\\s*" // optional whitespace
- + "(" // group #2 start (email address)
- + "(" // group #3 start (email user)
- + "[A-z0-9_\\-\\.]+" // username
- + ")" // group #3 end
- + "[@]" // at sign
- + "[A-z0-9_\\-]+(?:[.][A-z0-9_\\-]+)+[A-z]" // domain
- + ")" // group #2 end
- + "\\s*" // optional whitespace
- + "(?:\\)|>)" // closing paren
- + "$");
-
- public String getName() {
- return NAME;
- }
-
- public boolean inField() {
- return true;
- }
-
- public boolean inConstructor() {
- return true;
- }
-
- public boolean inMethod() {
- return true;
- }
-
- public boolean inOverview() {
- return true;
- }
-
- public boolean inPackage() {
- return true;
- }
-
- public boolean inType() {
- return true;
- }
-
- public boolean isInlineTag() {
- return false;
- }
-
- public static void register(Map tagletMap) {
- AuthorTaglet authorTaglet = new AuthorTaglet();
- tagletMap.put(authorTaglet.getName(), authorTaglet);
- }
-
- public String toString(Tag tag) {
- if (enabled) {
- return toString(new Tag[] { tag });
- }
- else {
- return null;
- }
- }
-
- public String toString(Tag[] tags) {
- if (!enabled || tags.length == 0) {
- return null;
- }
- else {
- boolean haveValidTag = false;
- for (int i = 0; i < tags.length && !haveValidTag; ++i) {
- if (tags[i].text().length() > 0) {
- haveValidTag = true;
- }
- }
-
- if (haveValidTag) {
- StringBuffer result = new StringBuffer();
- result.append("<dl class=\"tag list\">");
- result.append("<dt class=\"tag section header\"><b>");
- if (tags.length == 1) {
- result.append(SINGLE_HEADER);
- }
- else {
- result.append(MULTI_HEADER);
- }
- result.append("</b></dt>");
- for (int i = 0; i < tags.length; i++) {
- result.append("<dd class=\"tag item\">");
- result.append(replaceEmail(tags[i].text()));
- result.append("</dd>");
- }
- result.append("</dl>");
- return result.toString();
- }
- else {
- return null;
- }
- }
- }
-
- /**
- * Reformat the tag text according to {@link #emailReplacementType}.
- */
- private String replaceEmail(String text) {
-
- if (EmailReplacement.NO_REPLACEMENT == emailReplacementType) {
- return text;
- }
- else {
- Matcher matcher = authorEmailPattern.matcher(text);
- if (matcher.matches()) {
- String realName = matcher.group(1);
- String emailAddress = matcher.group(2);
- if (EmailReplacement.MAILTO_NAME == emailReplacementType) {
- return "<a href=\"mailto:" + emailAddress + "\">" + realName + "</a>";
- }
- else if (EmailReplacement.NAME_MAILTO_ADDRESS == emailReplacementType) {
- return realName + " (<a href=\"mailto:" + emailAddress + "\">" + emailAddress + "</a>)";
- }
- else if (EmailReplacement.NAME_MANGLED_ADDRESS == emailReplacementType) {
- Matcher dotMatcher = dotPattern.matcher(emailAddress);
- Matcher atMatcher = atPattern.matcher(dotMatcher.replaceAll(dotReplacement));
- String mangledAddress = atMatcher.replaceAll(atReplacement);
- return realName + " (" + mangledAddress + ")";
- }
- else {
- // this shouldn't happen
- return text;
- }
- }
- else {
- return text;
- }
- }
- }
-
- /**
- * Set the email replacement type.
- */
- public static void setEmailReplacementType(EmailReplacement emailReplacementType)
- {
- if (null == emailReplacementType) {
- throw new NullPointerException();
- }
- AuthorTaglet.emailReplacementType = emailReplacementType;
- }
-
- /**
- * Set the HTML text by which the <code>@</code> (at sign) in email
- * addresses should be replaced if the email replacement type is
- * <code>NAME_MANGLED_ADDRESS</code>.
- */
- public static void setAtReplacement(String atReplacement)
- {
- AuthorTaglet.atReplacement = atReplacement;
- }
-
- /**
- * Set the HTML text by which the <code>.</code> (dot) in email
- * addresses should be replaced if the email replacement type is
- * <code>NAME_MANGLED_ADDRESS</code>.
- */
- public static void setDotReplacement(String dotReplacement)
- {
- AuthorTaglet.dotReplacement = dotReplacement;
- }
-
- /**
- * Enables/disables this taglet.
- */
- public static void setTagletEnabled(boolean enabled)
- {
- AuthorTaglet.enabled = enabled;
- }
-}
+/* gnu.classpath.tools.taglets.AuthorTaglet
+ Copyright (C) 2001 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package gnu.classpath.tools.taglets;
+
+import java.util.Map;
+
+import java.util.regex.Pattern;
+import java.util.regex.Matcher;
+
+import com.sun.tools.doclets.Taglet;
+
+import com.sun.javadoc.Tag;
+
+/**
+ * The default Taglet which handles Author information.
+ *
+ * @author Julian Scheid (julian@sektor37.de)
+ */
+public class AuthorTaglet implements Taglet {
+
+ /**
+ * Enum class which denotes whether and how to replace email
+ * addresses in author tags.
+ */
+ public static class EmailReplacement {
+ private EmailReplacement() {}
+
+ /**
+ * Specifies that email addresses should not be replaced.
+ */
+ public static final EmailReplacement NO_REPLACEMENT = new EmailReplacement();
+
+ /**
+ * Specifies that author tag text matching "Real Name
+ * (user@domain.tld)" is converted to "&lt;a
+ * href="mailto:user@domain.tld"&gt;Real Name&lt;/a&gt;.
+ */
+ public static final EmailReplacement MAILTO_NAME = new EmailReplacement();
+
+ /**
+ * Specifies that author tag text matching "Real Name
+ * (user@domain.tld)" is converted to "Real Name (&lt;a
+ * href="mailto:user@domain.tld"&gt;user@domain.tld&lt;/a&gt;).
+ */
+ public static final EmailReplacement NAME_MAILTO_ADDRESS = new EmailReplacement();
+
+ /**
+ * Specifies that author tag text matching "Real Name
+ * (user@domain.tld)" is converted to "Real Name (user AT
+ * domain DOT tld)", where the "AT" and "DOT" replacement are
+ * specified by AuthorTaglet.emailAtReplacement and
+ * AuthorTaglet.emailDotReplacement.
+ */
+ public static final EmailReplacement NAME_MANGLED_ADDRESS = new EmailReplacement();
+ }
+
+ private static EmailReplacement emailReplacementType = EmailReplacement.NO_REPLACEMENT;
+ private static String atReplacement = " <b>at</b> ";
+ private static String dotReplacement = " <b>dot</b> ";
+
+ private static final String NAME = "author";
+ private static final String SINGLE_HEADER = "Author:";
+ private static final String MULTI_HEADER = "Authors:";
+
+ private static boolean enabled = true;
+
+ /**
+ * Matches <code>.</code> (dot).
+ */
+ private static final Pattern dotPattern = Pattern.compile("[.]");
+
+ /**
+ * Matches <code>@</code> (at sign).
+ */
+ private static final Pattern atPattern = Pattern.compile("[@]");
+
+ /**
+ * Matches <code>Real Name (user@domain.tld)</code>.
+ */
+ private static final Pattern authorEmailPattern
+ = Pattern.compile("^"
+ + "\\s*" // optional whitespace
+ + "(" // group #1 start (real name)
+ + "(?:[^\t\r\n ]|\\()+" // first name
+ + "(?:\\s+(?:[^\t\r\n ]|\\()+)*" // additional names
+ + ")" // group #1 end
+ + "\\s*" // optional whitespace
+ + "[(<]" // opening paren
+ + "\\s*" // optional whitespace
+ + "(" // group #2 start (email address)
+ + "(" // group #3 start (email user)
+ + "[A-z0-9_\\-\\.]+" // username
+ + ")" // group #3 end
+ + "[@]" // at sign
+ + "[A-z0-9_\\-]+(?:[.][A-z0-9_\\-]+)+[A-z]" // domain
+ + ")" // group #2 end
+ + "\\s*" // optional whitespace
+ + "(?:\\)|>)" // closing paren
+ + "$");
+
+ public String getName() {
+ return NAME;
+ }
+
+ public boolean inField() {
+ return true;
+ }
+
+ public boolean inConstructor() {
+ return true;
+ }
+
+ public boolean inMethod() {
+ return true;
+ }
+
+ public boolean inOverview() {
+ return true;
+ }
+
+ public boolean inPackage() {
+ return true;
+ }
+
+ public boolean inType() {
+ return true;
+ }
+
+ public boolean isInlineTag() {
+ return false;
+ }
+
+ public static void register(Map tagletMap) {
+ AuthorTaglet authorTaglet = new AuthorTaglet();
+ tagletMap.put(authorTaglet.getName(), authorTaglet);
+ }
+
+ public String toString(Tag tag) {
+ if (enabled) {
+ return toString(new Tag[] { tag });
+ }
+ else {
+ return null;
+ }
+ }
+
+ public String toString(Tag[] tags) {
+ if (!enabled || tags.length == 0) {
+ return null;
+ }
+ else {
+ boolean haveValidTag = false;
+ for (int i = 0; i < tags.length && !haveValidTag; ++i) {
+ if (tags[i].text().length() > 0) {
+ haveValidTag = true;
+ }
+ }
+
+ if (haveValidTag) {
+ StringBuffer result = new StringBuffer();
+ result.append("<dl class=\"tag list\">");
+ result.append("<dt class=\"tag section header\"><b>");
+ if (tags.length == 1) {
+ result.append(SINGLE_HEADER);
+ }
+ else {
+ result.append(MULTI_HEADER);
+ }
+ result.append("</b></dt>");
+ for (int i = 0; i < tags.length; i++) {
+ result.append("<dd class=\"tag item\">");
+ result.append(replaceEmail(tags[i].text()));
+ result.append("</dd>");
+ }
+ result.append("</dl>");
+ return result.toString();
+ }
+ else {
+ return null;
+ }
+ }
+ }
+
+ /**
+ * Reformat the tag text according to {@link #emailReplacementType}.
+ */
+ private String replaceEmail(String text) {
+
+ if (EmailReplacement.NO_REPLACEMENT == emailReplacementType) {
+ return text;
+ }
+ else {
+ Matcher matcher = authorEmailPattern.matcher(text);
+ if (matcher.matches()) {
+ String realName = matcher.group(1);
+ String emailAddress = matcher.group(2);
+ if (EmailReplacement.MAILTO_NAME == emailReplacementType) {
+ return "<a href=\"mailto:" + emailAddress + "\">" + realName + "</a>";
+ }
+ else if (EmailReplacement.NAME_MAILTO_ADDRESS == emailReplacementType) {
+ return realName + " (<a href=\"mailto:" + emailAddress + "\">" + emailAddress + "</a>)";
+ }
+ else if (EmailReplacement.NAME_MANGLED_ADDRESS == emailReplacementType) {
+ Matcher dotMatcher = dotPattern.matcher(emailAddress);
+ Matcher atMatcher = atPattern.matcher(dotMatcher.replaceAll(dotReplacement));
+ String mangledAddress = atMatcher.replaceAll(atReplacement);
+ return realName + " (" + mangledAddress + ")";
+ }
+ else {
+ // this shouldn't happen
+ return text;
+ }
+ }
+ else {
+ return text;
+ }
+ }
+ }
+
+ /**
+ * Set the email replacement type.
+ */
+ public static void setEmailReplacementType(EmailReplacement emailReplacementType)
+ {
+ if (null == emailReplacementType) {
+ throw new NullPointerException();
+ }
+ AuthorTaglet.emailReplacementType = emailReplacementType;
+ }
+
+ /**
+ * Set the HTML text by which the <code>@</code> (at sign) in email
+ * addresses should be replaced if the email replacement type is
+ * <code>NAME_MANGLED_ADDRESS</code>.
+ */
+ public static void setAtReplacement(String atReplacement)
+ {
+ AuthorTaglet.atReplacement = atReplacement;
+ }
+
+ /**
+ * Set the HTML text by which the <code>.</code> (dot) in email
+ * addresses should be replaced if the email replacement type is
+ * <code>NAME_MANGLED_ADDRESS</code>.
+ */
+ public static void setDotReplacement(String dotReplacement)
+ {
+ AuthorTaglet.dotReplacement = dotReplacement;
+ }
+
+ /**
+ * Enables/disables this taglet.
+ */
+ public static void setTagletEnabled(boolean enabled)
+ {
+ AuthorTaglet.enabled = enabled;
+ }
+}
diff --git a/libjava/classpath/tools/gnu/classpath/tools/taglets/CodeTaglet.java b/libjava/classpath/tools/gnu/classpath/tools/taglets/CodeTaglet.java
index 16ed3d5b0ad..f76e77965aa 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/taglets/CodeTaglet.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/taglets/CodeTaglet.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.taglets;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/taglets/CopyrightTaglet.java b/libjava/classpath/tools/gnu/classpath/tools/taglets/CopyrightTaglet.java
index bb0d9a74d7c..6f744a9f21d 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/taglets/CopyrightTaglet.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/taglets/CopyrightTaglet.java
@@ -1,106 +1,123 @@
-/* gnu.classpath.tools.taglets.CopyrightTaglet
- Copyright (C) 2001 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
-
-package gnu.classpath.tools.taglets;
-
-import java.util.Map;
-
-import com.sun.tools.doclets.Taglet;
-
-import com.sun.javadoc.Tag;
-
-/**
- * A simple Taglet which handles Copyright information.
- */
-public class CopyrightTaglet implements Taglet {
-
- private static final String NAME = "copyright";
- private static final String HEADER = "Copyright:";
-
- public String getName() {
- return NAME;
- }
-
- public boolean inField() {
- return true;
- }
-
- public boolean inConstructor() {
- return true;
- }
-
- public boolean inMethod() {
- return true;
- }
-
- public boolean inOverview() {
- return true;
- }
-
- public boolean inPackage() {
- return true;
- }
-
- public boolean inType() {
- return true;
- }
-
- public boolean isInlineTag() {
- return false;
- }
-
- public static void register(Map tagletMap) {
- CopyrightTaglet copyrightTaglet = new CopyrightTaglet();
- tagletMap.put(copyrightTaglet.getName(), copyrightTaglet);
- }
-
- public String toString(Tag tag) {
- return toString(new Tag[] { tag });
- }
-
- public String toString(Tag[] tags) {
- if (tags.length == 0) {
- return null;
- }
- else {
- boolean haveValidTag = false;
- for (int i = 0; i < tags.length && !haveValidTag; ++i) {
- if (tags[i].text().length() > 0) {
- haveValidTag = true;
- }
- }
-
- if (haveValidTag) {
- StringBuffer result = new StringBuffer();
- result.append("<dl>");
- for (int i = 0; i < tags.length; i++) {
- if (tags[i].text().length() > 0) {
- result.append("<dt><i>Copyright &#169; " + tags[i].text() + "</i></dt>");
- }
- }
- result.append("</dl>");
- return result.toString();
- }
- else {
- return null;
- }
- }
- }
-}
+/* gnu.classpath.tools.taglets.CopyrightTaglet
+ Copyright (C) 2001 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package gnu.classpath.tools.taglets;
+
+import java.util.Map;
+
+import com.sun.tools.doclets.Taglet;
+
+import com.sun.javadoc.Tag;
+
+/**
+ * A simple Taglet which handles Copyright information.
+ */
+public class CopyrightTaglet implements Taglet {
+
+ private static final String NAME = "copyright";
+ private static final String HEADER = "Copyright:";
+
+ public String getName() {
+ return NAME;
+ }
+
+ public boolean inField() {
+ return true;
+ }
+
+ public boolean inConstructor() {
+ return true;
+ }
+
+ public boolean inMethod() {
+ return true;
+ }
+
+ public boolean inOverview() {
+ return true;
+ }
+
+ public boolean inPackage() {
+ return true;
+ }
+
+ public boolean inType() {
+ return true;
+ }
+
+ public boolean isInlineTag() {
+ return false;
+ }
+
+ public static void register(Map tagletMap) {
+ CopyrightTaglet copyrightTaglet = new CopyrightTaglet();
+ tagletMap.put(copyrightTaglet.getName(), copyrightTaglet);
+ }
+
+ public String toString(Tag tag) {
+ return toString(new Tag[] { tag });
+ }
+
+ public String toString(Tag[] tags) {
+ if (tags.length == 0) {
+ return null;
+ }
+ else {
+ boolean haveValidTag = false;
+ for (int i = 0; i < tags.length && !haveValidTag; ++i) {
+ if (tags[i].text().length() > 0) {
+ haveValidTag = true;
+ }
+ }
+
+ if (haveValidTag) {
+ StringBuffer result = new StringBuffer();
+ result.append("<dl>");
+ for (int i = 0; i < tags.length; i++) {
+ if (tags[i].text().length() > 0) {
+ result.append("<dt><i>Copyright &#169; " + tags[i].text() + "</i></dt>");
+ }
+ }
+ result.append("</dl>");
+ return result.toString();
+ }
+ else {
+ return null;
+ }
+ }
+ }
+}
diff --git a/libjava/classpath/tools/gnu/classpath/tools/taglets/DeprecatedTaglet.java b/libjava/classpath/tools/gnu/classpath/tools/taglets/DeprecatedTaglet.java
index ba406a6ebad..aae4ad357b1 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/taglets/DeprecatedTaglet.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/taglets/DeprecatedTaglet.java
@@ -1,115 +1,132 @@
-/* gnu.classpath.tools.taglets.DeprecatedTaglet
- Copyright (C) 2001 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
-
-package gnu.classpath.tools.taglets;
-
-import java.util.Map;
-
-import com.sun.tools.doclets.Taglet;
-
-import com.sun.javadoc.Tag;
-
-/**
- * The default Taglet which handles deprecated information.
- *
- * @author Julian Scheid (julian@sektor37.de)
- */
-public class DeprecatedTaglet implements Taglet {
-
- private static final String NAME = "deprecated";
- private static final String HEADER = "Deprecated:";
-
- private static boolean enabled = true;
-
- public String getName() {
- return NAME;
- }
-
- public boolean inField() {
- return true;
- }
-
- public boolean inConstructor() {
- return true;
- }
-
- public boolean inMethod() {
- return true;
- }
-
- public boolean inOverview() {
- return true;
- }
-
- public boolean inPackage() {
- return true;
- }
-
- public boolean inType() {
- return true;
- }
-
- public boolean isInlineTag() {
- return false;
- }
-
- public static void register(Map tagletMap) {
- DeprecatedTaglet deprecatedTaglet = new DeprecatedTaglet();
- tagletMap.put(deprecatedTaglet.getName(), deprecatedTaglet);
- }
-
- public String toString(Tag tag) {
- if (enabled) {
- return toString(new Tag[] { tag });
- }
- else {
- return null;
- }
- }
-
- public String toString(Tag[] tags) {
- if (!enabled || tags.length == 0) {
- return null;
- }
- else {
-
- StringBuffer result = new StringBuffer();
- result.append("<div class=\"classdoc-tag-section-header\">");
- result.append(HEADER);
- result.append("</div>");
- result.append("<dl class=\"classdoc-list\">");
- for (int i = 0; i < tags.length; i++) {
- result.append("<dt>");
- result.append(tags[i].text());
- result.append("</dt>");
- }
- result.append("</dl>");
- return result.toString();
- }
- }
-
- /**
- * Enables/disables this taglet.
- */
- public static void setTagletEnabled(boolean enabled)
- {
- DeprecatedTaglet.enabled = enabled;
- }
-}
+/* gnu.classpath.tools.taglets.DeprecatedTaglet
+ Copyright (C) 2001 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package gnu.classpath.tools.taglets;
+
+import java.util.Map;
+
+import com.sun.tools.doclets.Taglet;
+
+import com.sun.javadoc.Tag;
+
+/**
+ * The default Taglet which handles deprecated information.
+ *
+ * @author Julian Scheid (julian@sektor37.de)
+ */
+public class DeprecatedTaglet implements Taglet {
+
+ private static final String NAME = "deprecated";
+ private static final String HEADER = "Deprecated:";
+
+ private static boolean enabled = true;
+
+ public String getName() {
+ return NAME;
+ }
+
+ public boolean inField() {
+ return true;
+ }
+
+ public boolean inConstructor() {
+ return true;
+ }
+
+ public boolean inMethod() {
+ return true;
+ }
+
+ public boolean inOverview() {
+ return true;
+ }
+
+ public boolean inPackage() {
+ return true;
+ }
+
+ public boolean inType() {
+ return true;
+ }
+
+ public boolean isInlineTag() {
+ return false;
+ }
+
+ public static void register(Map tagletMap) {
+ DeprecatedTaglet deprecatedTaglet = new DeprecatedTaglet();
+ tagletMap.put(deprecatedTaglet.getName(), deprecatedTaglet);
+ }
+
+ public String toString(Tag tag) {
+ if (enabled) {
+ return toString(new Tag[] { tag });
+ }
+ else {
+ return null;
+ }
+ }
+
+ public String toString(Tag[] tags) {
+ if (!enabled || tags.length == 0) {
+ return null;
+ }
+ else {
+
+ StringBuffer result = new StringBuffer();
+ result.append("<div class=\"classdoc-tag-section-header\">");
+ result.append(HEADER);
+ result.append("</div>");
+ result.append("<dl class=\"classdoc-list\">");
+ for (int i = 0; i < tags.length; i++) {
+ result.append("<dt>");
+ result.append(tags[i].text());
+ result.append("</dt>");
+ }
+ result.append("</dl>");
+ return result.toString();
+ }
+ }
+
+ /**
+ * Enables/disables this taglet.
+ */
+ public static void setTagletEnabled(boolean enabled)
+ {
+ DeprecatedTaglet.enabled = enabled;
+ }
+}
diff --git a/libjava/classpath/tools/gnu/classpath/tools/taglets/GenericTaglet.java b/libjava/classpath/tools/gnu/classpath/tools/taglets/GenericTaglet.java
index 7e18cdcac6d..34eac2badef 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/taglets/GenericTaglet.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/taglets/GenericTaglet.java
@@ -1,140 +1,157 @@
-/* gnu.classpath.tools.taglets.GenericTaglet
- Copyright (C) 2001 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
-
-package gnu.classpath.tools.taglets;
-
-import java.util.Map;
-
-import com.sun.tools.doclets.Taglet;
-
-import com.sun.javadoc.Tag;
-
-/**
- * A taglet which can be configured at runtime.
- *
- * @author Julian Scheid (julian@sektor37.de)
- */
-public class GenericTaglet implements Taglet {
-
- private String name = "since";
- private String header = "Since:";
-
- private boolean scopeOverview;
- private boolean scopePackage;
- private boolean scopeType;
- private boolean scopeConstructor;
- private boolean scopeMethod;
- private boolean scopeField;
-
- private boolean enabled = true;
-
- public GenericTaglet(String name,
- String header,
- boolean scopeOverview,
- boolean scopePackage,
- boolean scopeType,
- boolean scopeConstructor,
- boolean scopeMethod,
- boolean scopeField)
- {
- this.name = name;
- this.header = header;
- this.scopeOverview = scopeOverview;
- this.scopePackage = scopePackage;
- this.scopeType = scopeType;
- this.scopeConstructor = scopeConstructor;
- this.scopeMethod = scopeMethod;
- this.scopeField = scopeField;
- }
-
- public String getName() {
- return name;
- }
-
- public boolean inField() {
- return scopeField;
- }
-
- public boolean inConstructor() {
- return scopeConstructor;
- }
-
- public boolean inMethod() {
- return scopeMethod;
- }
-
- public boolean inOverview() {
- return scopeOverview;
- }
-
- public boolean inPackage() {
- return scopePackage;
- }
-
- public boolean inType() {
- return scopeType;
- }
-
- public boolean isInlineTag() {
- return false;
- }
-
- public void register(Map tagletMap) {
- tagletMap.put(getName(), this);
- }
-
- public String toString(Tag tag) {
- if (enabled) {
- return toString(new Tag[] { tag });
- }
- else {
- return null;
- }
- }
-
- public String toString(Tag[] tags) {
- if (!enabled || tags.length == 0) {
- return null;
- }
- else {
-
- StringBuffer result = new StringBuffer();
- result.append("<div class=\"classdoc-tag-section-header\">");
- result.append(header);
- result.append("</div>");
- result.append("<dl class=\"classdoc-list\">");
- for (int i = 0; i < tags.length; i++) {
- result.append("<dt>");
- result.append(tags[i].text());
- result.append("</dt>");
- }
- result.append("</dl>");
- return result.toString();
- }
- }
-
- /**
- * Enables/disables this taglet.
- */
- public void setTagletEnabled(boolean enabled)
- {
- this.enabled = enabled;
- }
-}
+/* gnu.classpath.tools.taglets.GenericTaglet
+ Copyright (C) 2001 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package gnu.classpath.tools.taglets;
+
+import java.util.Map;
+
+import com.sun.tools.doclets.Taglet;
+
+import com.sun.javadoc.Tag;
+
+/**
+ * A taglet which can be configured at runtime.
+ *
+ * @author Julian Scheid (julian@sektor37.de)
+ */
+public class GenericTaglet implements Taglet {
+
+ private String name = "since";
+ private String header = "Since:";
+
+ private boolean scopeOverview;
+ private boolean scopePackage;
+ private boolean scopeType;
+ private boolean scopeConstructor;
+ private boolean scopeMethod;
+ private boolean scopeField;
+
+ private boolean enabled = true;
+
+ public GenericTaglet(String name,
+ String header,
+ boolean scopeOverview,
+ boolean scopePackage,
+ boolean scopeType,
+ boolean scopeConstructor,
+ boolean scopeMethod,
+ boolean scopeField)
+ {
+ this.name = name;
+ this.header = header;
+ this.scopeOverview = scopeOverview;
+ this.scopePackage = scopePackage;
+ this.scopeType = scopeType;
+ this.scopeConstructor = scopeConstructor;
+ this.scopeMethod = scopeMethod;
+ this.scopeField = scopeField;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public boolean inField() {
+ return scopeField;
+ }
+
+ public boolean inConstructor() {
+ return scopeConstructor;
+ }
+
+ public boolean inMethod() {
+ return scopeMethod;
+ }
+
+ public boolean inOverview() {
+ return scopeOverview;
+ }
+
+ public boolean inPackage() {
+ return scopePackage;
+ }
+
+ public boolean inType() {
+ return scopeType;
+ }
+
+ public boolean isInlineTag() {
+ return false;
+ }
+
+ public void register(Map tagletMap) {
+ tagletMap.put(getName(), this);
+ }
+
+ public String toString(Tag tag) {
+ if (enabled) {
+ return toString(new Tag[] { tag });
+ }
+ else {
+ return null;
+ }
+ }
+
+ public String toString(Tag[] tags) {
+ if (!enabled || tags.length == 0) {
+ return null;
+ }
+ else {
+
+ StringBuffer result = new StringBuffer();
+ result.append("<div class=\"classdoc-tag-section-header\">");
+ result.append(header);
+ result.append("</div>");
+ result.append("<dl class=\"classdoc-list\">");
+ for (int i = 0; i < tags.length; i++) {
+ result.append("<dt>");
+ result.append(tags[i].text());
+ result.append("</dt>");
+ }
+ result.append("</dl>");
+ return result.toString();
+ }
+ }
+
+ /**
+ * Enables/disables this taglet.
+ */
+ public void setTagletEnabled(boolean enabled)
+ {
+ this.enabled = enabled;
+ }
+}
diff --git a/libjava/classpath/tools/gnu/classpath/tools/taglets/GnuExtendedTaglet.java b/libjava/classpath/tools/gnu/classpath/tools/taglets/GnuExtendedTaglet.java
index 2e67d65191f..5f8726aa048 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/taglets/GnuExtendedTaglet.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/taglets/GnuExtendedTaglet.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.taglets;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/taglets/SinceTaglet.java b/libjava/classpath/tools/gnu/classpath/tools/taglets/SinceTaglet.java
index dac68a8c46a..aa1e1149165 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/taglets/SinceTaglet.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/taglets/SinceTaglet.java
@@ -1,144 +1,161 @@
-/* gnu.classpath.tools.taglets.SinceTaglet
- Copyright (C) 2001 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
-
-package gnu.classpath.tools.taglets;
-
-import java.util.Map;
-
-import com.sun.tools.doclets.Taglet;
-
-import com.sun.javadoc.Tag;
-
-import gnu.classpath.tools.doclets.InlineTagRenderer;
-
-/**
- * The default Taglet which handles since information.
- *
- * @author Julian Scheid (julian@sektor37.de)
- */
-public class SinceTaglet implements GnuExtendedTaglet {
-
- private static final String NAME = "since";
- private static final String HEADER = "Since:";
-
- private static boolean enabled = true;
-
- private InlineTagRenderer inlineTagRenderer;
-
- public SinceTaglet(InlineTagRenderer inlineTagRenderer)
- {
- this.inlineTagRenderer = inlineTagRenderer;
- }
-
- public String getName() {
- return NAME;
- }
-
- public boolean inField() {
- return true;
- }
-
- public boolean inConstructor() {
- return true;
- }
-
- public boolean inMethod() {
- return true;
- }
-
- public boolean inOverview() {
- return true;
- }
-
- public boolean inPackage() {
- return true;
- }
-
- public boolean inType() {
- return true;
- }
-
- public boolean isInlineTag() {
- return false;
- }
-
- public String toString(Tag tag) {
- // should raise assertion
- if (enabled) {
- return toString(new Tag[] { tag });
- }
- else {
- return null;
- }
- }
-
- public String toString(Tag[] tags) {
- // should raise assertion
- return toString(tags, null);
- }
-
- public String toString(Tag tag, TagletContext context)
- {
- return null;
- }
-
- public String toString(Tag[] tags, TagletContext context)
- {
- if (!enabled || tags.length == 0) {
- return null;
- }
- else {
- boolean haveValidTag = false;
- for (int i = 0; i < tags.length && !haveValidTag; ++i) {
- if (tags[i].text().length() > 0) {
- haveValidTag = true;
- }
- }
-
- if (haveValidTag) {
- StringBuffer result = new StringBuffer();
- result.append("<dl class=\"tag list\">");
- result.append("<dt class=\"tag section header\"><b>");
- result.append(HEADER);
- result.append("</b></dt>");
- for (int i = 0; i < tags.length; ++i) {
- if (tags[i].text().length() > 0) {
- result.append("<dd>");
- result.append(inlineTagRenderer.renderInlineTags(tags[i].inlineTags(), context));
- result.append("</dd>");
- }
- }
- result.append("</dl>");
- return result.toString();
- }
- else {
- return null;
- }
- }
- }
-
- /**
- * Enables/disables this taglet.
- */
- public static void setTagletEnabled(boolean enabled)
- {
- SinceTaglet.enabled = enabled;
- }
-}
+/* gnu.classpath.tools.taglets.SinceTaglet
+ Copyright (C) 2001 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package gnu.classpath.tools.taglets;
+
+import java.util.Map;
+
+import com.sun.tools.doclets.Taglet;
+
+import com.sun.javadoc.Tag;
+
+import gnu.classpath.tools.doclets.InlineTagRenderer;
+
+/**
+ * The default Taglet which handles since information.
+ *
+ * @author Julian Scheid (julian@sektor37.de)
+ */
+public class SinceTaglet implements GnuExtendedTaglet {
+
+ private static final String NAME = "since";
+ private static final String HEADER = "Since:";
+
+ private static boolean enabled = true;
+
+ private InlineTagRenderer inlineTagRenderer;
+
+ public SinceTaglet(InlineTagRenderer inlineTagRenderer)
+ {
+ this.inlineTagRenderer = inlineTagRenderer;
+ }
+
+ public String getName() {
+ return NAME;
+ }
+
+ public boolean inField() {
+ return true;
+ }
+
+ public boolean inConstructor() {
+ return true;
+ }
+
+ public boolean inMethod() {
+ return true;
+ }
+
+ public boolean inOverview() {
+ return true;
+ }
+
+ public boolean inPackage() {
+ return true;
+ }
+
+ public boolean inType() {
+ return true;
+ }
+
+ public boolean isInlineTag() {
+ return false;
+ }
+
+ public String toString(Tag tag) {
+ // should raise assertion
+ if (enabled) {
+ return toString(new Tag[] { tag });
+ }
+ else {
+ return null;
+ }
+ }
+
+ public String toString(Tag[] tags) {
+ // should raise assertion
+ return toString(tags, null);
+ }
+
+ public String toString(Tag tag, TagletContext context)
+ {
+ return null;
+ }
+
+ public String toString(Tag[] tags, TagletContext context)
+ {
+ if (!enabled || tags.length == 0) {
+ return null;
+ }
+ else {
+ boolean haveValidTag = false;
+ for (int i = 0; i < tags.length && !haveValidTag; ++i) {
+ if (tags[i].text().length() > 0) {
+ haveValidTag = true;
+ }
+ }
+
+ if (haveValidTag) {
+ StringBuffer result = new StringBuffer();
+ result.append("<dl class=\"tag list\">");
+ result.append("<dt class=\"tag section header\"><b>");
+ result.append(HEADER);
+ result.append("</b></dt>");
+ for (int i = 0; i < tags.length; ++i) {
+ if (tags[i].text().length() > 0) {
+ result.append("<dd>");
+ result.append(inlineTagRenderer.renderInlineTags(tags[i].inlineTags(), context));
+ result.append("</dd>");
+ }
+ }
+ result.append("</dl>");
+ return result.toString();
+ }
+ else {
+ return null;
+ }
+ }
+ }
+
+ /**
+ * Enables/disables this taglet.
+ */
+ public static void setTagletEnabled(boolean enabled)
+ {
+ SinceTaglet.enabled = enabled;
+ }
+}
diff --git a/libjava/classpath/tools/gnu/classpath/tools/taglets/TagletContext.java b/libjava/classpath/tools/gnu/classpath/tools/taglets/TagletContext.java
index cf706b6a95c..ff26747e2d9 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/taglets/TagletContext.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/taglets/TagletContext.java
@@ -1,3 +1,40 @@
+/* TagletContext.java -
+ Copyright (C) 2004 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
package gnu.classpath.tools.taglets;
import com.sun.javadoc.Doc;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/taglets/ValueTaglet.java b/libjava/classpath/tools/gnu/classpath/tools/taglets/ValueTaglet.java
index 0f194ae102e..cfc393886f4 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/taglets/ValueTaglet.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/taglets/ValueTaglet.java
@@ -16,7 +16,24 @@ General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
package gnu.classpath.tools.taglets;
diff --git a/libjava/classpath/tools/gnu/classpath/tools/taglets/VersionTaglet.java b/libjava/classpath/tools/gnu/classpath/tools/taglets/VersionTaglet.java
index e4eddb822c6..fadb972ea87 100644
--- a/libjava/classpath/tools/gnu/classpath/tools/taglets/VersionTaglet.java
+++ b/libjava/classpath/tools/gnu/classpath/tools/taglets/VersionTaglet.java
@@ -1,136 +1,153 @@
-/* gnu.classpath.tools.taglets.VersionTaglet
- Copyright (C) 2001 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath is distributed in the hope that it will be useful, but
-WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-02111-1307 USA. */
-
-package gnu.classpath.tools.taglets;
-
-import java.util.Map;
-
-import com.sun.tools.doclets.Taglet;
-
-import com.sun.javadoc.Tag;
-
-/**
- * The default Taglet which handles version information.
- *
- * @author Julian Scheid (julian@sektor37.de)
- */
-public class VersionTaglet implements Taglet {
-
- private static final String NAME = "version";
- private static final String HEADER = "Version:";
-
- private static boolean enabled = true;
-
- public String getName() {
- return NAME;
- }
-
- public boolean inField() {
- return true;
- }
-
- public boolean inConstructor() {
- return true;
- }
-
- public boolean inMethod() {
- return true;
- }
-
- public boolean inOverview() {
- return true;
- }
-
- public boolean inPackage() {
- return true;
- }
-
- public boolean inType() {
- return true;
- }
-
- public boolean isInlineTag() {
- return false;
- }
-
- public static void register(Map tagletMap) {
- VersionTaglet versionTaglet = new VersionTaglet();
- tagletMap.put(versionTaglet.getName(), versionTaglet);
- }
-
- public String toString(Tag tag) {
- if (enabled) {
- return toString(new Tag[] { tag });
- }
- else {
- return null;
- }
- }
-
- public String toString(Tag[] tags) {
- if (!enabled || tags.length == 0) {
- return null;
- }
- else {
- boolean haveValidTag = false;
- for (int i = 0; i < tags.length && !haveValidTag; ++i) {
- if (tags[i].text().length() > 0) {
- haveValidTag = true;
- }
- }
-
- if (haveValidTag) {
-
- StringBuffer result = new StringBuffer();
- result.append("<dl class=\"tag list\">");
- result.append("</dl>");
- result.append("<dt class=\"tag section header\"><b>");
- result.append(HEADER);
- result.append("</b></dt><dd>");
- boolean firstEntry = true;
- for (int i = 0; i < tags.length; i++) {
- if (tags[i].text().length() > 0) {
- if (!firstEntry) {
- result.append(", ");
- }
- else {
- firstEntry = false;
- }
- result.append(tags[i].text());
- }
- }
- result.append("</dd>");
- result.append("</dl>");
- return result.toString();
- }
- else {
- return null;
- }
- }
- }
-
- /**
- * Enables/disables this taglet.
- */
- public static void setTagletEnabled(boolean enabled)
- {
- VersionTaglet.enabled = enabled;
- }
-}
+/* gnu.classpath.tools.taglets.VersionTaglet
+ Copyright (C) 2001 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package gnu.classpath.tools.taglets;
+
+import java.util.Map;
+
+import com.sun.tools.doclets.Taglet;
+
+import com.sun.javadoc.Tag;
+
+/**
+ * The default Taglet which handles version information.
+ *
+ * @author Julian Scheid (julian@sektor37.de)
+ */
+public class VersionTaglet implements Taglet {
+
+ private static final String NAME = "version";
+ private static final String HEADER = "Version:";
+
+ private static boolean enabled = true;
+
+ public String getName() {
+ return NAME;
+ }
+
+ public boolean inField() {
+ return true;
+ }
+
+ public boolean inConstructor() {
+ return true;
+ }
+
+ public boolean inMethod() {
+ return true;
+ }
+
+ public boolean inOverview() {
+ return true;
+ }
+
+ public boolean inPackage() {
+ return true;
+ }
+
+ public boolean inType() {
+ return true;
+ }
+
+ public boolean isInlineTag() {
+ return false;
+ }
+
+ public static void register(Map tagletMap) {
+ VersionTaglet versionTaglet = new VersionTaglet();
+ tagletMap.put(versionTaglet.getName(), versionTaglet);
+ }
+
+ public String toString(Tag tag) {
+ if (enabled) {
+ return toString(new Tag[] { tag });
+ }
+ else {
+ return null;
+ }
+ }
+
+ public String toString(Tag[] tags) {
+ if (!enabled || tags.length == 0) {
+ return null;
+ }
+ else {
+ boolean haveValidTag = false;
+ for (int i = 0; i < tags.length && !haveValidTag; ++i) {
+ if (tags[i].text().length() > 0) {
+ haveValidTag = true;
+ }
+ }
+
+ if (haveValidTag) {
+
+ StringBuffer result = new StringBuffer();
+ result.append("<dl class=\"tag list\">");
+ result.append("</dl>");
+ result.append("<dt class=\"tag section header\"><b>");
+ result.append(HEADER);
+ result.append("</b></dt><dd>");
+ boolean firstEntry = true;
+ for (int i = 0; i < tags.length; i++) {
+ if (tags[i].text().length() > 0) {
+ if (!firstEntry) {
+ result.append(", ");
+ }
+ else {
+ firstEntry = false;
+ }
+ result.append(tags[i].text());
+ }
+ }
+ result.append("</dd>");
+ result.append("</dl>");
+ return result.toString();
+ }
+ else {
+ return null;
+ }
+ }
+ }
+
+ /**
+ * Enables/disables this taglet.
+ */
+ public static void setTagletEnabled(boolean enabled)
+ {
+ VersionTaglet.enabled = enabled;
+ }
+}