aboutsummaryrefslogtreecommitdiff
path: root/libjava/classpath/gnu/javax
diff options
context:
space:
mode:
authorMatthias Klose <doko@gcc.gnu.org>2008-10-21 17:55:01 +0000
committerMatthias Klose <doko@gcc.gnu.org>2008-10-21 17:55:01 +0000
commitcd6d4007aa4f72b51756e4a571abf876fa3e3133 (patch)
tree6de8da5758622565799768e49cd0de6698ca3cb8 /libjava/classpath/gnu/javax
parentd9cc481a359c713f473a136730e4019124368d6b (diff)
downloadgcc-cd6d4007aa4f72b51756e4a571abf876fa3e3133.zip
gcc-cd6d4007aa4f72b51756e4a571abf876fa3e3133.tar.gz
gcc-cd6d4007aa4f72b51756e4a571abf876fa3e3133.tar.bz2
re PR libgcj/37636 (java tools are unable to find resource files)
libjava/ChangeLog: 2008-10-21 Andrew John Hughes <gnu_andrew@member.fsf.org> * sources.am, Makfile.in: Regenerate. 2008-10-17 Matthias Klose <doko@ubuntu.com> * configure.ac: Fix bashisms. * configure: Regenerate. 2008-10-15 Matthias Klose <doko@ubuntu.com> * configure.ac: Disable build of gjdoc, if configured without --with-antlr-jar or if no antlr.jar found. * configure: Regenerate. 2008-10-09 Andrew John Hughes <gnu_andrew@member.fsf.org> * classpath/configure.ac, * classpath/m4/ac_prog_antlr.m4, * classpath/m4/ac_prog_java.m4, * classpath/tools/Makefile.am: Ported --regen-gjdoc-parser patch and cantlr support from GNU Classpath. 2008-10-06 Andrew Haley <aph@redhat.com> * java/lang/Thread.java (Thread): Always create the ThreadLocalMap when creating a thread. (getThreadLocals) Don't lazily create the ThreadLocalMap. 2008-09-28 Andrew John Hughes <gnu_andrew@member.fsf.org> * classpath/java/lang/ThreadLocalMap.java, * java/lang/ThreadLocalMap$Entry.h, * java/lang/ThreadLocalMap.h, * lib/java/lang/ThreadLocalMap.class, * lib/java/lang/ThreadLocalMap$Entry.class: Add the new files for the ThreadLocal patch. 2008-09-28 Andrew John Hughes <gnu_andrew@member.fsf.org> * classpath/ChangeLog, * classpath/java/lang/InheritableThreadLocal.java, * classpath/java/lang/Thread.java, * classpath/java/lang/ThreadLocal.java: Merge Daniel Frampton's ThreadLocal patch. * gcj/javaprims.h: Updated. * java/lang/Thread.h: Regenerated. * java/lang/Thread.java: Replace WeakIdentityHashMap with ThreadLocalMap. (getThreadLocals()): Likewise. * java/lang/ThreadLocal.h: Regenerated. * java/lang/ThreadLocal.java: (computeNextHash()): New method. (ThreadLocal()): Initialise fastHash. (internalGet()): Updated to match Classpath's get(). (internalSet(Object)): Likewise for set(Object). (internalRemove()): Likewise for remove(). 2008-09-25 Andrew John Hughes <gnu_andrew@member.fsf.org> * classpath/configure, * classpath/configure.ac: Resynchronise with Classpath's configure. * classpath/examples/Makefile.in: Add equivalent support for building as in tools/Makefile.in. * classpath/java/nio/Buffer.java, * classpath/java/nio/ByteBuffer.java, * classpath/java/nio/ByteBufferImpl.java, * classpath/java/nio/CharBuffer.java, * classpath/java/nio/CharBufferImpl.java, * classpath/java/nio/CharSequenceBuffer.java, * classpath/java/nio/CharViewBufferImpl.java, * classpath/java/nio/DirectByteBufferImpl.java, * classpath/java/nio/DoubleBuffer.java, * classpath/java/nio/DoubleBufferImpl.java, * classpath/java/nio/DoubleViewBufferImpl.java, * classpath/java/nio/FloatBuffer.java, * classpath/java/nio/FloatBufferImpl.java, * classpath/java/nio/FloatViewBufferImpl.java, * classpath/java/nio/IntBuffer.java, * classpath/java/nio/IntBufferImpl.java, * classpath/java/nio/IntViewBufferImpl.java, * classpath/java/nio/LongBuffer.java, * classpath/java/nio/LongBufferImpl.java, * classpath/java/nio/LongViewBufferImpl.java, * classpath/java/nio/MappedByteBuffer.java, * classpath/java/nio/MappedByteBufferImpl.java, * classpath/java/nio/ShortBuffer.java, * classpath/java/nio/ShortBufferImpl.java, * classpath/java/nio/ShortViewBufferImpl.java: Replace use of gnu.classpath.Pointer with gnu.gcj.RawData, and fix some formatting issues. * classpath/tools/gnu/classpath/tools/gjdoc/expr/JavaLexer.java, * classpath/tools/gnu/classpath/tools/gjdoc/expr/JavaLexer.smap, * classpath/tools/gnu/classpath/tools/gjdoc/expr/JavaRecognizer.java, * classpath/tools/gnu/classpath/tools/gjdoc/expr/JavaRecognizer.smap, * classpath/tools/gnu/classpath/tools/gjdoc/expr/JavaTokenTypes.java, * classpath/tools/gnu/classpath/tools/gjdoc/expr/JavaTokenTypes.txt: Regenerated (later version of antlr). * java/nio/Buffer.h: Regenerated. * java/nio/Buffer.java: Ported changes from Classpath. * java/nio/ByteBuffer.h, * java/nio/CharBuffer.h: Regenerated. * java/nio/DirectByteBufferImpl.java: Ported changes from Classpath. * java/nio/DoubleBuffer.h, * java/nio/FloatBuffer.h, * java/nio/IntBuffer.h, * java/nio/LongBuffer.h, * java/nio/MappedByteBuffer.h, * java/nio/MappedByteBufferImpl.h: Regenerated. * java/nio/MappedByteBufferImpl.java: Ported changes from Classpath. * java/nio/ShortBuffer.h: Regenerated. 2008-09-24 Matthias Klose <doko@ubuntu.com> * configure.ac: Search for antlr.jar, if not configured. * configure: Regenerate. 2008-09-24 Matthias Klose <doko@ubuntu.com> * Makefile.am: Build a gjdoc binary, if enabled. * configure.ac: Add options --disable-gjdoc, --with-antlr-jar=file. * Makefile.in, */Makefile.in, configure: Regenerate. 2008-09-22 Andrew Haley <aph@redhat.com> * java/lang/String.java (toString(char[], int, int)): New method. 2008-09-14 Matthias Klose <doko@ubuntu.com> Import GNU Classpath (libgcj-import-20080914). * Regenerate class and header files. * Regenerate auto* files. * configure.ac: Don't pass --disable-gjdoc to classpath. * sources.am: Regenerated. * HACKING: Mention to build gjdoc in maintainer builds. * gnu/classpath/Configuration.java: Update classpath version. * gcj/javaprims.h: Update. 2008-09-08 Andrew John Hughes <gnu_andrew@member.fsf.org> * Makefile.am: Replace natStringBuffer.cc and natStringBuilder.cc with natAbstractStringBuffer.cc. * Makefile.in: Regenerated. * java/lang/AbstractStringBuffer.java: (append(int)): Made native. (regionMatches(int,String)): Likewise. * java/lang/StringBuffer.h: Regenerated. * java/lang/StringBuffer.java: Remerged with GNU Classpath. * java/lang/StringBuilder.h: Regenerated. * java/lang/StringBuilder.java: Remerged with GNU Classpath. * java/lang/natAbstractStringBuffer.cc: Provide common native methods for StringBuffer and StringBuilder. * java/lang/natStringBuffer.cc, * java/lang/natStringBuilder.cc: Removed. 2008-09-04 Andrew John Hughes <gnu_andrew@member.fsf.org> * Makefile.in, * classpath/configure: Regenerated. * gnu/gcj/util/natDebug.cc, * gnu/gcj/xlib/natColormap.cc, * gnu/gcj/xlib/natDisplay.cc, * gnu/gcj/xlib/natDrawable.cc, * gnu/gcj/xlib/natFont.cc, * gnu/gcj/xlib/natWMSizeHints.cc, * gnu/gcj/xlib/natWindow.cc, * gnu/gcj/xlib/natXImage.cc: Add :: prefix to namespaces. * java/io/CharArrayWriter.h, * java/lang/StringBuffer.h: Regenerated using patched gjavah. * java/lang/natStringBuffer.cc: Fix naming of append(jint). * java/sql/Timestamp.h: Regenerated using patched gjavah. * jni.cc: Rename p to functions to match change in GNU Classpath. * scripts/makemake.tcl: Switch gnu.java.math to BC compilation. * sources.am: Regenerated. 2008-08-21 Andrew John Hughes <gnu_andrew@member.fsf.org> * Makefile.in: Updated location of Configuration.java. * classpath/lib/gnu/java/locale/LocaleData.class: Regenerated. 2008-08-18 Andrew John Hughes <gnu_andrew@member.fsf.org> * Makefile.in: Updated with new Java files. * classpath/configure: Regenerated. * classpath/tools/Makefile.am: Add missing use of GJDOC_EX so --disable-gjdoc works. * classpath/tools/Makefile.in: Regenerated. 2008-08-15 Matthias Klose <doko@ubuntu.com> Import GNU Classpath (libgcj-import-20080811). * Regenerate class and header files. * Regenerate auto* files. * configure.ac: Don't pass --with-fastjar to classpath, substitute new dummy value in classpath/gnu/classpath/Configuration.java.in, pass --disable-gjdoc to classpath. * scripts/makemake.tcl: * sources.am: Regenerated. * java/lang/AbstractStringBuffer.java, gnu/java/lang/VMCPStringBuilder.java: New, copied from classpath, use System instead of VMSystem. * java/lang/StringBuffer.java: Merge from classpath. * java/lang/ClassLoader.java: Merge from classpath. * gcj/javaprims.h: Update class definitions, remove _Jv_jobjectRefType, jobjectRefType definitions. libjava/classpath/ChangeLog.gcj: 2008-10-21 Matthias Klose <doko@ubuntu.com> * classpath/tools/gnu/classpath/tools/gjdoc/expr/Java*: Move from ... * classpath/tools/generated/gnu/classpath/tools/gjdoc/expr/ ... here. * Update .class files. 2008-10-21 Andrew John Hughes <gnu_andrew@member.fsf.org> * tools/Makefile.am: Always generate parser in the srcdir. 2008-10-21 Matthias Klose <doko@ubuntu.com> * doc/Makefile.am (MAINTAINERCLEANFILES): Add gjdoc.1. * doc/Makefile.in: Regenerate. 2008-10-20 Matthias Klose <doko@ubuntu.com> * configure.ac: Don't check for working java, if not configured with --enable-java-maintainer-mode. * configure: Regenerate. 2008-10-19 Matthias Klose <doko@ubuntu.com> * m4/ac_prog_java.m4: Revert previous change. * m4/ac_prog_javac.m4: Apply it here. * configure: Regenerate. 2008-10-19 Matthias Klose <doko@ubuntu.com> * m4/ac_prog_javac.m4: Don't check for working javac, if not configured with --enable-java-maintainer-mode. * configure: Regenerate. * Makefile.in, */Makefile.in: Regenerate. 2008-09-30 Matthias Klose <doko@ubuntu.com> * m4/ac_prog_antlr.m4: Check for cantlr binary as well. 2008-09-29 Matthias Klose <doko@ubuntu.com> * m4/ac_prog_antlr.m4: Check for antlr binary as well. 2008-09-28 Matthias Klose <doko@ubuntu.com> * PR libgcj/37636. Revert: 2008-02-20 Matthias Klose <doko@ubuntu.com> * tools/Makefile.am ($(TOOLS_ZIP)): Revert part of previous change, Do copy resource files in JAVA_MAINTAINER_MODE only. * tools/Makefile.in: Regenerate. 2008-09-14 Matthias Klose <doko@ubuntu.com> * m4/ac_prog_javac_works.m4, m4/ac_prog_javac.m4, m4/acinclude.m4: Revert local changes. * m4/ac_prog_antlr.m4: Check for an runantlr binary. * tools/Makefile.am, lib/Makefile.am: Revert local changes (JCOMPILER). * tools/Makefile.am: Remove USE_JAVAC_FLAGS, pass ANTLR_JAR in GLIBJ_CLASSPATH. 2008-09-14 Matthias Klose <doko@ubuntu.com> Revert: Daniel Frampton <zyridium at zyridium.net> * AUTHORS: Added. * java/lang/InheritableThreadLocal.java, * java/lang/Thread.java, * java/lang/ThreadLocal.java: Modified to use java.lang.ThreadLocalMap. * java/lang/ThreadLocalMap.java: New cheaper ThreadLocal-specific WeakHashMap. 2008-08-15 Matthias Klose <doko@ubuntu.com> * m4/acinclude.m4 (CLASSPATH_JAVAC_MEM_CHECK): Remove unknown args for javac. libjava/classpath/ChangeLog: 2008-10-20 Andrew John Hughes <gnu_andrew@member.fsf.org> * m4/ac_prog_antlr.m4: Remove redundant checks. * tools/Makefile.am: Use gjdoc_gendir when calling antlr. 2008-10-15 Andrew John Hughes <gnu_andrew@member.fsf.org> * configure.ac: Remove superfluous AC_PROG_JAVA call. 2008-10-06 Andrew John Hughes <gnu_andrew@member.fsf.org> * m4/ac_prog_antlr: Check for cantlr as well. * tools/Makefile.am: Only build GJDoc parser when both CREATE_GJDOC and CREATE_GJDOC_PARSER are on. 2008-10-02 Andrew John Hughes <gnu_andrew@member.fsf.org> * configure.ac: Add regen-gjdoc-parser option, and separate antlr tests. * m4/ac_prog_antlr.m4: Turn single test into AC_LIB_ANTLR and AC_PROG_ANTLR. * m4/ac_prog_java.m4: Quote tests. * tools/Makefile.am: Support CREATE_GJDOC_PARSER option. 2008-09-14 Andrew John Hughes <gnu_andrew@member.fsf.org> * examples/Makefile.am: Check lib directly as well as glibj.zip for boot classes. * m4/acinclude.m4: Only require the class files to be built to allow the tools and examples to be built, not the installation of glibj.zip. * tools/Makefile.am: Check lib directly as well as glibj.zip for boot classes. 2008-09-13 Andrew John Hughes <gnu_andrew@member.fsf.org> * examples/Makefile.am, * lib/Makefile.am: Add GCJ rules. * m4/ac_prog_javac.m4: Check whether JAVAC is gcj. * m4/ac_prog_javac_works.m4: Add GCJ rules. * m4/acinclude.m4: Don't bother checking for -J if using GCJ. * tools/Makefile.am: Add GCJ rules. 2007-08-23 Daniel Frampton <zyridium@zyridium.net> * AUTHORS: Added. * java/lang/InheritableThreadLocal.java, * java/lang/Thread.java, * java/lang/ThreadLocal.java: Modified to use java.lang.ThreadLocalMap. * java/lang/ThreadLocalMap.java: New cheaper ThreadLocal-specific WeakHashMap. 2008-02-07 Ian Rogers <ian.rogers@manchester.ac.uk> * java/util/zip/ZipEntry.java: Use byte fields instead of integer fields, store the time as well as the DOS time and don't retain a global Calendar instance. (setDOSTime(int)): Set KNOWN_DOSTIME instead of KNOWN_TIME, and unset KNOWN_TIME. (getDOSTime()): Compute DOS time from UNIX time only when needed. (clone()): Provide cloning via the ZipEntry constructor where possible. (setTime(long)): Don't compute DOS time at this point. (getCalendar()): Removed. 2008-09-09 Andrew John Hughes <gnu_andrew@member.fsf.org> * tools/gnu/classpath/tools/getopt/Parser.java: (setHeader(String)): Make synchronized. (setFooter(String)): Likewise. * tools/gnu/classpath/tools/rmic/SourceGiopRmicCompiler.java, (reset()): Make synchronized. (name(Class)): Likewise. 2008-09-04 Robert Schuster <robertschuster@fsfe.org> * gnu/java/nio/charset/ByteDecodeLoopHelper: (arrayDecodeLoop): Added new break label, escape to that label. * gnu/java/nio/charset/ByteEncodeLoopHelper: (arrayDecodeLoop): Added new break label, escape to that label. 2008-09-04 Robert Schuster <robertschuster@fsfe.org> * java/text/DecimalFormat.java: (scanFix): Use 'i + 1' when looking at following character. (scanNegativePattern): Dito. 2008-09-02 Andrew John Hughes <gnu_andrew@member.fsf.org> * tools/gnu/classpath/tools/javah/ClassWrapper.java: (makeVtable()): Populate methodNameMap. (printMethods(CniPrintStream)): Always use pre-populated methodNameMap for bridge targets. 2008-09-01 Mario Torre <neugens@aicas.com> * gnu/java/awt/peer/x/XImage.java (XImageProducer): remove @Override annotation to allow compilation on javac < 1.6 and ecj < 3.4. 2008-09-01 Mario Torre <neugens@aicas.com> * gnu/java/awt/peer/x/XGraphicsDevice.java (getDisplay): fix to support new Escher API. * gnu/java/awt/peer/x/XImage.java (getSource): method implemented. * gnu/java/awt/peer/x/XImage.java (XImageProducer): implement ImageProducer for getSource. 2008-09-01 Andrew John Hughes <gnu_andrew@member.fsf.org> * gnu/java/util/regex/BacktrackStack.java, * gnu/java/util/regex/CharIndexed.java, * gnu/java/util/regex/CharIndexedCharArray.java, * gnu/java/util/regex/CharIndexedCharSequence.java, * gnu/java/util/regex/CharIndexedInputStream.java, * gnu/java/util/regex/CharIndexedString.java, * gnu/java/util/regex/CharIndexedStringBuffer.java, * gnu/java/util/regex/RE.java, * gnu/java/util/regex/REException.java, * gnu/java/util/regex/REFilterInputStream.java, * gnu/java/util/regex/REMatch.java, * gnu/java/util/regex/REMatchEnumeration.java, * gnu/java/util/regex/RESyntax.java, * gnu/java/util/regex/REToken.java, * gnu/java/util/regex/RETokenAny.java, * gnu/java/util/regex/RETokenBackRef.java, * gnu/java/util/regex/RETokenChar.java, * gnu/java/util/regex/RETokenEnd.java, * gnu/java/util/regex/RETokenEndOfPreviousMatch.java, * gnu/java/util/regex/RETokenEndSub.java, * gnu/java/util/regex/RETokenIndependent.java, * gnu/java/util/regex/RETokenLookAhead.java, * gnu/java/util/regex/RETokenLookBehind.java, * gnu/java/util/regex/RETokenNamedProperty.java, * gnu/java/util/regex/RETokenOneOf.java, * gnu/java/util/regex/RETokenPOSIX.java, * gnu/java/util/regex/RETokenRange.java, * gnu/java/util/regex/RETokenRepeated.java, * gnu/java/util/regex/RETokenStart.java, * gnu/java/util/regex/RETokenWordBoundary.java, * gnu/java/util/regex/UncheckedRE.java: Fix indentation. 2008-09-01 Andrew John Hughes <gnu_andrew@member.fsf.org> * gnu/java/util/regex/RETokenStart.java: (getMaximumLength()): Add Override annotation. (matchThis(CharIndexed, REMatch)): Likewise. (returnsFixedLengthMatches()): Renamed from returnsFixedLengthmatches and added Override annotation. (findFixedLengthMatches(CharIndexed,REMatch,int)): Add Override annotation. (dump(CPStringBuilder)): Likewise. * gnu/javax/print/ipp/IppRequest.java: (RequestWriter.writeOperationAttributes(AttributeSet)): Throw exception, don't just create and drop it. * javax/management/MBeanServerPermission.java: (MBeanServerPermissionCollection.add(Permission)): Compare against individual Strings not the entire array, and store the result of replace. * javax/swing/text/html/StyleSheet.java: (setBaseFontSize(size)): Store result of trim(). 2008-09-01 Andrew John Hughes <gnu_andrew@member.fsf.org> * javax/tools/FileObject.java: (openReader(boolean)): Document new parameter. 2008-03-27 Michael Franz <mvfranz@gmail.com> PR classpath/35690: * javax/tools/FileObject.java: (toUri()): Fix case from toURI. (openReader(boolean)): Add missing boolean argument. 2008-08-26 Andrew John Hughes <gnu_andrew@member.fsf.org> PR classpath/35487: * gnu/javax/management/Server.java: (beans): Change to ConcurrentHashMap. (defaultDomain): Make final. (outer): Likewise. (LazyListenersHolder): Added to wrap listeners, also now a ConcurrentHashMap, providing lazy initialisation safely. (sequenceNumber): Documented. (getBean(ObjectName)): Remove redundant cast. (addNotificationListener(ObjectName,NotificationListener, NotificationFilter,Object)): Remove map initialisation and use holder. (getObjectInstance(ObjectName)): Remove redundant cast. (registerMBean(Object,ObjectName)): Add bean atomically. (removeNotificationListener(ObjectName,NotificationListener)): Simplified. (removeNotificationListener(ObjectName,NotificationListener, NotificationFilter,Object)): Likewise. (notify(ObjectName,String)): Documented. 2008-08-26 Andrew John Hughes <gnu_andrew@member.fsf.org> * gnu/javax/management/Server.java: Genericised. 2008-08-26 Andrew John Hughes <gnu_andrew@member.fsf.org> * gnu/javax/management/Translator.java: Genericised. 2008-08-26 Andrew John Hughes <gnu_andrew@member.fsf.org> * javax/management/DefaultLoaderRepository.java, * javax/management/JMX.java, * javax/management/MBeanAttributeInfo.java, * javax/management/MBeanConstructorInfo.java, * javax/management/MBeanOperationInfo.java, * javax/management/MBeanServerDelegate.java: Fix warnings due to generics. 2008-08-25 Andrew John Hughes <gnu_andrew@member.fsf.org> * javax/management/MBeanPermission.java, * javax/management/MBeanServerDelegate.java, * javax/management/MBeanServerFactory.java, * javax/management/MBeanServerInvocationHandler.java, * javax/management/MBeanServerPermission.java: Fix warnings due to use of non-generic collections. 2008-08-25 Mario Torre <neugens@aicas.com> * gnu/javax/rmi/CORBA/RmiUtilities.java (readValue): check if sender is null to avoid NPE. 2008-08-22 Mario Torre <neugens@aicas.com> * gnu/CORBA/OrbFunctional.java (set_parameters): Fix NullPointerException checking when param is null. 2008-08-23 Andrew John Hughes <gnu_andrew@member.fsf.org> * java/util/regex/Matcher.java: (reset()): Reset append position so we don't try and append to the end of the old input. 2008-08-22 Andrew John Hughes <gnu_andrew@member.fsf.org> PR classpath/32028: * m4/acinclude.m4: Also allow versions of GJDoc from 0.8* on, as CVS is 0.8.0-pre. 2008-08-21 Andrew John Hughes <gnu_andrew@member.fsf.org> PR classpath/32028: * m4/acinclude.m4: (CLASSPATH_WITH_GJDOC): Ensure version 0.7.9 is being used. 2008-08-20 Andrew John Hughes <gnu_andrew@member.fsf.org> * tools/Makefile.am: Add taglets subdirectory to list of excluded paths when GJDoc is not compiled. 2008-08-19 David P Grove <groved@us.ibm.com> * scripts/check_jni_methods.sh.in: Fix build issue on AIX by splitting generation of method list. 2008-08-18 Andrew John Hughes <gnu_andrew@member.fsf.org> * native/jni/gstreamer-peer/gst_native_pipeline.c: (get_free_space(int)): Use #else not #elif when there is no condition. 2008-08-17 Andrew John Hughes <gnu_andrew@member.fsf.org> PR classpath/31895: * java/text/DecimalFormat.java: (setCurrency(Currency)): Update prefixes and suffixes when currency changes. * java/text/DecimalFormatSymbols.java: (DecimalFormatSymbols(Locale)): Set locale earlier so it can be used by setCurrency(Currency). (setCurrency(Currency)): Set the symbol correctly using the locale of the instance. * java/util/Currency.java: Throw error instead of just printing a message. 2008-08-17 Andrew John Hughes <gnu_andrew@member.fsf.org> * javax/activation/ActivationDataFlavor.java: Suppress warnings from public API. (mimeType): Made final. (representationClass): Added generic type and made final. (normalizeMimeTypeParameter(String,String)): Use CPStringBuilder. * javax/activation/CommandInfo.java: (verb): Made final. (className): Made final. * javax/activation/DataHandler.java: (dataSource): Made final. * javax/activation/FileDataSource.java: (file): Made final. * javax/activation/MailcapCommandMap.java: Use generics on collections and CPStringBuilder instead of StringBuffer. * javax/activation/MimeType.java: (toString()): Use CPStringBuilder. (getBaseType()): Likewise. * javax/activation/MimeTypeParameterList.java: Use generics on collections and CPStringBuilder instead of StringBuffer. * javax/activation/MimeTypeParseException.java: (MimeTypeParseException(String,String)): Use CPStringBuilder. * javax/activation/MimetypesFileTypeMap.java: Use generics on collections and CPStringBuilder instead of StringBuffer. * javax/activation/URLDataSource.java: (url): Made final. 2008-08-17 Andrew John Hughes <gnu_andrew@member.fsf.org> * gnu/javax/activation/viewers/ImageViewer.java, * gnu/javax/activation/viewers/TextEditor.java, * gnu/javax/activation/viewers/TextViewer.java, * javax/activation/ActivationDataFlavor.java, * javax/activation/CommandInfo.java, * javax/activation/CommandMap.java, * javax/activation/CommandObject.java, * javax/activation/DataContentHandler.java, * javax/activation/DataContentHandlerFactory.java, * javax/activation/DataHandler.java, * javax/activation/DataHandlerDataSource.java, * javax/activation/DataSource.java, * javax/activation/DataSourceDataContentHandler.java, * javax/activation/FileDataSource.java, * javax/activation/FileTypeMap.java, * javax/activation/MailcapCommandMap.java, * javax/activation/MimeType.java, * javax/activation/MimeTypeParameterList.java, * javax/activation/MimeTypeParseException.java, * javax/activation/MimetypesFileTypeMap.java, * javax/activation/ObjectDataContentHandler.java, * javax/activation/URLDataSource.java, * javax/activation/UnsupportedDataTypeException.java, * javax/activation/package.html, * resource/META-INF/mailcap.default, * resource/META-INF/mimetypes.default: Import GNU JAF CVS as of 17/08/2008. 2006-04-25 Archit Shah <ashah@redhat.com> * javax/activation/MimeTypeParameterList.java: Insert ';' separator before parameter list. 2005-06-29 Xavier Poinsard <xpoinsard@openpricer.com> * javax/activation/ObjectDataContentHandler.java: Fixed typo. 2005-05-28 Chris Burdess <dog@bluezoo.org> * javax/activation/CommandMap.java, * javax/activation/MailcapCommandMap.java: Updated to JAF 1.1. 2004-06-09 Chris Burdess <dog@bluezoo.org> * javax/activation/MailcapCommandMap.java: Fixed bug whereby x-java prefix was not attempted. 2008-08-17 Andrew John Hughes <gnu_andrew@member.fsf.org> * AUTHORS: Added Laszlo. 2008-04-20 Andrew John Hughes <gnu_andrew@member.fsf.org> PR classpath/30436: * java/util/Scanner.java: Fix package to be java.util and correct indentation. 2007-07-25 Laszlo Andras Hernadi <e0327023@student.tuwien.ac.at> PR classpath/30436: * java/util/Scanner.java: Initial implementation. 2008-08-17 Andrew John Hughes <gnu_andrew@member.fsf.org> * java/util/regex/Matcher.java: (toMatchResult()): Implemented. 2008-08-13 Joshua Sumali <jsumali@redhat.com> * doc/Makefile.am (gjdoc.pod): Generate gjdoc pod from cp-tools.texinfo instead of invoke.texi. Remove invoke.texi from EXTRA_DIST. * doc/invoke.texi: Removed and merged into ... * doc/cp-tools.texinfo: Here 2008-08-12 Robert Schuster <robertschuster@fsfe.org> * native/jni/java-net/local.c (local_bind): Removed fprintf call, fixed access outside of array bounds. From-SVN: r141271
Diffstat (limited to 'libjava/classpath/gnu/javax')
-rw-r--r--libjava/classpath/gnu/javax/activation/viewers/ImageViewer.java138
-rw-r--r--libjava/classpath/gnu/javax/activation/viewers/TextEditor.java119
-rw-r--r--libjava/classpath/gnu/javax/activation/viewers/TextViewer.java81
-rw-r--r--libjava/classpath/gnu/javax/crypto/assembly/TransformerException.java4
-rw-r--r--libjava/classpath/gnu/javax/crypto/cipher/BaseCipher.java4
-rw-r--r--libjava/classpath/gnu/javax/crypto/jce/sig/DHParameters.java4
-rw-r--r--libjava/classpath/gnu/javax/crypto/key/KeyAgreementException.java4
-rw-r--r--libjava/classpath/gnu/javax/crypto/mode/BaseMode.java4
-rw-r--r--libjava/classpath/gnu/javax/crypto/pad/BasePad.java4
-rw-r--r--libjava/classpath/gnu/javax/crypto/sasl/crammd5/CramMD5Util.java4
-rw-r--r--libjava/classpath/gnu/javax/crypto/sasl/crammd5/PasswordFile.java6
-rw-r--r--libjava/classpath/gnu/javax/crypto/sasl/plain/PasswordFile.java6
-rw-r--r--libjava/classpath/gnu/javax/crypto/sasl/plain/PlainClient.java4
-rw-r--r--libjava/classpath/gnu/javax/crypto/sasl/srp/PasswordFile.java12
-rw-r--r--libjava/classpath/gnu/javax/crypto/sasl/srp/SRPClient.java4
-rw-r--r--libjava/classpath/gnu/javax/crypto/sasl/srp/SRPServer.java4
-rw-r--r--libjava/classpath/gnu/javax/crypto/sasl/srp/ServerStore.java4
-rw-r--r--libjava/classpath/gnu/javax/imageio/bmp/BMPImageWriter.java1
-rw-r--r--libjava/classpath/gnu/javax/imageio/bmp/BMPImageWriterSpi.java2
-rw-r--r--libjava/classpath/gnu/javax/management/Server.java123
-rw-r--r--libjava/classpath/gnu/javax/management/Translator.java42
-rw-r--r--libjava/classpath/gnu/javax/naming/giop/CorbalocParser.java8
-rw-r--r--libjava/classpath/gnu/javax/naming/giop/GiopNamingServiceFactory.java4
-rw-r--r--libjava/classpath/gnu/javax/naming/giop/ListBindingsEnumeration.java4
-rw-r--r--libjava/classpath/gnu/javax/naming/giop/ListEnumeration.java6
-rw-r--r--libjava/classpath/gnu/javax/naming/ictxImpl/trans/GnuName.java4
-rw-r--r--libjava/classpath/gnu/javax/net/ssl/PrivateCredentials.java6
-rw-r--r--libjava/classpath/gnu/javax/net/ssl/Session.java6
-rw-r--r--libjava/classpath/gnu/javax/net/ssl/provider/HelloRequest.java4
-rw-r--r--libjava/classpath/gnu/javax/net/ssl/provider/Util.java10
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/IppRequest.java2
-rw-r--r--libjava/classpath/gnu/javax/print/ipp/attribute/RequestedAttributes.java4
-rw-r--r--libjava/classpath/gnu/javax/rmi/CORBA/RmiUtilities.java11
-rw-r--r--libjava/classpath/gnu/javax/security/auth/callback/AWTCallbackHandler.java6
-rw-r--r--libjava/classpath/gnu/javax/security/auth/login/ConfigFileTokenizer.java6
-rw-r--r--libjava/classpath/gnu/javax/sound/sampled/gstreamer/io/GstAudioFileReader.java4
-rw-r--r--libjava/classpath/gnu/javax/swing/text/html/parser/htmlValidator.java36
-rw-r--r--libjava/classpath/gnu/javax/swing/text/html/parser/models/list.java4
-rw-r--r--libjava/classpath/gnu/javax/swing/text/html/parser/models/node.java4
-rw-r--r--libjava/classpath/gnu/javax/swing/text/html/parser/support/Parser.java10
40 files changed, 556 insertions, 157 deletions
diff --git a/libjava/classpath/gnu/javax/activation/viewers/ImageViewer.java b/libjava/classpath/gnu/javax/activation/viewers/ImageViewer.java
new file mode 100644
index 0000000..829f40c
--- /dev/null
+++ b/libjava/classpath/gnu/javax/activation/viewers/ImageViewer.java
@@ -0,0 +1,138 @@
+/* ImageViewer.java -- Simple image display component.
+ 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., 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.javax.activation.viewers;
+
+import java.awt.Component;
+import java.awt.Dimension;
+import java.awt.Image;
+import java.awt.Graphics;
+import java.awt.MediaTracker;
+import java.awt.Toolkit;
+import java.io.ByteArrayOutputStream;
+import java.io.InputStream;
+import java.io.IOException;
+
+import javax.activation.CommandObject;
+import javax.activation.DataHandler;
+
+/**
+ * Simple image display component.
+ *
+ * @author <a href='mailto:dog@gnu.org'>Chris Burdess</a>
+ * @version 1.0.2
+ */
+public class ImageViewer extends Component
+ implements CommandObject
+{
+
+ private Image image;
+
+ /**
+ * Returns the preferred size for this component (the image size).
+ */
+ public Dimension getPreferredSize()
+ {
+ Dimension ps = new Dimension(0, 0);
+ if (image != null)
+ {
+ ps.width = image.getWidth(this);
+ ps.height = image.getHeight(this);
+ }
+ return ps;
+ }
+
+ public void setCommandContext(String verb, DataHandler dh)
+ throws IOException
+ {
+ // Read image into a byte array
+ InputStream in = dh.getInputStream();
+ ByteArrayOutputStream bytes = new ByteArrayOutputStream();
+ byte[] buf = new byte[4096];
+ for (int len = in.read(buf); len != -1; len = in.read(buf))
+ bytes.write(buf, 0, len);
+ in.close();
+ // Create and prepare the image
+ Toolkit toolkit = getToolkit();
+ Image img = toolkit.createImage(bytes.toByteArray());
+ try
+ {
+ MediaTracker tracker = new MediaTracker(this);
+ tracker.addImage(img, 0);
+ tracker.waitForID(0);
+ }
+ catch (InterruptedException e)
+ {
+ }
+ toolkit.prepareImage(img, -1, -1, this);
+ }
+
+ /**
+ * Image bits arrive.
+ */
+ public boolean imageUpdate(Image image, int flags, int x, int y,
+ int width, int height)
+ {
+ if ((flags & ALLBITS) != 0)
+ {
+ this.image = image;
+ invalidate();
+ repaint();
+ return false;
+ }
+ return ((flags & ERROR) == 0);
+ }
+
+ /**
+ * Scale the image into this component's bounds.
+ */
+ public void paint(Graphics g)
+ {
+ if (image != null)
+ {
+ Dimension is = new Dimension(image.getWidth(this),
+ image.getHeight(this));
+ if (is.width > -1 && is.height > -1)
+ {
+ Dimension cs = getSize();
+ g.drawImage(image, 0, 0, cs.width, cs.height,
+ 0, 0, is.width, is.height, this);
+ }
+ }
+ }
+
+}
diff --git a/libjava/classpath/gnu/javax/activation/viewers/TextEditor.java b/libjava/classpath/gnu/javax/activation/viewers/TextEditor.java
new file mode 100644
index 0000000..1995ae1
--- /dev/null
+++ b/libjava/classpath/gnu/javax/activation/viewers/TextEditor.java
@@ -0,0 +1,119 @@
+/* TextEditor.java -- Simple text editor component.
+ 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., 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.javax.activation.viewers;
+
+import java.awt.Dimension;
+import java.awt.TextArea;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.io.ByteArrayOutputStream;
+import java.io.InputStream;
+import java.io.IOException;
+import java.io.OutputStream;
+import javax.activation.CommandObject;
+import javax.activation.DataHandler;
+
+/**
+ * Simple text editor component.
+ *
+ * @author <a href='mailto:dog@gnu.org'>Chris Burdess</a>
+ * @version 1.0.2
+ */
+public class TextEditor extends TextArea
+ implements CommandObject, ActionListener
+{
+
+ private transient DataHandler dh;
+
+ public TextEditor()
+ {
+ super("", 24, 80, 1);
+ }
+
+ public Dimension getPreferredSize()
+ {
+ return getMinimumSize(24, 80);
+ }
+
+ public void setCommandContext(String verb, DataHandler dh)
+ throws IOException
+ {
+ this.dh = dh;
+ InputStream in = dh.getInputStream();
+ ByteArrayOutputStream bytes = new ByteArrayOutputStream();
+ byte[] buf = new byte[4096];
+ for (int len = in.read(buf); len != -1; len = in.read(buf))
+ bytes.write(buf, 0, len);
+ in.close();
+ setText(bytes.toString());
+ }
+
+ public void actionPerformed(ActionEvent event)
+ {
+ if ("save".equals(event.getActionCommand()) && dh != null)
+ {
+ OutputStream out = null;
+ try
+ {
+ out = dh.getOutputStream();
+ if (out != null)
+ out.write(getText().getBytes());
+ }
+ catch (IOException e)
+ {
+ e.printStackTrace(System.err);
+ }
+ finally
+ {
+ if (out != null)
+ {
+ try
+ {
+
+ out.close();
+ }
+ catch (IOException e)
+ {
+ e.printStackTrace(System.err);
+ }
+ }
+ }
+ }
+ }
+
+}
diff --git a/libjava/classpath/gnu/javax/activation/viewers/TextViewer.java b/libjava/classpath/gnu/javax/activation/viewers/TextViewer.java
new file mode 100644
index 0000000..2b4aa90
--- /dev/null
+++ b/libjava/classpath/gnu/javax/activation/viewers/TextViewer.java
@@ -0,0 +1,81 @@
+/* TextViewer.java -- Simple text viewer component.
+ 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., 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.javax.activation.viewers;
+
+import java.awt.Dimension;
+import java.awt.TextArea;
+import java.io.ByteArrayOutputStream;
+import java.io.InputStream;
+import java.io.IOException;
+import javax.activation.CommandObject;
+import javax.activation.DataHandler;
+
+/**
+ * Simple text display component.
+ *
+ * @author <a href='mailto:dog@gnu.org'>Chris Burdess</a>
+ * @version 1.0.2
+ */
+public class TextViewer extends TextArea
+ implements CommandObject
+{
+
+ public TextViewer()
+ {
+ super("", 24, 80, 1);
+ setEditable(false);
+ }
+
+ public Dimension getPreferredSize()
+ {
+ return getMinimumSize(24, 80);
+ }
+
+ public void setCommandContext(String verb, DataHandler dh)
+ throws IOException
+ {
+ InputStream in = dh.getInputStream();
+ ByteArrayOutputStream bytes = new ByteArrayOutputStream();
+ byte[] buf = new byte[4096];
+ for (int len = in.read(buf); len != -1; len = in.read(buf))
+ bytes.write(buf, 0, len);
+ in.close();
+ setText(bytes.toString());
+ }
+
+}
diff --git a/libjava/classpath/gnu/javax/crypto/assembly/TransformerException.java b/libjava/classpath/gnu/javax/crypto/assembly/TransformerException.java
index 2c972f8..4e93322 100644
--- a/libjava/classpath/gnu/javax/crypto/assembly/TransformerException.java
+++ b/libjava/classpath/gnu/javax/crypto/assembly/TransformerException.java
@@ -38,6 +38,8 @@ exception statement from your version. */
package gnu.javax.crypto.assembly;
+import gnu.java.lang.CPStringBuilder;
+
import java.io.PrintStream;
import java.io.PrintWriter;
@@ -129,7 +131,7 @@ public class TransformerException
*/
public String toString()
{
- StringBuffer sb = new StringBuffer(this.getClass().getName())
+ CPStringBuilder sb = new CPStringBuilder(this.getClass().getName())
.append(": ").append(super.toString());
if (_exception != null)
sb.append("; caused by: ").append(_exception.toString());
diff --git a/libjava/classpath/gnu/javax/crypto/cipher/BaseCipher.java b/libjava/classpath/gnu/javax/crypto/cipher/BaseCipher.java
index a5bbe69..bae142a 100644
--- a/libjava/classpath/gnu/javax/crypto/cipher/BaseCipher.java
+++ b/libjava/classpath/gnu/javax/crypto/cipher/BaseCipher.java
@@ -38,6 +38,8 @@ exception statement from your version. */
package gnu.javax.crypto.cipher;
+import gnu.java.lang.CPStringBuilder;
+
import gnu.java.security.Configuration;
import java.security.InvalidKeyException;
@@ -88,7 +90,7 @@ public abstract class BaseCipher
public String name()
{
- StringBuffer sb = new StringBuffer(name).append('-');
+ CPStringBuilder sb = new CPStringBuilder(name).append('-');
if (currentKey == null)
sb.append(String.valueOf(8 * defaultBlockSize));
else
diff --git a/libjava/classpath/gnu/javax/crypto/jce/sig/DHParameters.java b/libjava/classpath/gnu/javax/crypto/jce/sig/DHParameters.java
index 0357c16..a917e22 100644
--- a/libjava/classpath/gnu/javax/crypto/jce/sig/DHParameters.java
+++ b/libjava/classpath/gnu/javax/crypto/jce/sig/DHParameters.java
@@ -38,6 +38,8 @@ exception statement from your version. */
package gnu.javax.crypto.jce.sig;
+import gnu.java.lang.CPStringBuilder;
+
import gnu.java.security.Registry;
import gnu.java.security.der.DER;
import gnu.java.security.der.DERReader;
@@ -195,7 +197,7 @@ public class DHParameters
protected String engineToString()
{
- StringBuffer sb = new StringBuffer("p=");
+ CPStringBuilder sb = new CPStringBuilder("p=");
if (p == null)
sb.append("???");
else
diff --git a/libjava/classpath/gnu/javax/crypto/key/KeyAgreementException.java b/libjava/classpath/gnu/javax/crypto/key/KeyAgreementException.java
index f0fb1bb..405f011 100644
--- a/libjava/classpath/gnu/javax/crypto/key/KeyAgreementException.java
+++ b/libjava/classpath/gnu/javax/crypto/key/KeyAgreementException.java
@@ -38,6 +38,8 @@ exception statement from your version. */
package gnu.javax.crypto.key;
+import gnu.java.lang.CPStringBuilder;
+
import java.io.PrintStream;
import java.io.PrintWriter;
import java.io.Serializable;
@@ -157,7 +159,7 @@ public class KeyAgreementException
*/
public String toString()
{
- StringBuffer sb = new StringBuffer(this.getClass().getName()).append(": ")
+ CPStringBuilder sb = new CPStringBuilder(this.getClass().getName()).append(": ")
.append(super.toString());
if (cause != null)
sb.append("; caused by: ").append(cause.toString());
diff --git a/libjava/classpath/gnu/javax/crypto/mode/BaseMode.java b/libjava/classpath/gnu/javax/crypto/mode/BaseMode.java
index 6d9418c..02e4322 100644
--- a/libjava/classpath/gnu/javax/crypto/mode/BaseMode.java
+++ b/libjava/classpath/gnu/javax/crypto/mode/BaseMode.java
@@ -38,6 +38,8 @@ exception statement from your version. */
package gnu.javax.crypto.mode;
+import gnu.java.lang.CPStringBuilder;
+
import gnu.javax.crypto.cipher.IBlockCipher;
import java.security.InvalidKeyException;
@@ -110,7 +112,7 @@ public abstract class BaseMode
public String name()
{
- return new StringBuffer(name).append('(').append(cipher.name()).append(')')
+ return new CPStringBuilder(name).append('(').append(cipher.name()).append(')')
.toString();
}
diff --git a/libjava/classpath/gnu/javax/crypto/pad/BasePad.java b/libjava/classpath/gnu/javax/crypto/pad/BasePad.java
index 8b475d2..adc2c9b 100644
--- a/libjava/classpath/gnu/javax/crypto/pad/BasePad.java
+++ b/libjava/classpath/gnu/javax/crypto/pad/BasePad.java
@@ -38,6 +38,8 @@ exception statement from your version. */
package gnu.javax.crypto.pad;
+import gnu.java.lang.CPStringBuilder;
+
import gnu.java.security.Configuration;
import java.util.Map;
@@ -67,7 +69,7 @@ public abstract class BasePad
public String name()
{
- final StringBuffer sb = new StringBuffer(name);
+ final CPStringBuilder sb = new CPStringBuilder(name);
if (blockSize != -1)
sb.append('-').append(String.valueOf(8 * blockSize));
return sb.toString();
diff --git a/libjava/classpath/gnu/javax/crypto/sasl/crammd5/CramMD5Util.java b/libjava/classpath/gnu/javax/crypto/sasl/crammd5/CramMD5Util.java
index 2145512..a6a06b6 100644
--- a/libjava/classpath/gnu/javax/crypto/sasl/crammd5/CramMD5Util.java
+++ b/libjava/classpath/gnu/javax/crypto/sasl/crammd5/CramMD5Util.java
@@ -38,6 +38,8 @@ exception statement from your version. */
package gnu.javax.crypto.sasl.crammd5;
+import gnu.java.lang.CPStringBuilder;
+
import gnu.java.security.Registry;
import gnu.java.security.util.Util;
import gnu.javax.crypto.mac.HMacFactory;
@@ -83,7 +85,7 @@ class CramMD5Util
final byte[] result;
try
{
- result = new StringBuffer("<")
+ result = new CPStringBuilder("<")
.append(encoded.substring(0,encoded.length()))
.append(".").append(String.valueOf(System.currentTimeMillis()))
.append("@").append(hostname).append(">")
diff --git a/libjava/classpath/gnu/javax/crypto/sasl/crammd5/PasswordFile.java b/libjava/classpath/gnu/javax/crypto/sasl/crammd5/PasswordFile.java
index df95211..4900842 100644
--- a/libjava/classpath/gnu/javax/crypto/sasl/crammd5/PasswordFile.java
+++ b/libjava/classpath/gnu/javax/crypto/sasl/crammd5/PasswordFile.java
@@ -38,6 +38,8 @@ exception statement from your version. */
package gnu.javax.crypto.sasl.crammd5;
+import gnu.java.lang.CPStringBuilder;
+
import gnu.javax.crypto.sasl.NoSuchUserException;
import gnu.javax.crypto.sasl.UserAlreadyExistsException;
@@ -201,13 +203,13 @@ public class PasswordFile
pw = new PrintWriter(fos);
String key;
String[] fields;
- StringBuffer sb;
+ CPStringBuilder sb;
int i;
for (Iterator it = entries.keySet().iterator(); it.hasNext();)
{
key = (String) it.next();
fields = (String[]) entries.get(key);
- sb = new StringBuffer(fields[0]);
+ sb = new CPStringBuilder(fields[0]);
for (i = 1; i < fields.length; i++)
sb.append(":").append(fields[i]);
pw.println(sb.toString());
diff --git a/libjava/classpath/gnu/javax/crypto/sasl/plain/PasswordFile.java b/libjava/classpath/gnu/javax/crypto/sasl/plain/PasswordFile.java
index b6fb3f8..4888214d8 100644
--- a/libjava/classpath/gnu/javax/crypto/sasl/plain/PasswordFile.java
+++ b/libjava/classpath/gnu/javax/crypto/sasl/plain/PasswordFile.java
@@ -38,6 +38,8 @@ exception statement from your version. */
package gnu.javax.crypto.sasl.plain;
+import gnu.java.lang.CPStringBuilder;
+
import gnu.java.security.action.GetPropertyAction;
import gnu.javax.crypto.sasl.NoSuchUserException;
import gnu.javax.crypto.sasl.UserAlreadyExistsException;
@@ -205,13 +207,13 @@ public class PasswordFile
pw = new PrintWriter(fos);
String key;
String[] fields;
- StringBuffer sb;
+ CPStringBuilder sb;
Enumeration keys = entries.keys();
while (keys.hasMoreElements())
{
key = (String) keys.nextElement();
fields = (String[]) entries.get(key);
- sb = new StringBuffer(fields[0]);
+ sb = new CPStringBuilder(fields[0]);
for (int i = 1; i < fields.length; i++)
sb.append(":" + fields[i]);
pw.println(sb.toString());
diff --git a/libjava/classpath/gnu/javax/crypto/sasl/plain/PlainClient.java b/libjava/classpath/gnu/javax/crypto/sasl/plain/PlainClient.java
index 5c60578..87fffa0 100644
--- a/libjava/classpath/gnu/javax/crypto/sasl/plain/PlainClient.java
+++ b/libjava/classpath/gnu/javax/crypto/sasl/plain/PlainClient.java
@@ -38,6 +38,8 @@ exception statement from your version. */
package gnu.javax.crypto.sasl.plain;
+import gnu.java.lang.CPStringBuilder;
+
import gnu.java.security.Registry;
import gnu.javax.crypto.sasl.ClientMechanism;
@@ -128,7 +130,7 @@ public class PlainClient
}
if (password == null)
throw new SaslException("null password supplied");
- final StringBuffer sb = new StringBuffer();
+ final CPStringBuilder sb = new CPStringBuilder();
if (authorizationID != null)
sb.append(authorizationID);
sb.append('\0');
diff --git a/libjava/classpath/gnu/javax/crypto/sasl/srp/PasswordFile.java b/libjava/classpath/gnu/javax/crypto/sasl/srp/PasswordFile.java
index 36888df..7946e84 100644
--- a/libjava/classpath/gnu/javax/crypto/sasl/srp/PasswordFile.java
+++ b/libjava/classpath/gnu/javax/crypto/sasl/srp/PasswordFile.java
@@ -38,6 +38,8 @@ exception statement from your version. */
package gnu.javax.crypto.sasl.srp;
+import gnu.java.lang.CPStringBuilder;
+
import gnu.java.security.Registry;
import gnu.java.security.util.Util;
import gnu.javax.crypto.key.srp6.SRPAlgorithm;
@@ -445,12 +447,12 @@ public class PasswordFile
{
String ndx;
String[] mpi;
- StringBuffer sb;
+ CPStringBuilder sb;
for (Iterator it = configurations.keySet().iterator(); it.hasNext();)
{
ndx = (String) it.next();
mpi = (String[]) configurations.get(ndx);
- sb = new StringBuffer(ndx)
+ sb = new CPStringBuilder(ndx)
.append(":").append(mpi[0])
.append(":").append(mpi[1]);
pw.println(sb.toString());
@@ -591,7 +593,7 @@ public class PasswordFile
{
String user, digestID;
HashMap fields, verifiers;
- StringBuffer sb1, sb2;
+ CPStringBuilder sb1, sb2;
Iterator j;
final Iterator i = entries.keySet().iterator();
while (i.hasNext())
@@ -601,7 +603,7 @@ public class PasswordFile
if (! user.equals(fields.get(USER_FIELD)))
throw new IOException("Inconsistent SRP password data");
verifiers = (HashMap) fields.get(VERIFIERS_FIELD);
- sb1 = new StringBuffer(user)
+ sb1 = new CPStringBuilder(user)
.append(":").append((String) verifiers.get("0"))
.append(":").append((String) fields.get(SALT_FIELD))
.append(":").append((String) fields.get(CONFIG_FIELD));
@@ -614,7 +616,7 @@ public class PasswordFile
if (! "0".equals(digestID))
{
// #0 is the default digest, already present in tpasswd!
- sb2 = new StringBuffer(digestID)
+ sb2 = new CPStringBuilder(digestID)
.append(":").append(user)
.append(":").append((String) verifiers.get(digestID));
pw2.println(sb2.toString());
diff --git a/libjava/classpath/gnu/javax/crypto/sasl/srp/SRPClient.java b/libjava/classpath/gnu/javax/crypto/sasl/srp/SRPClient.java
index f4ef4cc..3406c14 100644
--- a/libjava/classpath/gnu/javax/crypto/sasl/srp/SRPClient.java
+++ b/libjava/classpath/gnu/javax/crypto/sasl/srp/SRPClient.java
@@ -38,6 +38,8 @@ exception statement from your version. */
package gnu.javax.crypto.sasl.srp;
+import gnu.java.lang.CPStringBuilder;
+
import gnu.java.security.Configuration;
import gnu.java.security.Registry;
import gnu.java.security.hash.MD5;
@@ -863,7 +865,7 @@ public class SRPClient
// For now we just select the defaults. Later we need to add support for
// properties (perhaps in a file) where a user can specify the list of
// algorithms they would prefer to use.
- final StringBuffer sb = new StringBuffer();
+ final CPStringBuilder sb = new CPStringBuilder();
sb.append(SRPRegistry.OPTION_SRP_DIGEST)
.append("=").append(mdName).append(",");
if (replayDetection)
diff --git a/libjava/classpath/gnu/javax/crypto/sasl/srp/SRPServer.java b/libjava/classpath/gnu/javax/crypto/sasl/srp/SRPServer.java
index ff7e4e9..3f000de 100644
--- a/libjava/classpath/gnu/javax/crypto/sasl/srp/SRPServer.java
+++ b/libjava/classpath/gnu/javax/crypto/sasl/srp/SRPServer.java
@@ -38,6 +38,8 @@ exception statement from your version. */
package gnu.javax.crypto.sasl.srp;
+import gnu.java.lang.CPStringBuilder;
+
import gnu.java.security.Configuration;
import gnu.java.security.Registry;
import gnu.java.security.util.PRNG;
@@ -612,7 +614,7 @@ public class SRPServer
s = (String) properties.get(SRPRegistry.SRP_REPLAY_DETECTION);
final boolean replayDetection = (s == null ? SRPRegistry.DEFAULT_REPLAY_DETECTION
: Boolean.valueOf(s).booleanValue());
- final StringBuffer sb = new StringBuffer();
+ final CPStringBuilder sb = new CPStringBuilder();
sb.append(SRPRegistry.OPTION_SRP_DIGEST).append("=")
.append(srp.getAlgorithm()).append(",");
diff --git a/libjava/classpath/gnu/javax/crypto/sasl/srp/ServerStore.java b/libjava/classpath/gnu/javax/crypto/sasl/srp/ServerStore.java
index e9b1a72..9fa8329 100644
--- a/libjava/classpath/gnu/javax/crypto/sasl/srp/ServerStore.java
+++ b/libjava/classpath/gnu/javax/crypto/sasl/srp/ServerStore.java
@@ -38,6 +38,8 @@ exception statement from your version. */
package gnu.javax.crypto.sasl.srp;
+import gnu.java.lang.CPStringBuilder;
+
import java.util.HashMap;
/**
@@ -84,7 +86,7 @@ public class ServerStore
static synchronized final byte[] getNewSessionID()
{
final String sid = String.valueOf(++counter);
- return new StringBuffer("SID-")
+ return new CPStringBuilder("SID-")
.append("0000000000".substring(0, 10 - sid.length())).append(sid)
.toString().getBytes();
}
diff --git a/libjava/classpath/gnu/javax/imageio/bmp/BMPImageWriter.java b/libjava/classpath/gnu/javax/imageio/bmp/BMPImageWriter.java
index 08b5041..be42ffa 100644
--- a/libjava/classpath/gnu/javax/imageio/bmp/BMPImageWriter.java
+++ b/libjava/classpath/gnu/javax/imageio/bmp/BMPImageWriter.java
@@ -178,7 +178,6 @@ public class BMPImageWriter
encoder.encode(out, streamMetadata, image, param);
else
throw new BMPException("Encoder has not been initialized.");
- out.close();
}
/**
diff --git a/libjava/classpath/gnu/javax/imageio/bmp/BMPImageWriterSpi.java b/libjava/classpath/gnu/javax/imageio/bmp/BMPImageWriterSpi.java
index b2a4273..32f9f59 100644
--- a/libjava/classpath/gnu/javax/imageio/bmp/BMPImageWriterSpi.java
+++ b/libjava/classpath/gnu/javax/imageio/bmp/BMPImageWriterSpi.java
@@ -51,7 +51,7 @@ public class BMPImageWriterSpi
static final String vendorName = "GNU";
static final String version = "0.1";
static final String writerClassName = "gnu.javax.imageio.bmp.BMPImageWriter";
- static final String[] names = { "Microsoft Windows BMP" };
+ static final String[] names = { "bmp", "BMP", "Microsoft Windows BMP" };
static final String[] suffixes = { ".bmp", ".bm" };
static final String[] MIMETypes = { "image/bmp", "image/x-windows-bmp" };
static final String[] readerSpiNames = { "gnu.javax.imageio.bmp.BMPImageReaderSpi" };
diff --git a/libjava/classpath/gnu/javax/management/Server.java b/libjava/classpath/gnu/javax/management/Server.java
index 8e8d826..e35c3b1 100644
--- a/libjava/classpath/gnu/javax/management/Server.java
+++ b/libjava/classpath/gnu/javax/management/Server.java
@@ -48,12 +48,13 @@ import java.lang.reflect.Constructor;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
-import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
+
import java.util.concurrent.atomic.AtomicLong;
+import java.util.concurrent.ConcurrentHashMap;
import javax.management.Attribute;
import javax.management.AttributeList;
@@ -113,19 +114,20 @@ public class Server
/**
* The registered beans, represented as a map of
* {@link javax.management.ObjectName}s to
- * {@link java.lang.Object}s.
+ * {@link gnu.javax.management.Server.ServerInfo}s.
*/
- private final Map beans = new HashMap();
+ private final ConcurrentHashMap<ObjectName,ServerInfo> beans =
+ new ConcurrentHashMap<ObjectName,ServerInfo>();
/**
* The default domain.
*/
- private String defaultDomain;
+ private final String defaultDomain;
/**
* The outer server.
*/
- private MBeanServer outer;
+ private final MBeanServer outer;
/**
* The class loader repository.
@@ -134,9 +136,15 @@ public class Server
/**
* The map of listener delegates to the true
- * listener.
+ * listener. We wrap this in an inner class
+ * to delay initialisation until a listener
+ * is actually added.
*/
- private Map listeners;
+ private static class LazyListenersHolder
+ {
+ private static final Map<NotificationListener,NotificationListener> listeners =
+ new ConcurrentHashMap<NotificationListener,NotificationListener>();
+ }
/**
* An MBean that emits notifications when an MBean is registered and
@@ -145,7 +153,10 @@ public class Server
*/
private final MBeanServerDelegate delegate;
- static private final AtomicLong sequenceNumber = new AtomicLong(1);
+ /**
+ * Provides sequencing for notifications about registrations.
+ */
+ private static final AtomicLong sequenceNumber = new AtomicLong(1);
/**
* Initialise the delegate name.
@@ -274,7 +285,7 @@ public class Server
private Object getBean(ObjectName name)
throws InstanceNotFoundException
{
- ServerInfo bean = (ServerInfo) beans.get(name);
+ ServerInfo bean = beans.get(name);
if (bean == null)
throw new InstanceNotFoundException("The bean, " + name +
", was not found.");
@@ -319,12 +330,10 @@ public class Server
if (bean instanceof NotificationBroadcaster)
{
NotificationBroadcaster bbean = (NotificationBroadcaster) bean;
- if (listeners == null)
- listeners = new HashMap();
NotificationListener indirection = new ServerNotificationListener(bean, name,
listener);
bbean.addNotificationListener(indirection, filter, passback);
- listeners.put(listener, indirection);
+ LazyListenersHolder.listeners.put(listener, indirection);
}
}
@@ -671,7 +680,7 @@ public class Server
{
try
{
- Class c = getClassLoaderRepository().loadClass(name);
+ Class<?> c = getClassLoaderRepository().loadClass(name);
return new ServerInputStream(new ByteArrayInputStream(data),
c.getClassLoader());
}
@@ -717,7 +726,7 @@ public class Server
{
try
{
- Class c = getClassLoader(loader).loadClass(name);
+ Class<?> c = getClassLoader(loader).loadClass(name);
return new ServerInputStream(new ByteArrayInputStream(data),
c.getClassLoader());
}
@@ -951,7 +960,6 @@ public class Server
return defaultDomain;
}
-
/**
* Returns an array containing all the domains used by beans registered
* with this server. The ordering of the array is undefined.
@@ -975,11 +983,11 @@ public class Server
public String[] getDomains()
{
checkSecurity(null, null, "getDomains");
- Set domains = new HashSet();
- Iterator iterator = beans.keySet().iterator();
+ Set<String> domains = new HashSet<String>();
+ Iterator<ObjectName> iterator = beans.keySet().iterator();
while (iterator.hasNext())
{
- String d = ((ObjectName) iterator.next()).getDomain();
+ String d = iterator.next().getDomain();
try
{
checkSecurity(new ObjectName(d + ":x=x"), null, "getDomains");
@@ -990,7 +998,7 @@ public class Server
/* Ignored */
}
}
- return (String[]) domains.toArray(new String[domains.size()]);
+ return domains.toArray(new String[domains.size()]);
}
/**
@@ -1077,7 +1085,7 @@ public class Server
public ObjectInstance getObjectInstance(ObjectName name)
throws InstanceNotFoundException
{
- ServerInfo bean = (ServerInfo) beans.get(name);
+ ServerInfo bean = beans.get(name);
if (bean == null)
throw new InstanceNotFoundException("The bean, " + name +
", was not found.");
@@ -1158,7 +1166,7 @@ public class Server
new IllegalArgumentException("The name was null.");
throw new RuntimeOperationsException(e);
}
- Class[] sigTypes = new Class[sig.length];
+ Class<?>[] sigTypes = new Class[sig.length];
for (int a = 0; a < sigTypes.length; ++a)
{
try
@@ -1174,7 +1182,7 @@ public class Server
}
try
{
- Constructor cons =
+ Constructor<?> cons =
repository.loadClass(name).getConstructor(sigTypes);
return cons.newInstance(params);
}
@@ -1288,7 +1296,7 @@ public class Server
throw new RuntimeOperationsException(e);
}
ClassLoader loader = getClassLoader(loaderName);
- Class[] sigTypes = new Class[sig.length];
+ Class<?>[] sigTypes = new Class[sig.length];
for (int a = 0; a < sig.length; ++a)
{
try
@@ -1304,7 +1312,7 @@ public class Server
}
try
{
- Constructor cons =
+ Constructor<?> cons =
Class.forName(name, true, loader).getConstructor(sigTypes);
return cons.newInstance(params);
}
@@ -1433,10 +1441,10 @@ public class Server
}
if (info.getClassName().equals(className))
return true;
- Class bclass = bean.getClass();
+ Class<?> bclass = bean.getClass();
try
{
- Class oclass = Class.forName(className);
+ Class<?> oclass = Class.forName(className);
return (bclass.getClassLoader().equals(oclass.getClassLoader()) &&
oclass.isAssignableFrom(bclass));
}
@@ -1502,21 +1510,19 @@ public class Server
* arise from the execution of the query, in which
* case that particular bean will again be excluded.
*/
- public Set queryMBeans(ObjectName name, QueryExp query)
+ public Set<ObjectInstance> queryMBeans(ObjectName name, QueryExp query)
{
checkSecurity(name, null, "queryMBeans");
- Set results = new HashSet();
- Iterator iterator = beans.entrySet().iterator();
- while (iterator.hasNext())
+ Set<ObjectInstance> results = new HashSet<ObjectInstance>();
+ for (Map.Entry<ObjectName,ServerInfo> entry : beans.entrySet())
{
- Map.Entry entry = (Map.Entry) iterator.next();
- ObjectName nextName = (ObjectName) entry.getKey();
+ ObjectName nextName = entry.getKey();
checkSecurity(name, nextName.toString(), "queryMBeans");
try
{
if ((name == null || name.apply(nextName)) &&
(query == null || query.apply(nextName)))
- results.add(((ServerInfo) entry.getValue()).getInstance());
+ results.add(entry.getValue().getInstance());
}
catch (BadStringOperationException e)
{
@@ -1575,15 +1581,12 @@ public class Server
* Note that these permissions are implied if the
* <code>queryMBeans</code> permissions are available.
*/
- public Set queryNames(ObjectName name, QueryExp query)
+ public Set<ObjectName> queryNames(ObjectName name, QueryExp query)
{
checkSecurity(name, null, "queryNames");
- Set results = new HashSet();
- Iterator iterator = beans.entrySet().iterator();
- while (iterator.hasNext())
+ Set<ObjectName> results = new HashSet<ObjectName>();
+ for (ObjectName nextName : beans.keySet())
{
- Map.Entry entry = (Map.Entry) iterator.next();
- ObjectName nextName = (ObjectName) entry.getKey();
checkSecurity(name, nextName.toString(), "queryNames");
try
{
@@ -1656,7 +1659,7 @@ public class Server
NotCompliantMBeanException
{
SecurityManager sm = System.getSecurityManager();
- Class cl = obj.getClass();
+ Class<?> cl = obj.getClass();
String className = cl.getName();
if (sm != null)
{
@@ -1712,14 +1715,13 @@ public class Server
throw new MBeanRegistrationException(e, "Pre-registration failed.");
}
}
- if (beans.containsKey(name))
+ ObjectInstance obji = new ObjectInstance(name, className);
+ if (beans.putIfAbsent(name, new ServerInfo(obji, obj)) != null)
{
if (register != null)
register.postRegister(Boolean.FALSE);
throw new InstanceAlreadyExistsException(name + "is already registered.");
}
- ObjectInstance obji = new ObjectInstance(name, className);
- beans.put(name, new ServerInfo(obji, obj));
if (register != null)
register.postRegister(Boolean.TRUE);
notify(name, MBeanServerNotification.REGISTRATION_NOTIFICATION);
@@ -1758,15 +1760,8 @@ public class Server
if (bean instanceof NotificationBroadcaster)
{
NotificationBroadcaster bbean = (NotificationBroadcaster) bean;
- NotificationListener indirection = (NotificationListener)
- listeners.get(listener);
- if (indirection == null)
- bbean.removeNotificationListener(listener);
- else
- {
- bbean.removeNotificationListener(indirection);
- listeners.remove(listener);
- }
+ bbean.removeNotificationListener(listener);
+ LazyListenersHolder.listeners.remove(listener);
}
}
@@ -1809,15 +1804,8 @@ public class Server
if (bean instanceof NotificationEmitter)
{
NotificationEmitter bbean = (NotificationEmitter) bean;
- NotificationListener indirection = (NotificationListener)
- listeners.get(listener);
- if (indirection == null)
- bbean.removeNotificationListener(listener, filter, passback);
- else
- {
- bbean.removeNotificationListener(indirection, filter, passback);
- listeners.remove(listener);
- }
+ bbean.removeNotificationListener(listener, filter, passback);
+ LazyListenersHolder.listeners.remove(listener);
}
}
@@ -2011,7 +1999,7 @@ public class Server
Object abean = getBean(name);
checkSecurity(name, null, "setAttribute");
AttributeList list = new AttributeList(attributes.size());
- Iterator it = attributes.iterator();
+ Iterator<Object> it = attributes.iterator();
while (it.hasNext())
{
try
@@ -2113,6 +2101,15 @@ public class Server
register.postDeregister();
}
+ /**
+ * Notifies the delegate of beans being registered
+ * and unregistered.
+ *
+ * @param name the bean being registered.
+ * @param type the type of notification;
+ * {@code REGISTRATION_NOTIFICATION} or
+ * {@code UNREGISTRATION_NOTIFICATION}.
+ */
private void notify(ObjectName name, String type)
{
delegate.sendNotification
@@ -2136,7 +2133,7 @@ public class Server
this.cl = cl;
}
- protected Class resolveClass(ObjectStreamClass osc)
+ protected Class<?> resolveClass(ObjectStreamClass osc)
throws ClassNotFoundException, IOException
{
try
diff --git a/libjava/classpath/gnu/javax/management/Translator.java b/libjava/classpath/gnu/javax/management/Translator.java
index 4ede374..a159944 100644
--- a/libjava/classpath/gnu/javax/management/Translator.java
+++ b/libjava/classpath/gnu/javax/management/Translator.java
@@ -143,14 +143,14 @@ public final class Translator
throw new IllegalArgumentException(jtype + " has a " +
"non-comparable element " +
"type, " + elemClass);
- if (((SortedSet) jtype).comparator() != null)
+ if (((SortedSet<?>) jtype).comparator() != null)
throw new IllegalArgumentException(jtype + " does not " +
"use natural ordering.");
}
- Collection<Object> elems = (Collection<Object>) jtype;
+ Collection<?> elems = (Collection<?>) jtype;
int numElems = elems.size();
Object[] celems = new Object[numElems];
- Iterator<Object> i = elems.iterator();
+ Iterator<?> i = elems.iterator();
for (int a = 0; a < numElems; ++a)
{
Object elem = i.next();
@@ -159,7 +159,7 @@ public final class Translator
return makeArraySpecific(celems);
}
if (jtype instanceof Enum)
- return ((Enum) jtype).name();
+ return ((Enum<?>) jtype).name();
if (jtype instanceof Map || jtype instanceof SortedMap)
{
int lparam = tName.indexOf("<");
@@ -177,13 +177,13 @@ public final class Translator
throw new IllegalArgumentException(jtype + " has a " +
"non-comparable element " +
"type, " + keyClass);
- if (((SortedMap) jtype).comparator() != null)
+ if (((SortedMap<?,?>) jtype).comparator() != null)
throw new IllegalArgumentException(jtype + " does not " +
"use natural ordering.");
typeName = "java.util.SortedMap" + tName.substring(lparam);
}
- OpenType k = translate(key).getOpenType();
- OpenType v = translate(value).getOpenType();
+ OpenType<?> k = translate(key).getOpenType();
+ OpenType<?> v = translate(value).getOpenType();
CompositeType rowType = new CompositeType(typeName, typeName,
new String[] { "key", "value" },
new String[] { "Map key", "Map value"},
@@ -191,7 +191,7 @@ public final class Translator
TabularType tabType = new TabularType(typeName, typeName, rowType,
new String[]{"key"});
TabularData data = new TabularDataSupport(tabType);
- for (Map.Entry entry : (Set<Map.Entry>) ((Map) jtype).entrySet())
+ for (Map.Entry<?,?> entry : ((Map<?,?>) jtype).entrySet())
{
try
{
@@ -258,15 +258,15 @@ public final class Translator
if (returnType.isEnum())
{
String ename = (String) otype;
- Enum[] constants = (Enum[]) returnType.getEnumConstants();
- for (Enum c : constants)
+ Enum<?>[] constants = (Enum[]) returnType.getEnumConstants();
+ for (Enum<?> c : constants)
if (c.name().equals(ename))
return c;
}
if (List.class.isAssignableFrom(returnType))
{
Object[] elems = (Object[]) otype;
- List l = new ArrayList(elems.length);
+ List<Object> l = new ArrayList<Object>(elems.length);
for (Object elem : elems)
l.add(elem);
return l;
@@ -274,7 +274,7 @@ public final class Translator
if (Map.class.isAssignableFrom(returnType))
{
TabularData data = (TabularData) otype;
- Map m = new HashMap(data.size());
+ Map<Object,Object> m = new HashMap<Object,Object>(data.size());
for (Object val : data.values())
{
CompositeData vals = (CompositeData) val;
@@ -401,8 +401,8 @@ public final class Translator
int comma = type.indexOf(",", lparam);
int rparam = type.indexOf(">", comma);
String key = type.substring(lparam + 1, comma).trim();
- OpenType k = translate(key).getOpenType();
- OpenType v = translate(type.substring(comma + 1, rparam).trim()).getOpenType();
+ OpenType<?> k = translate(key).getOpenType();
+ OpenType<?> v = translate(type.substring(comma + 1, rparam).trim()).getOpenType();
CompositeType ctype = new CompositeType(Map.class.getName(), Map.class.getName(),
new String[] { "key", "value" },
new String[] { "Map key", "Map value"},
@@ -417,13 +417,13 @@ public final class Translator
{
int lparam = type.indexOf("<");
int rparam = type.indexOf(">");
- OpenType e = translate(type.substring(lparam + 1, rparam).trim()).getOpenType();
+ OpenType<?> e = translate(type.substring(lparam + 1, rparam).trim()).getOpenType();
return new OpenMBeanParameterInfoSupport("TransParam",
"Translated parameter",
- new ArrayType(1, e)
+ new ArrayType<OpenType<?>>(1, e)
);
}
- Class c;
+ Class<?> c;
try
{
c = Class.forName(type);
@@ -450,15 +450,15 @@ public final class Translator
int depth;
for (depth = 0; c.getName().charAt(depth) == '['; ++depth)
;
- OpenType ot = getTypeFromClass(c.getComponentType());
+ OpenType<?> ot = getTypeFromClass(c.getComponentType());
return new OpenMBeanParameterInfoSupport("TransParam",
"Translated parameter",
- new ArrayType(depth, ot)
+ new ArrayType<OpenType<?>>(depth, ot)
);
}
Method[] methods = c.getDeclaredMethods();
List<String> names = new ArrayList<String>();
- List<OpenType> types = new ArrayList<OpenType>();
+ List<OpenType<?>> types = new ArrayList<OpenType<?>>();
for (int a = 0; a < methods.length; ++a)
{
String name = methods[a].getName();
@@ -495,7 +495,7 @@ public final class Translator
* @return the appropriate instance.
* @throws OpenDataException if the type is not open.
*/
- private static final OpenType getTypeFromClass(Class c)
+ private static final OpenType<?> getTypeFromClass(Class<?> c)
throws OpenDataException
{
return Translator.translate(c.getName()).getOpenType();
diff --git a/libjava/classpath/gnu/javax/naming/giop/CorbalocParser.java b/libjava/classpath/gnu/javax/naming/giop/CorbalocParser.java
index 397b1c7..95ebb8a 100644
--- a/libjava/classpath/gnu/javax/naming/giop/CorbalocParser.java
+++ b/libjava/classpath/gnu/javax/naming/giop/CorbalocParser.java
@@ -43,6 +43,8 @@ import gnu.CORBA.Unexpected;
import gnu.CORBA.Version;
import gnu.CORBA.NamingService.NameTransformer;
+import gnu.java.lang.CPStringBuilder;
+
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
@@ -288,7 +290,7 @@ public class CorbalocParser
ior.Internet.version = new Version(major, minor);
// Then host data goes till '/' or ':'.
- StringBuffer bhost = new StringBuffer(corbaloc.length());
+ CPStringBuilder bhost = new CPStringBuilder(corbaloc.length());
while (!t[p].equals(":") && !t[p].equals("/") && !t[p].equals(","))
bhost.append(t[p++]);
@@ -381,7 +383,7 @@ public class CorbalocParser
{
InputStreamReader r = new InputStreamReader(u.openStream());
- StringBuffer b = new StringBuffer();
+ CPStringBuilder b = new CPStringBuilder();
int c;
while ((c = r.read()) > 0)
@@ -418,7 +420,7 @@ public class CorbalocParser
+ "' found");
}
- StringBuffer bKey = new StringBuffer();
+ CPStringBuilder bKey = new CPStringBuilder();
p++;
while (p < t.length && !t[p].equals("#"))
diff --git a/libjava/classpath/gnu/javax/naming/giop/GiopNamingServiceFactory.java b/libjava/classpath/gnu/javax/naming/giop/GiopNamingServiceFactory.java
index 84aa324..6c22154 100644
--- a/libjava/classpath/gnu/javax/naming/giop/GiopNamingServiceFactory.java
+++ b/libjava/classpath/gnu/javax/naming/giop/GiopNamingServiceFactory.java
@@ -40,6 +40,8 @@ package gnu.javax.naming.giop;
import gnu.CORBA.OrbFunctional;
+import gnu.java.lang.CPStringBuilder;
+
import java.util.Enumeration;
import java.util.Hashtable;
import java.util.Iterator;
@@ -161,7 +163,7 @@ public class GiopNamingServiceFactory
{
TreeMap map = new TreeMap();
map.putAll(props);
- StringBuffer b = new StringBuffer(50*props.size());
+ CPStringBuilder b = new CPStringBuilder(50*props.size());
Iterator iter = map.entrySet().iterator();
Map.Entry m;
diff --git a/libjava/classpath/gnu/javax/naming/giop/ListBindingsEnumeration.java b/libjava/classpath/gnu/javax/naming/giop/ListBindingsEnumeration.java
index 00f4a07..68ba49b 100644
--- a/libjava/classpath/gnu/javax/naming/giop/ListBindingsEnumeration.java
+++ b/libjava/classpath/gnu/javax/naming/giop/ListBindingsEnumeration.java
@@ -38,6 +38,8 @@ exception statement from your version. */
package gnu.javax.naming.giop;
+import gnu.java.lang.CPStringBuilder;
+
import javax.naming.NamingEnumeration;
import org.omg.CosNaming.Binding;
@@ -92,7 +94,7 @@ public class ListBindingsEnumeration extends GiopNamingEnumeration implements
*/
public Object convert(Binding binding)
{
- StringBuffer name = new StringBuffer();
+ CPStringBuilder name = new CPStringBuilder();
for (int i = 0; i < binding.binding_name.length; i++)
{
diff --git a/libjava/classpath/gnu/javax/naming/giop/ListEnumeration.java b/libjava/classpath/gnu/javax/naming/giop/ListEnumeration.java
index 2e64e67..3fca1e0 100644
--- a/libjava/classpath/gnu/javax/naming/giop/ListEnumeration.java
+++ b/libjava/classpath/gnu/javax/naming/giop/ListEnumeration.java
@@ -29,7 +29,7 @@ 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
+odule. 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
@@ -38,6 +38,8 @@ exception statement from your version. */
package gnu.javax.naming.giop;
+import gnu.java.lang.CPStringBuilder;
+
import javax.naming.NameClassPair;
import javax.naming.NamingEnumeration;
@@ -85,7 +87,7 @@ public class ListEnumeration extends GiopNamingEnumeration implements
*/
public Object convert(Binding binding)
{
- StringBuffer name = new StringBuffer();
+ CPStringBuilder name = new CPStringBuilder();
for (int i = 0; i < binding.binding_name.length; i++)
{
diff --git a/libjava/classpath/gnu/javax/naming/ictxImpl/trans/GnuName.java b/libjava/classpath/gnu/javax/naming/ictxImpl/trans/GnuName.java
index b20bfa4..b423c72 100644
--- a/libjava/classpath/gnu/javax/naming/ictxImpl/trans/GnuName.java
+++ b/libjava/classpath/gnu/javax/naming/ictxImpl/trans/GnuName.java
@@ -37,6 +37,8 @@ exception statement from your version. */
package gnu.javax.naming.ictxImpl.trans;
+import gnu.java.lang.CPStringBuilder;
+
import java.util.Enumeration;
import java.util.NoSuchElementException;
@@ -455,7 +457,7 @@ public class GnuName
*/
public String toString()
{
- StringBuffer b = new StringBuffer();
+ CPStringBuilder b = new CPStringBuilder();
for (int i = 0; i < length; i++)
{
b.append(get(i));
diff --git a/libjava/classpath/gnu/javax/net/ssl/PrivateCredentials.java b/libjava/classpath/gnu/javax/net/ssl/PrivateCredentials.java
index 4a37cd8..7fff253 100644
--- a/libjava/classpath/gnu/javax/net/ssl/PrivateCredentials.java
+++ b/libjava/classpath/gnu/javax/net/ssl/PrivateCredentials.java
@@ -38,6 +38,8 @@ exception statement from your version. */
package gnu.javax.net.ssl;
+import gnu.java.lang.CPStringBuilder;
+
import java.io.EOFException;
import java.io.InputStream;
import java.io.IOException;
@@ -137,7 +139,7 @@ public class PrivateCredentials implements ManagerFactoryParameters
boolean encrypted = false;
String cipher = null;
String salt = null;
- StringBuffer base64 = new StringBuffer();
+ CPStringBuilder base64 = new CPStringBuilder();
while (true)
{
line = readLine(privateKey);
@@ -235,7 +237,7 @@ public class PrivateCredentials implements ManagerFactoryParameters
private String readLine(InputStream in) throws IOException
{
boolean eol_is_cr = System.getProperty("line.separator").equals("\r");
- StringBuffer str = new StringBuffer();
+ CPStringBuilder str = new CPStringBuilder();
while (true)
{
int i = in.read();
diff --git a/libjava/classpath/gnu/javax/net/ssl/Session.java b/libjava/classpath/gnu/javax/net/ssl/Session.java
index e2b21aa..09b50ee 100644
--- a/libjava/classpath/gnu/javax/net/ssl/Session.java
+++ b/libjava/classpath/gnu/javax/net/ssl/Session.java
@@ -38,6 +38,8 @@ exception statement from your version. */
package gnu.javax.net.ssl;
+import gnu.java.lang.CPStringBuilder;
+
import java.io.Serializable;
import java.security.Principal;
@@ -349,7 +351,7 @@ public abstract class Session implements SSLSession, Serializable
public String toString()
{
- StringBuffer str = new StringBuffer (3 * id.length + 1);
+ CPStringBuilder str = new CPStringBuilder (3 * id.length + 1);
for (int i = 0; i < id.length; i++)
{
int x = id[i] & 0xFF;
@@ -361,4 +363,4 @@ public abstract class Session implements SSLSession, Serializable
return str.toString ();
}
}
-} \ No newline at end of file
+}
diff --git a/libjava/classpath/gnu/javax/net/ssl/provider/HelloRequest.java b/libjava/classpath/gnu/javax/net/ssl/provider/HelloRequest.java
index 0ffc26c..81dfce5 100644
--- a/libjava/classpath/gnu/javax/net/ssl/provider/HelloRequest.java
+++ b/libjava/classpath/gnu/javax/net/ssl/provider/HelloRequest.java
@@ -38,6 +38,8 @@ exception statement from your version. */
package gnu.javax.net.ssl.provider;
+import gnu.java.lang.CPStringBuilder;
+
/**
* The handshake body for a HelloRequest handshake message.
*
@@ -51,7 +53,7 @@ public final class HelloRequest implements Handshake.Body
public String toString (final String prefix)
{
- StringBuffer str = new StringBuffer ();
+ CPStringBuilder str = new CPStringBuilder ();
if (prefix != null)
str.append (prefix);
str.append ("HelloRequest { };");
diff --git a/libjava/classpath/gnu/javax/net/ssl/provider/Util.java b/libjava/classpath/gnu/javax/net/ssl/provider/Util.java
index ba8ea7d..57f637c 100644
--- a/libjava/classpath/gnu/javax/net/ssl/provider/Util.java
+++ b/libjava/classpath/gnu/javax/net/ssl/provider/Util.java
@@ -38,6 +38,8 @@ exception statement from your version. */
package gnu.javax.net.ssl.provider;
+import gnu.java.lang.CPStringBuilder;
+
import java.io.PrintWriter;
import java.io.StringWriter;
@@ -128,7 +130,7 @@ public final class Util
*/
public static String toHexString(byte[] buf, int off, int len)
{
- StringBuffer str = new StringBuffer();
+ CPStringBuilder str = new CPStringBuilder();
for (int i = 0; i < len; i++)
{
str.append(HEX.charAt(buf[i+off] >>> 4 & 0x0F));
@@ -157,7 +159,7 @@ public final class Util
*/
public static String toHexString(byte[] buf, int off, int len, char sep)
{
- StringBuffer str = new StringBuffer();
+ CPStringBuilder str = new CPStringBuilder();
for (int i = 0; i < len; i++)
{
str.append(HEX.charAt(buf[i+off] >>> 4 & 0x0F));
@@ -194,7 +196,7 @@ public final class Util
public static String hexDump(byte[] buf, int off, int len, String prefix)
{
String nl = getProperty("line.separator");
- StringBuffer str = new StringBuffer();
+ CPStringBuilder str = new CPStringBuilder();
int i = 0;
while (i < len)
{
@@ -294,7 +296,7 @@ public final class Util
public static String formatInt(int i, int radix, int len)
{
String s = Integer.toString(i, radix);
- StringBuffer buf = new StringBuffer();
+ CPStringBuilder buf = new CPStringBuilder();
for (int j = 0; j < len - s.length(); j++)
buf.append("0");
buf.append(s);
diff --git a/libjava/classpath/gnu/javax/print/ipp/IppRequest.java b/libjava/classpath/gnu/javax/print/ipp/IppRequest.java
index 05a6faa..3de8871 100644
--- a/libjava/classpath/gnu/javax/print/ipp/IppRequest.java
+++ b/libjava/classpath/gnu/javax/print/ipp/IppRequest.java
@@ -469,7 +469,7 @@ public class IppRequest
}
else
{
- new IppException("Unknown target operation attribute combination.");
+ throw new IppException("Unknown target operation attribute combination.");
}
writeAttributes(attributes);
diff --git a/libjava/classpath/gnu/javax/print/ipp/attribute/RequestedAttributes.java b/libjava/classpath/gnu/javax/print/ipp/attribute/RequestedAttributes.java
index ae9d32df..814fe2d 100644
--- a/libjava/classpath/gnu/javax/print/ipp/attribute/RequestedAttributes.java
+++ b/libjava/classpath/gnu/javax/print/ipp/attribute/RequestedAttributes.java
@@ -38,6 +38,8 @@ exception statement from your version. */
package gnu.javax.print.ipp.attribute;
+import gnu.java.lang.CPStringBuilder;
+
import java.util.ArrayList;
import java.util.List;
@@ -117,7 +119,7 @@ public final class RequestedAttributes implements Attribute
*/
public String toString()
{
- StringBuffer b = new StringBuffer();
+ CPStringBuilder b = new CPStringBuilder();
if (attributes.size() > 0)
b.append(attributes.get(0));
diff --git a/libjava/classpath/gnu/javax/rmi/CORBA/RmiUtilities.java b/libjava/classpath/gnu/javax/rmi/CORBA/RmiUtilities.java
index 91bfa37..5fa78b1 100644
--- a/libjava/classpath/gnu/javax/rmi/CORBA/RmiUtilities.java
+++ b/libjava/classpath/gnu/javax/rmi/CORBA/RmiUtilities.java
@@ -46,6 +46,8 @@ import gnu.CORBA.CDR.gnuRuntime;
import gnu.CORBA.CDR.gnuValueStream;
import gnu.CORBA.CDR.HeadlessInput;
+import gnu.java.lang.CPStringBuilder;
+
import org.omg.CORBA.MARSHAL;
import org.omg.CORBA.StringValueHelper;
import org.omg.CORBA.WStringValueHelper;
@@ -393,7 +395,7 @@ public class RmiUtilities
*/
public static String toHex(long l)
{
- StringBuffer b = new StringBuffer();
+ CPStringBuilder b = new CPStringBuilder();
b.append(Long.toHexString(l).toUpperCase());
while (b.length() < 16)
b.insert(0, '0');
@@ -425,7 +427,7 @@ public class RmiUtilities
return "V";
else if (type.isArray())
{
- StringBuffer l = new StringBuffer("[");
+ CPStringBuilder l = new CPStringBuilder("[");
Class component = type.getComponentType();
while (component.isArray())
@@ -700,13 +702,14 @@ public class RmiUtilities
if (in instanceof HeadlessInput)
((HeadlessInput) in).subsequentCalls = true;
- gnuRuntime g;
+ gnuRuntime g = null;
Serializable object = null;
try
{
g = (gnuRuntime) sender;
- object = g.target;
+ if (sender != null)
+ object = g.target;
}
catch (ClassCastException e)
{
diff --git a/libjava/classpath/gnu/javax/security/auth/callback/AWTCallbackHandler.java b/libjava/classpath/gnu/javax/security/auth/callback/AWTCallbackHandler.java
index 539c4a1..d75ce41 100644
--- a/libjava/classpath/gnu/javax/security/auth/callback/AWTCallbackHandler.java
+++ b/libjava/classpath/gnu/javax/security/auth/callback/AWTCallbackHandler.java
@@ -38,6 +38,8 @@ exception statement from your version. */
package gnu.javax.security.auth.callback;
+import gnu.java.lang.CPStringBuilder;
+
import java.awt.BorderLayout;
import java.awt.Button;
import java.awt.Dialog;
@@ -238,8 +240,8 @@ public class AWTCallbackHandler extends AbstractCallbackHandler
int defind = 0;
for (int i = 0; i < locales.length; i++)
{
- StringBuffer lang =
- new StringBuffer(locales[i].getDisplayLanguage(locales[i]));
+ CPStringBuilder lang =
+ new CPStringBuilder(locales[i].getDisplayLanguage(locales[i]));
String country = locales[i].getDisplayCountry(locales[i]);
String variant = locales[i].getDisplayVariant(locales[i]);
if (country.length() > 0 && variant.length() > 0)
diff --git a/libjava/classpath/gnu/javax/security/auth/login/ConfigFileTokenizer.java b/libjava/classpath/gnu/javax/security/auth/login/ConfigFileTokenizer.java
index 06a1d2c..0235c69 100644
--- a/libjava/classpath/gnu/javax/security/auth/login/ConfigFileTokenizer.java
+++ b/libjava/classpath/gnu/javax/security/auth/login/ConfigFileTokenizer.java
@@ -38,6 +38,8 @@ exception statement from your version. */
package gnu.javax.security.auth.login;
+import gnu.java.lang.CPStringBuilder;
+
import gnu.java.security.Configuration;
import java.io.BufferedReader;
@@ -92,7 +94,7 @@ public class ConfigFileTokenizer
private BufferedReader br;
boolean initialised;
- private StringBuffer sb;
+ private CPStringBuilder sb;
private int sbNdx;
// Constructor(s)
@@ -185,7 +187,7 @@ public class ConfigFileTokenizer
private void init() throws IOException
{
- sb = new StringBuffer();
+ sb = new CPStringBuilder();
String line;
while ((line = br.readLine()) != null)
{
diff --git a/libjava/classpath/gnu/javax/sound/sampled/gstreamer/io/GstAudioFileReader.java b/libjava/classpath/gnu/javax/sound/sampled/gstreamer/io/GstAudioFileReader.java
index b90caef..0514c93 100644
--- a/libjava/classpath/gnu/javax/sound/sampled/gstreamer/io/GstAudioFileReader.java
+++ b/libjava/classpath/gnu/javax/sound/sampled/gstreamer/io/GstAudioFileReader.java
@@ -37,6 +37,8 @@ exception statement from your version. */
package gnu.javax.sound.sampled.gstreamer.io;
+import gnu.java.lang.CPStringBuilder;
+
import gnu.javax.sound.sampled.gstreamer.GStreamerMixer;
import java.io.BufferedInputStream;
@@ -65,7 +67,7 @@ public class GstAudioFileReader
public AudioFileFormat getAudioFileFormat(File file)
throws UnsupportedAudioFileException, IOException
{
- StringBuffer name = new StringBuffer(file.getName());
+ CPStringBuilder name = new CPStringBuilder(file.getName());
String _name = name.substring(name.lastIndexOf(".") + 1);
return getAudioFileFormat(
diff --git a/libjava/classpath/gnu/javax/swing/text/html/parser/htmlValidator.java b/libjava/classpath/gnu/javax/swing/text/html/parser/htmlValidator.java
index 7507850..7f16f1f 100644
--- a/libjava/classpath/gnu/javax/swing/text/html/parser/htmlValidator.java
+++ b/libjava/classpath/gnu/javax/swing/text/html/parser/htmlValidator.java
@@ -38,6 +38,8 @@ exception statement from your version. */
package gnu.javax.swing.text.html.parser;
+import gnu.java.lang.CPStringBuilder;
+
import gnu.javax.swing.text.html.parser.models.node;
import gnu.javax.swing.text.html.parser.models.transformer;
@@ -499,11 +501,11 @@ public abstract class htmlValidator
dtdAttribute = tag.getElement().getAttribute(foundAttribute.toString());
if (dtdAttribute == null)
{
- StringBuffer valid =
- new StringBuffer("The tag <" + tag.getHTMLTag() +
- "> cannot contain the attribute '" + foundAttribute +
- "'. The valid attributes for this tag are: "
- );
+ CPStringBuilder valid =
+ new CPStringBuilder("The tag <" + tag.getHTMLTag() +
+ "> cannot contain the attribute '" + foundAttribute +
+ "'. The valid attributes for this tag are: "
+ );
AttributeList a = tag.getElement().getAttributes();
@@ -545,22 +547,22 @@ public abstract class htmlValidator
!dtdAttribute.values.contains(value.toUpperCase())
)
{
- StringBuffer valid;
+ CPStringBuilder valid;
if (dtdAttribute.values.size() == 1)
valid =
- new StringBuffer("The attribute '" + foundAttribute +
- "' of the tag <" + tag.getHTMLTag() +
- "> cannot have the value '" + value +
- "'. The only valid value is "
- );
+ new CPStringBuilder("The attribute '" + foundAttribute +
+ "' of the tag <" + tag.getHTMLTag() +
+ "> cannot have the value '" + value +
+ "'. The only valid value is "
+ );
else
valid =
- new StringBuffer("The attribute '" + foundAttribute +
- "' of the tag <" + tag.getHTMLTag() +
- "> cannot have the value '" + value + "'. The " +
- dtdAttribute.values.size() +
- " valid values are: "
- );
+ new CPStringBuilder("The attribute '" + foundAttribute +
+ "' of the tag <" + tag.getHTMLTag() +
+ "> cannot have the value '" + value + "'. The " +
+ dtdAttribute.values.size() +
+ " valid values are: "
+ );
Enumeration vv = dtdAttribute.values.elements();
while (vv.hasMoreElements())
diff --git a/libjava/classpath/gnu/javax/swing/text/html/parser/models/list.java b/libjava/classpath/gnu/javax/swing/text/html/parser/models/list.java
index b77ef7f..c303ae8 100644
--- a/libjava/classpath/gnu/javax/swing/text/html/parser/models/list.java
+++ b/libjava/classpath/gnu/javax/swing/text/html/parser/models/list.java
@@ -38,6 +38,8 @@ exception statement from your version. */
package gnu.javax.swing.text.html.parser.models;
+import gnu.java.lang.CPStringBuilder;
+
import java.io.Serializable;
/**
@@ -296,7 +298,7 @@ public class list
*/
public String toString()
{
- StringBuffer b = new StringBuffer();
+ CPStringBuilder b = new CPStringBuilder();
b.append(" ( ");
for (int i = 0; i < nodes.length; i++)
{
diff --git a/libjava/classpath/gnu/javax/swing/text/html/parser/models/node.java b/libjava/classpath/gnu/javax/swing/text/html/parser/models/node.java
index 54469b3..f45a13b3 100644
--- a/libjava/classpath/gnu/javax/swing/text/html/parser/models/node.java
+++ b/libjava/classpath/gnu/javax/swing/text/html/parser/models/node.java
@@ -38,6 +38,8 @@ exception statement from your version. */
package gnu.javax.swing.text.html.parser.models;
+import gnu.java.lang.CPStringBuilder;
+
import java.io.Serializable;
/**
@@ -239,7 +241,7 @@ public class node
*/
public String toString()
{
- StringBuffer b = new StringBuffer();
+ CPStringBuilder b = new CPStringBuilder();
b.append(token);
if (unary != 0)
diff --git a/libjava/classpath/gnu/javax/swing/text/html/parser/support/Parser.java b/libjava/classpath/gnu/javax/swing/text/html/parser/support/Parser.java
index e99be32..b087c3c 100644
--- a/libjava/classpath/gnu/javax/swing/text/html/parser/support/Parser.java
+++ b/libjava/classpath/gnu/javax/swing/text/html/parser/support/Parser.java
@@ -38,6 +38,8 @@ exception statement from your version. */
package gnu.javax.swing.text.html.parser.support;
+import gnu.java.lang.CPStringBuilder;
+
import gnu.javax.swing.text.html.parser.htmlAttributeSet;
import gnu.javax.swing.text.html.parser.htmlValidator;
import gnu.javax.swing.text.html.parser.support.low.Constants;
@@ -132,12 +134,12 @@ public class Parser
/**
* The buffer to collect the incremental output like text or coment.
*/
- private StringBuffer buffer = new StringBuffer();
+ private final StringBuffer buffer = new StringBuffer();
/**
* The buffer to store the document title.
*/
- private StringBuffer title = new StringBuffer();
+ private final StringBuffer title = new StringBuffer();
/**
* The current token.
@@ -994,7 +996,7 @@ public class Parser
// character, not as a token. The character may be part of
// the unquoted URL.
{
- StringBuffer image = new StringBuffer(value.getImage());
+ CPStringBuilder image = new CPStringBuilder(value.getImage());
while (next.kind == NUMTOKEN || next.kind == SLASH
|| next.kind == OTHER)
{
@@ -1025,7 +1027,7 @@ public class Parser
// character, not as a token. The slash may be part of
// the unquoted URL.
{
- StringBuffer image = new StringBuffer(value.getImage());
+ CPStringBuilder image = new CPStringBuilder(value.getImage());
while (next.kind == NUMTOKEN || next.kind == SLASH)
{
image.append(getNextToken().getImage());